最近在安裝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
若是有人遇到相似的問題,能夠參考一下。