Zookeeper为什么一般要部署奇数台服务器?

Zookeeper为什么一般要部署奇数台服务器?

这个问题,猛一看有点无从下手,其实考察的就是Zookeeper的选举机制。


首先要明确一点,任意台Zookeeper服务器都能够部署且正常运转。Zookeeper官方建议部署奇数台服务器,其实是基于节约资源的角度来考虑的。

Zookeeper默认采用Quoryms组件来处理集群的脑裂问题。Quoryms的原则就是过半存活即可用。

假如我们需要搭建一个最大允许N台服务器宕机的Zookeeper集群,那么我们最少需要部署2N+1台服务器。也就是说,对于一个有2N+1台服务器服务器的Zookeeper集群来说,最大能接受N台服务器宕机。那么,有兄弟会说,我部署2N+2台服务器也可以满足你的要求。是的,2N+1只是一个最优解。Zookeeper官方建议部署奇数台服务器,就是从资源利用率的角度来说的。毕竟,服务器资源的成本是比较大的,能少部署1台,就节约1台的成本。

你可能感兴趣的:(Zookeeper为什么一般要部署奇数台服务器?)