最近在安装zookeeper的时候遇到了一个问题:调用./zkServer.sh start以后,使用命令telnet localhost 2181,显示访问被拒绝。而后使用netstat查看监听2181的端口,没法查到。经过ps -aux指令能够查到zookeeper进程,不过查看监听端口,2181没有被监听。 ./zkServer.sh status,显示:zookeeper的服务好像没有启动。而我在调用以后,确实显示:java
JMX enabled by defaultspa
Using config: /usr/local/zookeeper/bin/../conf/zoo.cfgcode
Starting zookeeper ... STARTEDblog
在使用./zkServer.sh print-cmd,没有发现明显的错误。以后,使用./zkServer.sh start-foreground,显示有一个进程
ERROR [main:ZooKeeperServerMain@64] 错误。cmd
以后,应该是调用的时候,在前面添加了sudo,而后报错class
./zkServer.sh: 第 170 行: exec: java: 未找到cli
后来,我在zkServer.sh中添加了java的路径:zookeeper
JAVA_HOME="/usr/java/jdk1.8.0_171"jdk
而后,telnet localhost 2181就能够获得正确的回复。
另外附上个人conf配置:
tickTime=2000 dataDir=/var/lib/zookeeper/data dataLogDir=/var/lib/zookeeper/logs clientPort=2181 quorumListenOnAllIPs=true
若是有人遇到相似的问题,能够参考一下。