Linux系统,Zookeeper3.5多实例设置开机启动

2021-03-23  本文已影响0人  程就人生

Linux系统下,搭建ZooKeeper集群

问题描述

ZooKeeper集群搭建好了,如果重启,就需要手动启动ZooKeeper服务器,这是件非常麻烦的事,一不小心就忘记了,如果设置成开机启动,那就方便多了。下面看看如何设置成开机启动。

1.创建ZooKeeper开机启动bash文件;

vim  /etc/rc.d/zookeeper_multi_start.sh
#按下 i 键打开插入模式
i

2.zookeeper_multi_start.sh文件内容如下;

#!/bin/bash
export JAVA_HOME=/usr/local/java/jdk1.8.0_281
/usr/local/zookeeper/bin/zkServer.sh start  /usr/local/zookeeper/conf/zoo-1.cfg &
/usr/local/zookeeper/bin/zkServer.sh start  /usr/local/zookeeper/conf/zoo-2.cfg &
/usr/local/zookeeper/bin/zkServer.sh start  /usr/local/zookeeper/conf/zoo-3.cfg &

说明:&是在后台运行,还需要引入jdk安装的家目录,启动zkServer.sh时需要,否则会启动失败,找不到jdk路径;

3.保存bash文件;

#按下ESC键结束输入
esc
#输入:wq! 强制保存并退出
:wq!

4.给该bash文件授权(很重要);

#添加可执行权限
chmod +x /etc/rc.d/zookeeper_multi_start.sh

5.添加到开机启动文件 /etc/rc.d/rc.local 中(非常重要);

/etc/rc.d/zookeeper_multi_start.sh 

说明:使用vim指令写入到开机启动文件中,这里省略。

6.开机启动文件如果没有执行权限,也需要授权一下(非常重要);

chmod +x /etc/rc.d/rc.local

7.查看文件权限

ll /etc/rc.d/rc.local
ll /etc/rc.d/zookeeper_multi_start.sh

如果没有给这两个文件的任一一个文件授权:可执行权限,都有可能启动失败的,切记!

在设置zookeeper开机启动时,遇到的一个问题
在一开始的时候,感觉没必要再写个bash文件,就把这些启动项一股脑的写到了启动文件/etc/rc.d/rc.local中,但是测试重启的时候,zookeeper服务启动总是丢三落四,要么这个没启动,那么那个没启动,或者三个zookeeper都没启动,至于什么原因也没有找到,整合成zookeeper_multi_start.sh这个文件后,这个问题就解决了。

上一篇 下一篇

猜你喜欢

热点阅读