您的位置 首页 java

「zookeeper详解图文四」ZK集群节点为什么要部署单数台?

视频讲解:

在前面,我们专门搭建了zk集群,在日常运维过程中也经常会被问到你们要选择几台节点来搭建zk集群,这时候你会回答几台呢?我们通过表格分析下:

集群节点汇总

如以上表格所示,因为zk搭建集群需要过半服务启动成功,集群才能进行选举和通信,所以集群节点数必须 大于等于3台 才可以,然后我们分析下,

1)当集群总节点数为3台,那么最少可用节点需要2台,可容忍失效节点数可以为1台;

2)当集群总节点数为4台,那么最少可用节点需要3台,可容忍失效节点数可以为1台;

3)当集群总节点数为5台,那么最少可用节点需要3台,可容忍失效节点数可以为2台;

4)当集群总节点数为6台,那么最少可用节点需要4台,可容忍失效节点数可以为2台;

那么我们是不是可以得出规律,假设最少可用节点为n,

5)当集群总节点数为2n-1台,那么最少可用节点需要n台,可容忍失效节点数可以为n-1台;

6)当集群总节点数为2n台,那么最少可用节点需要n+1台,可容忍失效节点数可以为n-1台;

根据可容忍失效节点数来度量的话,我们可以得出部署单数台的原因:

  1. 部署多台主要为了系统之间容错;
  2. 部署单数台可以达到相同的效果,同时能够节约服务器资源;
  3. 防止网络分区导致脑裂问题,以3台节点为例,如果出现1台机器由于网络延迟等因素导致分区,那么剩余2台依然可以进行leader选举,并提供服务。但是如果有4台服务节点,两两分区的话,就不能完成leader选举,也就并不能进行服务了。

不断分享开发过程用到的技术和面试经常被问到的问题,如果您也对IT技术比较感兴趣可以「关注」我

文章来源:智云一二三科技

文章标题:「zookeeper详解图文四」ZK集群节点为什么要部署单数台?

文章地址:https://www.zhihuclub.com/183966.shtml

关于作者: 智云科技

热门文章

网站地图