1. 查看zoo.cfg文件
server后面的数字为zkdata目录下myid中的数字,master、slave1、slave2是自己的主机名,如果不知道怎么修改配置主机名字,可以看我这篇博客,里面有涉及到
# vim /usr/zookeeper/zookeeper-3.4.10/conf/zoo.cfg
dataDir=/usr/zookeeper/zookeeper-3.4.10/zkdata
dataLogDir=/usr/zookeeper/zookeeper-3.4.10/zkdatalog
server.1=master:2888:3888
server.2=slave1:2888:3888
server.3=slave2:2888:3888
2. 查看data目录中的myid文件
如果myid文件中的数字不和zoo.cfg中的数字对应,一定要对应,不然也会造成错误
# vim /usr/zookeeper/zookeeper-3.4.10/zkdata/myid
一定要对应上,上面master对应的是1,那就写1.主机名字对应的那个就写哪个数字
3. 查看防火墙是否关闭
systemctl stop firewalld.service #关闭防火墙
systemctl disable firewalld.service #关闭开机启动
如果想开启的话:
开启防火墙:
systemctl start firewalld.service
开启开机启动:systemctl enable firewalld.service
4.还有一种情况是查看自己的Java变量配置好了没
我的问题就出在这里,我是通过查看zookeeper.out 日志发现的
cd /usr/zookeeper/zookeeper-3.4.10/bin #进入目录
zkServer.sh start #启动zookeeper
zookeeper.out #查看日志
我当时是报这个错误的
nohup: 无法运行命令"/usr/local/lib/jdk1.8.0_151/bin/java": 没有那个文件或目录
这个151是我之前jdk的一个版本,说明我之前的东西没有删干净,所以尽可能回忆一下之前哪里都用到了这个,我是在/root/.bash_profile文件中发现残存的,需要改一下,如果实在找不到,就把zookeeper bin目录下的命令都试一试,也能给你一些提示,另外,创建目录的时候还是尽量不要加版本号的好,很容易出错。
启动之后就是这样子的了,leader是随机分配的
其实还是要细心一点呀.