标题看起来很傻,但是当主服务器停机时,尽管我阅读了很多有关Zookeeper的文档,但我真的不理解Zookeeper故障转移策略。我的问题如下:
我认为您误会了我们在这里谈论的大多数。重要的多数不在其余节点中,而是在整个群集中。因此,您需要问的是:“ 2个节点能否在3个节点中占多数”?答案是他们可以,因此他们可以选举领导人。(我不完全知道Zookeeper如何解决领导者投票问题,但重要的是节点的目标不是成为领导者,而是决定一个领导者。要说服您,这可能是一种简单(但缓慢)的方式解决问题的方法:节点随机投票,如果形成多数,则选举该领导者,否则再次投票。)
不,事实并非如此。由于群集仍配置为三节点群集,因此剩下的一个节点无法形成多数,因此无法选举领导者。这是2节点群集实际上可能比1节点群集更差的原因之一,如果其中一个节点出现故障,群集将停止。
您不必这样做,它只是建议。拥有奇数的一个很好的理由是,如果您得到一个将您的集群分为相同大小的两个部分的网状分割,则任何一方都不能选举一位领导者。(如果运行的节点数为奇数,这是不可能的。)您也可以将其视为“买一送一”的交易类型,如果您有4个节点,则只有1个可以失败,但是如果得到5个节点就可以2个掉下来。但是,如果您有6个节点,则仍然只有2个节点可以关闭,而群集不会关闭。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句