最近因开发环境机房老是断电,每次断电都需要手动启动zookeeper,特别麻烦,于是按照网上的方法尝试将zk集群设置为开机自启动,但是老是无法成功,现将最后完整的成功方法记录如下:
1、我所采用的是建立zookeeper service的方法,建立自启文件:
cd /etc/rc.d/init.d
vim zookeeper
将下面这段复制粘贴到该文件:
#!/bin/bash
#chkconfig:2345 20 90
#description:zookeeper
#processname:zookeeper
export JAVA_HOME=/usr/local/jdk1.8.0_112
export ZOO_LOG_DIR=/tmp/zookeeper/logs
ZOOKEEPER_HOME=/usr/local/zookeeper-3.4.14
case $1 in
start) su root ${ZOOKEEPER_HOME}/bin/zkServer.sh start;;
stop) su root ${ZOOKEEPER_HOME}/bin/zkServer.sh stop;;
status) su root ${ZOOKEEPER_HOME}/bin/zkServer.sh status;;
restart) su root ${ZOOKEEPER_HOME}/bin/zkServer.sh restart;;
*) echo "require start|stop|status|restart" ;;
esac
:wq
保存并退出
使用service zookeeper start/stop命令来尝试启动关闭zookeeper,如果正常执行第2步
2、添加到开机自启
chkconfig --add zookeeper
添加完成后使用命令
chkconfig --list
验证是否成功添加开机自启动
![](https://img.haomeiwen.com/i5116897/b2c2856255e0c8f0.png)
出现以上结果说明开机自启添加成功。
最后我们重启机器验证一下。
3、总结
- 下面这几段很重要,否则无法读取环境变量导致报错
export JAVA_HOME=/usr/local/jdk1.8.0_112
export ZOO_LOG_DIR=/tmp/zookeeper/logs
ZOOKEEPER_HOME=/usr/local/zookeeper-3.4.14
- 我按照网上的方法配置完之后就一直启动不了,后来查询日志发现没有加 export JAVA_HOME=/usr/local/jdk1.8.0_112 java环境变量,出现问题一定要先看 /tmp/zookeeper/logs下的日志
网友评论