1.虚拟机编辑定时任务
crontab -e
@reboot /usr/local/startShell.sh
2.编辑自定义启动脚本
#!/bin/sh# 进入kafka安装目录
cd /usr/local/kafka_2.12-3.7.0# 初始化java变量
export JAVA_HOME=/usr/local/jdk1.8.0_401
export JRE_HOME=${JAVA_HOME}/jre
export PATH=$PATH:${JAVA_HOME}/bin:${JRE_HOME}/bin#执行zookeeper
nohup bin/zookeeper-server-start.sh config/zookeeper.properties > zookeeper-server-start.log 2>&1 &#执行kafka
nohup bin/kafka-server-start.sh config/server.properties > kafka-server-start.log 2>&1 & #检查zookeeper端口占用
zookeeper_port=$(netstat -tuln | grep 2181)
if [ -n "$zookeeper_port" ]; thenecho "Zookeeper启动成功"
elseecho "Zookeeper启动失败"
fi#检查kafka端口占用
kafka_port=$(netstat -tuln | grep 9092)
if [ -n "$kafka_port" ]; thenecho "Kafka启动成功"
elseecho "Kafka启动失败"
fi
3.自定义启动脚本授权
chmod +x startShell.sh
4.虚拟机开机验证
ps -ef|grep zookeeper
ps -ef|grep kafka