Kafka开机自启动(Linux系统 and Windows)
kafka每次关机重启后,都要重新手动启动。那能否让计算机开机后自动启动kafka呢? 答案:可以
一、Zookeeper开机自启服务
在 /lib/systemd/system/
目录创建服务脚本 zookeeper.service
:vim /lib/systemd/system/zookeeper.service
注意:/lib/systemd/system/
是 /usr/lib/systemd/system/
的链接
zookeeper.service内容:
[Unit]
Description=Zookeeper Service
After=network.target
[Service]
Type=simple
Environment="PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/local/java11/bin"
User=root
Group=root
ExecStart=/home/user/caojun/Kafka/kafka_2.13-3.3.1/bin/zookeeper-server-start.sh /home/user/caojun/Kafka/kafka_2.13-3.3.1/config/zookeeper.properties
ExecStop=/home/user/caojun/Kafka/kafka_2.13-3.3.1/bin/zookeeper-server-stop.sh
Restart=on-failure
[Install]
WantedBy=multi-user.target
或许需要给zookeeper.service添加权限
二、Kafka开机自启服务
在 /lib/systemd/system/
目录创建服务脚本 kafka.service
: vim /lib/systemd/system/kafka.service
kafka.servicen内容:
[Unit]
Description=Apache Kafka Server (broker)
After=network.target zookeeper.service
[Service]
Type=simple
Environment="PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/local/java11/bin"
User=root
Group=root
ExecStart=/home/user/caojun/Kafka/kafka_2.13-3.3.1/bin/kafka-server-start.sh /home/user/caojun/Kafka/kafka_2.13-3.3.1/config/server.properties
ExecStop=/home/user/caojun/Kafka/kafka_2.13-3.3.1/bin/kafka-server-stop.sh
Restart=on-failure
[Install]
WantedBy=multi-user.target
或许需要给kafka.service添加权限
三、启动服务
# 刷新配置(必须先执行)
systemctl daemon-reload
#服务加入开机自启
systemctl enable zookeeper.service
systemctl enable kafka.service
#启动kafka前必须先启动zookeeper
systemctl start zookeeper
systemctl start kafka
#查看状态
systemctl status zookeeper
systemctl status kafka
服务加入开机自启图示:
查看状态图示:
四、windows10 设置
由于有园友分享了实现的办法,这里就不赘述。直接按照如下链接随笔中步骤操作,即可实现。
由于不同的程序之间存在依赖或先后顺序,故再注册表中要调整:计算机\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\ServiceGroupOrder
把任意程序注册成windows服务, 并设置开机自动启动 -- 一贯可乐
📌 注:通过随笔中的步骤,最后可以实现kafka的开机启动