zookeeper集群一大特性是只要集群中半数以上的节点存活,集群就可以正常提供服务
第一点:
防止单点故障
比如:
集群中只有2台服务器,若其中1台挂掉,集群则停止对外提供服务
集群中只有3台服务器,若其中1台挂掉,集群则重新选主,继续对外提供服务
第二点:
2n+1台和2n+2台机器的容灾能力相同,都是允许n台机器宕机。本着节约的宗旨,一般选择部署2n+1台机器
比如:
3台服务器,至少2台正常运行才行(3的半数为1.5,半数以上最少为2),正常运行可以允许1台服务器挂掉
4台服务器,至少3台正常运行才行(4的半数为2,半数以上最少为3),正常运行可以允许1台服务器挂掉