为zookeeper增加守护进程

为zookeeper增加守护进程

clickhouse 集群非常以来zookeeper集群,在实际生产环境中,会遇到zk进程异常停止的问题,为了保证zookeeper集群持续正常运行,需要为其添加守护进程

1. 创建service 文件

touch /usr/lib/systemd/system/zookeeper.service
# 在service文件中添加内容

[Unit]
Description=Zookeeper Service
After=network.target
ConditionPathExists=/usr/local/zookeeper/conf/zoo.cfg

[Service]
Type=forking
Environment=JAVA_HOME=/opt/jdk-11.0.14  注意java路径
ExecStart=/usr/local/zookeeper/zookeeper.service.run
ExecStop=/usr/local/zookeeper/zookeeper.service.stop
Restart=always
RestartSec=5

[Install]
WantedBy=multi-user.target

可以看到该需要用到一个 /usr/local/zookeeper/zookeeper.service.run和 /usr/local/zookeeper/zookeeper.service.stop文件,文件中的内容如下

2.创建启动停止文件

创建 zookeeper.service.run文件

touch /usr/local/zookeeper/zookeeper.service.run

写入下面的内容

#!/bin/bash
/usr/local/zookeeper/bin/zkServer.sh start

创建zookeeper.service.stop 文件

touch /usr/local/zookeeper/zookeeper.service.stop

写入下面的内容

#!/bin/bash
/usr/local/zookeeper/bin/zkServer.sh stop

添加可执行权限

chmod 754 /usr/lib/systemd/system/zookeeper.service
chmod 754 /usr/local/zookeeper/zookeeper.service.run
chmod 754 /usr/local/zookeeper/zookeeper.service.stop

使用重新加载

重新加载
systemctl daemon-reload

配置好上面的内容后,需要使用systemctl start zookeeper启动zk,不能使用zkServer.sh start ,这样就能让zk进程持续运行

3.配置项释义

[Unit]
Description:描述,
After:在network.target,auditd.service启动后才启动
ConditionPathExists: 执行条件

[Service]
EnvironmentFile=变量所在文件
ExecStart=执行启动脚本
ExecReload=执行重启命令
ExecStop=执行停止命令
Environment=变量
User=服务运行的用户,
Group=服务运行的用户组
PIDFile=存放PID的文件路径
Restart=fail时重启
PrivateTmp=True表示给服务分配独立的临时空间
Restart=always: 只要不是通过systemctl stop来停止服务,任何情况下都必须要重启服务,默认值为no
RestartSec=5: 重启间隔,比如某次异常后,等待5(s)再进行启动,默认值0.1(s)
StartLimitInterval: 无限次重启,默认是10秒内如果重启超过5次则不再重启,设置为0表示不限次数重启


[Install]
Alias:服务别名
WangtedBy: 多用户模式下需要的
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值