ZooKeeper будет работать до тех пор, пока большинство его узлов, если он работает, если N - число узлов в кластере, он будет работать до тех пор, пока working_nodes_number > N/2
Теперь, если у вас 2 узлы, и один не работает (working_nodes_number = 1
), зоопарк не будет работать: N / 2 = 1
и, очевидно, 1 > 1
не так
Другими словами, кластер из двух серверов не может оставаться жив, даже если один узел не работает .
Попробуйте запустить 3 узла, так что если один узел выйдет из строя, все равно будет 2 узла (большинство), чтобы zookeeper продолжал работать
В общем, хорошая стратегия - использовать кластер с нечетным числом узлов. Возможно, вам будет интересно прочитать эту статью , которая имеет отношение к обсуждению