kafka 自启脚本

本文介绍如何配置 Apache Kafka 以实现系统启动时自动运行。提供了两种方法:一是通过修改 /etc/rc.local 文件,二是创建 kafka 服务脚本并设置为开机启动。详细步骤包括编写 shell 脚本来启动和停止 Kafka 服务。

每次使用的时候都要手动去启动真头痛!

解决办法,自启吧!

方法一:

方法一: /etc/rc.local中添加 

文件地址记得替换掉 ,我没使用这种,发现不是每次都行,就换了第二种方法

/usr/local/kafka_2.11-0.9.0.1/bin/kafka-server-start.sh  /usr/local/kafka_2.11-0.9.0.1/config/server.properties

cd /etc/rc.d/init.d

touch kafka 

chmod +x kafka  

#!/bin/bash  
#chkconfig:2345 30 80  
#description:kafka  
#processname:kafka  
case $1 in  
 start) su root /usr/local/kafka_2.11-0.9.0.1/bin/kafka-server-start.sh  /usr/local/kafka_2.11-0.9.0.1/config/server.properties;;  
 stop) su root /usr/local/kafka_2.11-0.9.0.1/bin/kafka-server-stop.sh  /usr/local/kafka_2.11-0.9.0.1/config/server.properties;;  
 *)  echo "require start|stop"  ;;  
esac 

chkconfig --add kafka   添加到服务器中

chkconfig kafka on 设置开机自动启动

至此完事了,附上官方的脚本一份 ,都可以使用

 

#!/bin/sh
#
# chkconfig: 345 99 01
# description: Kafka
#
# File : Kafka
#
# Description: Starts and stops the Kafka server
#

source /etc/rc.d/init.d/functions

KAFKA_HOME=/opt/kafka
KAFKA_USER=kafka
export LOG_DIR=/var/log/kafka

[ -e /etc/sysconfig/kafka ] && . /etc/sysconfig/kafka

# See how we were called.
case "$1" in

  start)
    echo -n "Starting Kafka:"
    /sbin/runuser -s /bin/sh $KAFKA_USER -c "nohup $KAFKA_HOME/bin/kafka-server-start.sh $KAFKA_HOME/config/server.properties > $LOG_DIR/server.out 2> $LOG_DIR/server.err &"
    echo " done."
    exit 0
    ;;

  stop)
    echo -n "Stopping Kafka: "
    /sbin/runuser -s /bin/sh $KAFKA_USER  -c "ps -ef | grep kafka.Kafka | grep -v grep | awk '{print \$2}' | xargs kill"
    echo " done."
    exit 0
    ;;
  hardstop)
    echo -n "Stopping (hard) Kafka: "
    /sbin/runuser -s /bin/sh $KAFKA_USER  -c "ps -ef | grep kafka.Kafka | grep -v grep | awk '{print \$2}' | xargs kill -9"
    echo " done."
    exit 0
    ;;

  status)
    c_pid=`ps -ef | grep kafka.Kafka | grep -v grep | awk '{print $2}'`
    if [ "$c_pid" = "" ] ; then
      echo "Stopped"
      exit 3
    else
      echo "Running $c_pid"
      exit 0
    fi
    ;;

  restart)
    stop
    start
    ;;

  *)
    echo "Usage: kafka {start|stop|hardstop|status|restart}"
    exit 1
    ;;

esac

 

转载于:https://www.cnblogs.com/java-synchronized/p/8315400.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值