安裝zookeeper時候,能夠查看進程啓動,可是狀態顯示報錯:Error contacting service. It is probably not running

安裝zookeeper-3.3.2的時候,啓動正常沒報錯,但zkServer.sh status查看狀態的時候卻出現錯誤,以下:vim

JMX enabled by default
Using config: /hadoop/zookeeper/bin/../conf/zoo.cfg
Error contacting service. It is probably not running.oop

jps查看進程,卻發現進程已啓動google

7313  QuorumPeerMainspa

 

在網上查閱資料一共有三種解決方法:日誌

1,打開zkServer.sh 找到status)server

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目錄沒有建立致使出錯,手動增長目錄後重啓,問題解決。
注:我想不是日誌的問題因此這個方法根本就沒有試ip

3,建立數據目錄,也就是在你zoo.cfg配置文件裏dataDir指定的那個目錄下建立myid文件,而且指定id,改id爲你zoo.cfg文件中server.1=localhost:2888:3888中的    1.只要在myid頭部寫入1便可.
注:在我第二次安裝的時候,沒有將myid文件建立在dataDir指定的那個目錄下,也報了該錯誤。以後在dataDir指定的那個目錄下建立myid文件就沒有報錯。hadoop

4 由於防火牆沒有關閉。關閉防火牆:文檔

  #查看防火牆狀態

   service iptables status 

  #關閉防火牆
   service iptables stop
  #查看防火牆開機啓動狀態
   chkconfig iptables --list
  #關閉防火牆開機啓動
   chkconfig iptables off

 注意:個人確在開始時候沒有關閉防火牆,可是當我關閉防火牆以後也沒有解決問題。

5 沒有創建主機和ip之間的映射關係。

  創建主機和ip之間映射關係的命令爲 vim /etc/hosts   在文件的末端加入各個主機和ip地址之間的映射關係就能夠了。

  注意:只有在創建了映射關係以後,才能夠將在同一個網段下的機器利用主機名進行文件傳遞。問題解決!

相關文章
相關標籤/搜索