安裝ZooKeeper已經有一段時間了。中間停了一段時間,今天再用發現已經生疏了。忘了zookeeper安裝在集羣的哪幾臺機器上了。node
現對拿到一個新的zookeeper環境時,如何認識zookeeper,作如下筆記。shell
文檔內容:
less
[root@datanode1 ~]# echo $ZOOKEEPER_HOME /home/hadoop/modules/zookeeper [root@datanode1 ~]#
若是機器在10臺以上,然而又不記得本身zookeeper裝在哪幾臺機器上,會是一件很悲催的事情,目前我只知道一個笨方法就是一個個的試。oop
爲了不採用上邊這種笨方法,咱們能夠對hadoop集羣中的各機器進行文檔登記,記錄每臺機器的角色,裝了哪些軟件,以便後查。spa
[root@datanode1 ~]# echo $ZOOKEEPER_HOME /home/hadoop/modules/zookeeper [root@datanode1 ~]# less /home/hadoop/modules/zookeeper/conf/ configuration.xsl log4j.properties zoo.cfg zoo_sample.cfg [root@datanode1 ~]# less /home/hadoop/modules/zookeeper/conf/zoo.cfg
從server.A=B:C:D中可知,zookeeper運行環境由datanode一、datanode二、datanode3三臺機器組成。日誌
[root@datanode2 ~]# zkServer.sh start JMX enabled by default Using config: /home/hadoop/modules/zookeeper/bin/../conf/zoo.cfg Starting zookeeper ... STARTED [root@datanode2 ~]#
zookeeper沒有自帶UI訪問接口,除非本身安裝。code
在這兒,注意查看輸出日誌日期。這兒,日期爲06-02,明顯是之前的歷史日誌,今天的日誌並未打印(必定記得查看日期,不然會被輸出日誌誤導)。server
[root@datanode1 ~]# zkServer.sh status JMX enabled by default Using config: /home/hadoop/modules/zookeeper/bin/../conf/zoo.cfg Mode: follower [root@datanode1 ~]#
[root@datanode2 ~]# zkServer.sh status JMX enabled by default Using config: /home/hadoop/modules/zookeeper/bin/../conf/zoo.cfg Mode: leader [root@datanode2 ~]#
[root@datanode3 ~]# zkServer.sh status JMX enabled by default Using config: /home/hadoop/modules/zookeeper/bin/../conf/zoo.cfg Mode: follower [root@datanode3 ~]#
可看出,datanode2爲leader,datanode1和datanode3位follower。
接口
[root@datanode3 ~]# zkCli.sh -server datanode2:2181