Flume启动/关闭/重启shell脚本

#!/bin/bash
#作者:lihao
#日期:20170925
#参数:start|stop|restart
#功能:flume 启动停止重启
#使用方法:
#./execflume.sh start flume_cmbc.conf(配置文件,自己修改) Cobub(代理名称,自己修改)
#./execflume.sh stop
#./execflume.sh restart flume_cmbc.conf(配置文件,自己修改) Cobub(代理名称,自己修改)
path=$(cd `dirname $0`; pwd)
echo $path
process=$2
AgentName=$3
JAR="flume"

function start(){
    echo "开始启动 ...."
    num=`ps -ef|grep java|grep $JAR|wc -l`
    echo "进程数:$num"
    if [ "$num" = "0" ] ; then
        #eval nohup java -Xmx512m -jar -DplanNames=$planNames -DconfigPath=$CONFIG_PATH $jarpath/$JAR `echo $@|cut -d " " -f3-$#` >> /dev/null 2>&1 &
        # 请自行修改启动的所需要的参数
        eval nohup bin/flume-ng agent -c $path/conf -f $path/conf/$process --name $AgentName &
        echo "启动成功...."
        echo "日志路径: $path/logs/flume.log"
    else
        echo "进程已经存在,启动失败,请检查....."
        exit 0
    fi
}

function stop(){
    echo "开始stop ....."
    num=`ps -ef|grep java|grep $JAR|wc -l`
    if [ "$num" != "0" ] ; then
        #ps -ef|grep java|grep $JAR|awk '{print $2;}'|xargs kill -9
        # 正常停止flume
        ps -ef|grep java|grep $JAR|awk '{print $2;}'|xargs kill
        echo "进程已经关闭..."
    else
        echo "服务未启动,无需停止..."
    fi
}


function restart(){
    echo "begin stop process ..."
    stop
    # 判断程序是否彻底停止
    num=`ps -ef|grep java|grep $JAR|wc -l`
    while [ $num -gt 0 ]; do
        sleep 1
        num=`ps -ef|grep java|grep $JAR|wc -l`
    done
    echo "process stoped,and starting ..."
    start
    echo "started ..."
}

case "$1" in
    "start")
      start $@
      exit 0
    ;;
    "stop")
      stop
      exit 0
     ;;
    "restart")
       restart $@
       exit 0
     ;;
    *)
       echo "用法: $0 {start|stop|restart}"
       exit 1
    ;;
esac

转载于:https://my.oschina.net/112612/blog/1555163

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值