web-dev-qa-db-ja.com

ZooKeeperクラスターのステータスを取得する

ZooKeeperクラスターのステータスを確認するために使用できるCLIまたはコマンドラインはありますか?基本的に、クラスターに参加する方法、またはリーダーとして機能しているノードを知りたいです。

どんなポインタも役に立ちます。

この質問をstackoverflowで見た: https://stackoverflow.com/questions/16669104/how-to-get-current-zookeeper-clusters-member-server-list 、しかし役に立たなかった

6
murarisumit

次のコマンドを入力すると、リーダーとして機能しているノードを判別できます。

echo stat | nc localhost 2181 | grep Mode

ノードがリーダーとして機能している場合は、応答が返されます。

Mode: leader

フォロワーの場合、次のように表示されます。

Mode: follower

または、/ opt/zookeeper/binにあるzkServer.shを使用することもできます。

./zkServer.sh status

その出力は次のようになります:

ZooKeeper JMX enabled by default
Using config: /opt/zookeeper/bin/../conf/Zoo.cfg
Mode: follower

以下を使用してさらに多くの情報を取得できます。

echo mntr | nc localhost 2181

その出力は次のとおりです。

zk_version      3.4.8--1, built on 02/06/2016 03:18 GMT
zk_avg_latency  0
zk_max_latency  0
zk_min_latency  0
zk_packets_received     7
zk_packets_sent 6
zk_num_alive_connections        2
zk_outstanding_requests 0
zk_server_state follower
zk_znode_count  357
zk_watch_count  0
zk_ephemerals_count     5
zk_approximate_data_size        846524
zk_open_file_descriptor_count   36
zk_max_file_descriptor_count    4096

ノードがリーダーの場合は、次も表示されます。

zk_followers    5
zk_synced_followers     5
zk_pending_syncs        0

以下は、Windowsプラットフォームには存在しません。

zk_open_file_descriptor_count   43
zk_max_file_descriptor_count    4096

上記の情報を使用して、Zookeeperアンサンブルの状態を判断できます。

7
George