2017-03-31 8 views
1

私は、しかし、すぐに私はZK1-PRODのいずれかのノードを停止するようのZooKeeperクラスタ - 1つのノードがダウンしている奇妙な動作をプログラム

[[email protected]]/etc/supervisor.d% sudo /opt/zookeeper/bin/zkServer.sh status 
ZooKeeper JMX enabled by default 
Using config: /opt/zookeeper/bin/../conf/zoo.cfg 
Mode: leader 

を予想通り操作は、その後、すべての作品2つのノードがある場合(supervisordのsupervisorctl経由)

[[email protected]]/etc/supervisor.d% sudo /opt/zookeeper/bin/zkServer.sh status 
ZooKeeper JMX enabled by default 
Using config: /opt/zookeeper/bin/../conf/zoo.cfg 
Error contacting service. It is probably not running 

hoewever

[[email protected]]/etc/supervisor.d% sudo supervisorctl status 
zookeeper      RUNNING pid 4838, uptime 0:04:01 
できるだけ早く私は奴隷を戻すよう

- 私はすぐに最初の出力(モード:リーダー)を取得してい

[[email protected]]/etc/supervisor.d% ps aufx G zoo 
89:zookeep+ 4838 0.2 1.4 2970424 56816 ?  Sl 19:32 0:00 \_ java -Dzookeeper.log.dir=. -Dzookeeper.root.logger=INFO,CONSOLE -cp /opt/zookeeper/bin/../build/classes:/opt/zookeeper/bin/../build/lib/*.jar:/opt/zookeeper/bin/../lib/slf4j-log4j12-1.6.1.jar:/opt/zookeeper/bin/../lib/slf4j-api-1.6.1.jar:/opt/zookeeper/bin/../lib/netty-3.10.5.Final.jar:/opt/zookeeper/bin/../lib/log4j-1.2.16.jar:/opt/zookeeper/bin/../lib/jline-0.9.94.jar:/opt/zookeeper/bin/../zookeeper-3.4.10.jar:/opt/zookeeper/bin/../src/java/lib/*.jar:/opt/zookeeper/bin/../conf: -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.local.only=false org.apache.zookeeper.server.quorum.QuorumPeerMain /opt/zookeeper/bin/../conf/zoo.cfg 

を私は少なくともそうorg.apache.zookeeper.server.quorum.QuorumPeerMain 3つのインスタンスが必要ですリーダーを選択できますか?

私は、1つのインスタンスがリーダーとして自分自身を選択し、依頼を続けることができると考えました。

私に何かが不足していますか?

答えて

1

は、私は少なくともそう org.apache.zookeeper.server.quorum.QuorumPeerMainがリーダーを選択することができます3つのインスタンスが必要ですか?

はい、は、1つのサーバーを失うというイベントを許容します。

Zookeeperクォーラムでは、サーバーの大半が利用可能である限り、zookeeperサービスが利用可能になります。サーバーはそれ自体をリーダーとして選ぶことはできません。

2つのサーバーがアンサンブルを形成するこのケースでは、2が大半です。 1人が亡くなると、大多数のメンバーはそれに伴って失われます。大多数を失うことは、定足数の失敗とみなされます。

1がまだ失われた場合2が過半数を維持するために残っているが、2を失った場合に、この3メンバーの定足数の過半数作るメンバーがにつながるどの失われ、3サーバーのシナリオを説明する方がはるかに簡単飼い葉桶サービスの利用不可能。