zookeeper集群搭建,及遇到的zkServer.sh status 提示 Error contacting service. It is probably not running.问题解决
搭建集群的步骤学习搭建zk集群,准备了三台虚拟机,node01、node02、node03下载并解压zk将zk的bin目录添加到PATH,编辑/etc/profile文件,添加两行。其中ZK_HOME设置为你的zk所在目录export ZK_HOME=/opt/zookeeper-3.6.3export PATH=$PATH:$ZK_HOME/bin退出编辑后,输入命令,使配置生效source /
·
搭建集群的步骤
- 学习搭建zk集群,准备了三台虚拟机,node01、node02、node03
- 提前安装好JDK
- 下载并解压zk
- 将zk的bin目录添加到PATH,编辑/etc/profile文件,添加两行。其中ZK_HOME设置为你的zk所在目录
export ZK_HOME=/opt/zookeeper-3.6.3
export PATH=$PATH:$ZK_HOME/bin
退出编辑后,输入命令,使配置生效
source /etc/profile
- 复制zk配置文件:zoo_sample.cfg 为 zoo.cfg作为正式的配置文件
- 修改配置文件:
#修改目录路径(若目录不存在,注意提前创建好)
dataDir=/var/zk
# 添加如下服务器配置
# node01、node02、node03需要提前做好host解析
# 3888端口用于无主节点时进行投票选主;2888端口是选主完成后用于主从节点的同步/通讯;
# 注意防火墙开放端口;云服务器注意在安全组添加开放端口
server.1=node01:2888:3888
server.2=node02:2888:3888
server.3=node03:2888:3888
- 在/var/zk目录创建myid文件,并写入server id。如node01,则文件写入1;node02则2;node03则3
- 三台机都准备好上面的步骤后,开始依次启动zk集群
start-foreground,为前台启动,默认不加这个参数是后台启动,这里第一次启动方便看日志,所以前台启动zk
zkServer.sh start-foreground
- 查看zk的状态
zkServer.sh status
遇到的问题
三台机都是一样的环境,但是我的node02始终没有启动成功。
zkServer.sh status 查看zk状态时,提示Error contacting service. It is probably not running.
zkCli.sh也无法连接zkServer。
说明zk没有启动成功。
经过排查,发现我这是因为/etc/hosts配置的问题:
原来是这样的:
127.0.0.1 node02 localhost
根据一些博主的建议,注销掉node02的host解析,问题神奇滴解决了!
具体原因暂时还不是很确定,知道的可以评论补充下
更多推荐
已为社区贡献2条内容
所有评论(0)