搭建Zookeeper集群服务启动失败

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了搭建Zookeeper集群服务启动失败相关的知识,希望对你有一定的参考价值。

参考技术A 运行Zookeeper之后,显示启动成功

但是查看集群状态时,显示如下:

查看Zookeeper的日志(默认存放在用户目录下)zookeeper.out, 提示以下信息

从错误信息看,从myid=1这个节点连接dn1机器时网络路由不通,猜测可能是dn1上的防火墙没有关闭。从dn1主机上查看防火墙状态如下:

关闭防火墙,(检查下zookeeper集群的所有节点,有防火墙的话都关闭)

重启集群内每个节点的Zookeeper服务,可以看到启动成功

zookeeper启动失败排查

最近开始实践搭建Linux下的集群环境,在搭建zookeeper的时候,出现了启动失败的情况,介绍下几种情况和解决方法。

首先,强烈建议新手刚开始搭建的时候关掉防火墙,否则可能出现很多奇怪的错误令人心烦。

关闭防火墙并且禁止开机启动

systemctl stop firewalld.service
systemctl disable firewalld.service   

 

1、java.net.BindException: 地址已在使用

端口被占用了,这种情况下只需要把2181端口改成别的就可以了

 

2、Error contacting service. It is probably not running.

[email protected]30-88-ubuntu:/home/zookeeper-3.4.10# zkServer.sh start
ZooKeeper JMX enabled by default
Using config: /home/zookeeper-3.4.10/bin/../conf/zoo.cfg
Starting zookeeper ... STARTED
[email protected]-30-88-ubuntu:/home/zookeeper-3.4.10# zkServer.sh status
ZooKeeper JMX enabled by default
Using config: /home/zookeeper-3.4.10/bin/../conf/zoo.cfg
Error contacting service. It is probably not running.

这种情况下,可以使用命令 bin/zkServer.sh start-foreground 启动,通过查看启动的输出信息或查看zookeeper.out确定问题出在哪。

而我的报错信息如下(这个错误可能只在使用openJDK的时候才有)

Error: Config file not found: /usr/lib/jvm/java-9-openjdk-amd64/conf/management/management.properties

这是软链接不存在,手动创建正确软链接。

cd /usr/lib/jvm/java-9-openjdk-amd64
touch conf
ln -s lib conf
ls -la conf
  lrwxrwxrwx 1 root root 3 Jan 31 16:21 conf -> lib

 

以上是关于搭建Zookeeper集群服务启动失败的主要内容,如果未能解决你的问题,请参考以下文章

图文详解Zookeeper集群搭建(CentOs6.3)

Spark基础学习笔记07:搭建Spark HA集群

ZooKeeper集群搭建中的Connection refused而导致的启动失败

搭建Hadoop集群(超详细版)

zookeeper启动失败排查

[干货]手把手系列1——zookeeper服务搭建并实现开...