Zookeeper 在 Centos7 上无法正常启动

Zookeeper doesn't start correctly on Centos7

我在Centos 7上配置了zookeeper。 当我尝试查看状态时,它会抛出下一个:

[ikerlan@server1 ~]$ /opt/zookeeper-3.4.9/bin/zkServer.sh status

 ZooKeeper JMX enabled by default
    Using config: /opt/zookeeper-3.4.9/bin/../conf/zoo.cfg
    Error contacting service. It is probably not running.

如果我运行zkServer.sh开始前景

 -10-06 10:26:36,550 [myid:1] - WARN  [WorkerSender[myid=1]:QuorumCnxManager@400] - Cannot open channel to 2 at election address /172.16.8.242:3888
java.net.NoRouteToHostException: No existe ninguna ruta hasta el `host'
    at java.net.PlainSocketImpl.socketConnect(Native Method)
    at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:350)
    at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:206)

这是我的 ~/.bashrc:

###JAVA CONFIGURATION###
 JAVA_HOME=/usr/java/jdk1.8.0_74/jre/
 export PATH=$PATH:$JAVA_HOME/bin

###HADOOP CONFIGURATION###
 HADOOP_PREFIX=hadoop/
 export PATH=$PATH:$HADOOP_PREFIX/bin:$HADOOP_PREFIX/sbin
#finHadoop

###ZOOKEEPER###
 export PATH=$PATH:/opt/zookeeper-3.4.9/bin
#finZookeper

zoo.cfg:

tickTime=2000
dataDir=/opt/ZooData
clientPort=2181
initLimit=5
syncLimit=2

server.1=172.16.8.241:2888:3888
server.2=172.16.8.242:2888:3888
server.3=172.16.8.243:2888:3888

/opt/ZooData/myid配置

[ikerlan@server1 ~]$ sudo lsof -P -iTCP -sTCP:LISTEN  | grep 2181
java    14568 ikerlan   25u  IPv6  53119      0t0  TCP *:2181 (LISTEN)

一个进程已经 运行 并且肯定绑定到端口 2181。 检查以下命令:

$ telnet <zookeeper-server-ip> 2181  # Just to know if some process is listening on port 2181

然后您可以通过发出以下命令检查哪个进程正在侦听 2181:

 $lsof -P -iTCP -sTCP:LISTEN  | grep 2181

解决方案:

我已经在所有集群节点中禁用了防火墙并且它工作正常。

sudo systemctl stop firewalld