#! /bin/bash
case $1 in
“start”){
for i in vm2
do
echo " --------启动 $i 消费flume-------"
ssh $i “nohup /opt/software/flume1.8/bin/flume-ng agent --conf-file /opt/software/flume1.8/conf/kafka-flume-hdfs.conf --name a1 -Dflume.root.logger=INFO,LOG
FILE >/opt/software/flume/log.txt 2>&1 &”
done
};;
“stop”){
for i in vm2
do
echo " --------停止 $i 消费flume-------"
ssh $i “ps -ef | grep kafka-flume-hdfs | grep -v grep |awk ‘{print $2}’ | xargs kill”
done
};;
esac
#! /bin/bash
case $1 in
“start”){
for i in vm2
do
echo " --------启动 $i 采集flume-------"
ssh $i “nohup /opt/software/flume1.8/bin/flume-ng agent --conf-file /opt/software/flume1.8/conf/flume-kafka-applog.conf --name a1 -Dflume.root.logger=INFO,LOGFILE >/dev/null 2>&1 &”
done
};;
“stop”){
for i in vm2
do
echo " --------停止 $i 采集flume-------"
ssh $i “ps -ef | grep file-flume-kafka | grep -v grep |awk ‘{print $2}’ | xargs kill”
done
};;
esac
说明1:nohup,该命令可以在你退出帐户/关闭终端之后继续运行相应的进程。nohup就是不挂起的意思,不挂断地运行命令。
说明2:/dev/null代表linux的空设备文件,所有往这个文件里面写入的内容都会丢失,俗称“黑洞”。
标准输入0:从键盘获得输入 /proc/self/fd/0
标准输出1:输出到屏幕(即控制台) /proc/self/fd/1
错误输出2:输出到屏幕(即控制台) /proc/self/fd/2
2)增加脚本执行权限
[bawei@vm0bin]$ chmod 777 f1.sh
3)f1集群启动脚本
[bawei@vm0module]$ f1.sh start
4)f1集群停止脚本
[bawei@vm0module]$ f1.sh stop