(三)Kafka离线安装 - ZooKeeper开机自启

手动启动方式

一般通过指令手动来启动zookeeper的方法是,先进入到zookeeper的安装目录下的bin目录,然后执行启动指令。

bash 复制代码
cd /usr/local/zookeeper/zookeeper-3.8.4/bin/

zkServer.sh start

停止指令

bash 复制代码
zkServer.sh stop

查看状态

bash 复制代码
zkServer.sh status

上面的方式是通过手动启动,关闭的。如果系统重启了,zookeeper服务是不会自动启动的。

这里是通过创建系统服务,然后把这个系统服务设置开机自启,从而达到想要的目的。

下面开始教你怎么把zookeeper创建为系统服务。

系统服务启动方式

1、创建一个服务单元文件 /etc/systemd/system/zookeeper.service

bash 复制代码
#先进入到此目录下
cd /etc/systemd/system/

#创建一个zookeeper.service服务单元文件
vim zookeeper.service

2、zookeeper.service服务单元文件内容

bash 复制代码
[Unit]
Description=Apache Zookeeper Server
After=network.target remote-fs.target nss-lookup.target

[Service]
Type=forking
User=root
Group=root
ExecStart=/usr/local/zookeeper/zookeeper-3.8.4/bin/zkServer.sh start
ExecStop=/usr/local/zookeeper/zookeeper-3.8.4/bin/zkServer.sh stop
ExecReload=/usr/local/zookeeper/zookeeper-3.8.4/bin/zkServer.sh restart
Restart=on-failure

[Install]
WantedBy=multi-user.target

ExecStart后面跟的是zookeeper的启动指令,关于文件路径替换为自己的就行。

ExecStop后面跟的是zookeeper的停止指令,关于文件路径替换为自己的就行。

ExecReload后面跟的是zookeeper的重启指令,关于文件路径替换为自己的就行。

设置权限

bash 复制代码
chmod 777 zookeeper.service

重新加载systemctl管理器配置,使新的服务单元生效

bash 复制代码
systemctl daemon-reload

systemctl 相关指令

bash 复制代码
# 设置服务开机自启
systemctl enable zookeeper.service
# 取消开机自启
systemctl disable  zookeeper.service

# 启动服务
systemctl start zookeeper

# 停止服务
systemctl stop zookeeper

# 重启服务
systemctl restart zookeeper

# 查看服务状态
systemctl status zookeeper

# 查看服务是否开机自启
systemctl is-enabled zookeeper

遇到的问题

当执行 systemctl start zookeeper 启动服务时,没有启动成功。

需要在zkEnv.sh文件中添加JDK的JAVA_HOME路径。

bash 复制代码
cd /usr/local/zookeeper/zookeeper-3.8.4/bin/

vim zkEnv.sh

至此,重新启动,启动成功。

相关推荐
Github掘金计划19 小时前
开发者狂喜!GitHub 官方开源:支持 Copilot/Cursor,规范即代码,27k Star 封神!
java·python·kafka·github·copilot
ha_lydms20 小时前
Kafka如何提高读写效率
分布式·kafka
武子康1 天前
Java-196 消息队列选型:RabbitMQ vs RocketMQ vs Kafka
java·分布式·kafka·rabbitmq·rocketmq·java-rocketmq·java-rabbitmq
华大哥1 天前
Kafka 和springboot 整合Logback日志
spring boot·kafka·logback日志
SoleMotive.2 天前
kafka和其他消息队列的区别
分布式·kafka
吃喝不愁霸王餐APP开发者2 天前
霸王餐用户行为埋点:Kafka Connect+ClickHouse实时OLAP分析
分布式·clickhouse·kafka
倒流时光三十年2 天前
Kafka 客户端 Offset Explore 配置
kafka·offsetexplore
深蓝电商API2 天前
爬虫+消息队列:RabbitMQ vs Kafka vs RocketMQ选型
爬虫·kafka·rabbitmq
梦里不知身是客113 天前
一个集群的zk节点挂掉之后影响kafka的运行吗
分布式·kafka
RestCloud4 天前
如何用ETL做实时风控?从交易日志到告警系统的实现
数据库·数据仓库·kafka·数据安全·etl·数据处理·数据集成