安装zookeeper时候,可以查看进程启动,但是状态显示报错:Error contacting service. It is probably not running
安裝zookeeper-3.3.2的時候,啟動正常沒報錯,但zkServer.sh status查看狀態的時候卻出現錯誤,如下:
JMX enabled by default
Using config: /hadoop/zookeeper/bin/../conf/zoo.cfg
Error contacting service. It is probably not running.
jps查看進程,卻發現進程已啟動
7313? QuorumPeerMain
?
在網上查閱資料一共有三種解決方法:
1,打開zkServer.sh 找到status)
STAT=`echo stat | nc localhost $(grep clientPort "$ZOOCFG" | sed -e 's/.*=//') 2> /dev/null| grep Mode`
在nc與localhost之間加上 -q 1 (是數字1而不是字母l)
如果已存在則去掉
注:因為我用的zookeeper是3.4.5版本,所以在我的zkServer.sh腳本文件里根本沒有這一行,所以沒有生效
2,調用sh zkServer.sh status 遇到這個問題。百度,google了后發現有人是修改sh腳本里的一個nc的參數來解決,可在3.4.5的sh文件里并沒有找到nc的調用。配置文檔里指定的log目錄沒有創建導致出錯,手動增加目錄后重啟,問題解決。
注:我想不是日志的問題所以這個方法根本就沒有試
3,創建數據目錄,也就是在你zoo.cfg配置文件里dataDir指定的那個目錄下創建myid文件,并且指定id,改id為你zoo.cfg文件中server.1=localhost:2888:3888中的 ? ?1.只要在myid頭部寫入1即可.
如果這里的寫錯了,也會報錯,基本主要在這個地方不對,而造成的!!!
注:在我第二次安裝的時候,沒有將myid文件創建在dataDir指定的那個目錄下,也報了該錯誤。之后在dataDir指定的那個目錄下創建myid文件就沒有報錯。
4 因為防火墻沒有關閉。關閉防火墻:
? #查看防火墻狀態
? ?service iptables status?
? #關閉防火墻
? ?service iptables stop
? #查看防火墻開機啟動狀態
? ?chkconfig iptables --list
? #關閉防火墻開機啟動
? ?chkconfig iptables off
?注意:我的確在開始時候沒有關閉防火墻,但是當我關閉防火墻之后也沒有解決問題。
5 沒有建立主機和ip之間的映射關系。
? 建立主機和ip之間映射關系的命令為 vim /etc/hosts ? 在文件的末端加入各個主機和ip地址之間的映射關系就可以了。
? 注意:只有在建立了映射關系之后,才可以將在同一個網段下的機器利用主機名進行文件傳遞。問題解決!
備注:方式5中在每臺主機上配上集群中的ip與host的對應關系!!!
創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎總結
以上是生活随笔為你收集整理的安装zookeeper时候,可以查看进程启动,但是状态显示报错:Error contacting service. It is probably not running的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 解决 Unable to load na
- 下一篇: zookeeper节点类型详解