flume后台启动的脚本

以启动file_flume_kafkaChannel.conf Flume配置服务为例:


case $1 in
"start")
        for i in hadoop101 hadoop102
        do
        echo "$i正在启动flume服务------------"
        ssh $i "nohup /opt/module/flume/bin/flume-ng agent   -c /opt/module/flume/conf/  -n a1  -f /opt/module/flume/job/file_flume_kafkaChannel.conf  -Dflume.root.logger=INFO,LOGFILE  >/opt/module/flume/test/file_flume_kafkaChannel.log 2>&1  &"
        done

;;
"stop")
        for i in hadoop101 hadoop102
        do
        echo "$i正在关闭flume服务------------"
        ssh $i "ps -ef | grep file_flume_kafkaChannel | grep -v grep |  awk '{print \$2}' | xargs kill 2>/dev/null  "
        done
;;
esac

解释说明:
1.nohup: 可以在我们在后台进行运行,就算关闭了终端,也会继续运行, 如果在最后面加上 & 就会直接在后台运行,也不用占用终端了
2.grep -v grep: 可以将grep本身所占用显示出来的端口,进行去除
3. xargs kill 2>/dev/null : 因为当kill 为null时, 会报错 ,这里将 kill产生的错误信息写入到黑洞文件当中
4. Dflume.root.logger=INFO,LOGFILE >/opt/module/flume/==test==/file_flume_kafkaChannel.log 2>&1 : 将日志保存到文件, 注意:这个test文件目录需要自己进行创建

Guess you like

Origin blog.csdn.net/First_____/article/details/121398344