【已解決】zookeeper顯示Error contacting service. It is probably not running等問題

博主在搭建hadoop集羣時,爲實現高可用(high-available),使用zookeeper 3.4.6,出現了一些小插曲,報錯(Error contacting service. It is probably not running),經歷一番折騰,最終完美解決。

下面提示幾個配置zookeeper容易入坑的點:

一、zoo.cfg配置文件(文件位置在zookeeper根目錄下的conf裏)

千萬不要亂改系統文件,網上的解決方案未必都是正確的,一般都是自己的配置出問題,請仔細查看。

- 兩個目錄的創建
zoo.cfg

- 端口號設置端口號設置
記得在dataDir目錄下新建myid文件,對應集羣中的不同機器的dataDir目錄下myid文件的內容,如上圖所示,博主的node2節點的dataDir目錄下的myid內容是1,以此類推,node3節點下的內容則爲2。

- ip地址映射
就是修改hosts文件,linux下打開hosts的命令是:

vi /etc/hosts

hosts
按照博主的模板,做好映射。

- 如果發現防火牆未關閉等問題,請自行解決。

二、zookeeper正確的運行方法

由於zookeeper是集羣管理工具,又部署在每個節點上,所以啓動的時候一定將每個節點的zkService.sh都差不多同時啓動。
如圖,若報錯java.net.ConnectException(這樣的日誌文件在zookeeper根目錄下的conf文件夾的zookeeper.out)如下,則是你只開了一個節點,沒有將所有節點打開,同時打開即可,若超過6000ms,zookeeper就會自動關閉,切記!
zookeeper拒絕連接
啓動zookeeper時輸出日誌的啓動方法: zkServer.sh start-foreground,無需進入文件系統即可看到控制檯輸出信息。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章