kafka集群启停脚本

自己搭建了一个三台zookeeper和6台kafka的集群。由于启动和停止集群比较麻烦所以就写了启动和停止集群的脚本。


kafka集群启动脚本

kfq1-kfq6是我的6台kafka集群。在/etc/hosts 文件下配了映射。

#!/bin/bash 
BROKERS="kfq1 kfq2 kfq3 kfq4 kfq5 kfq6"  
APPHOME="/opt/apps/kafka_10.1"  
APP_NAME=kafka_10.1_epp



for i in $BROKERS
do
    echo "Starting ${APP_NAME} on ${i} "
    ssh ${i} "source /etc/profile; nohup sh ${APPHOME}/bin/kafka-server-start.sh ${APPHOME}/config/server.properties > /dev/null 2>&1 &"
    if [[ $? -ne 0 ]]; then
        echo "Starting ${APP_NAME} on ${i} is  ok"
    fi
done
echo All $APP_NAME are started
exit 0

kafka停止脚本要调用kafka官方的kafka-server-stop.sh脚本。 但是官方的kafka-server-stop.sh 脚本是优点问题,不会真正的停止kafka。所以要先修改kafka-server-stop.sh

修改 bin 下的 kafka-server-stop.sh 文件 
PIDS=$(ps ax | grep -i 'kafka\.Kafka' | grep java | grep -v grep | awk '{print $1}')
修改为:
    PIDS=$(jps -lm | grep -i 'kafka\.Kafka' | awk '{print $1}')

kafka集群停止脚本

#!/bin/bash 
BROKERS="kfq1 kfq2 kfq3 kfq4 kfq5 kfq6"  
APPHOME="/opt/apps/kafka_10.1"  
APP_NAME=kafka_10.1_epp

for i in $BROKERS
do
    echo "Stopping ${APP_NAME} on ${i} "
    ssh ${i} "source /etc/profile;bash ${APPHOME}/bin/kafka-server-stop.sh"
    if [[ $? -ne 0 ]]; then
        echo "Stopping ${APP_NAME} on ${i} is down"
    fi
done

echo All $APP_NAME are stopped
exit 0
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值