码迷,mamicode.com
首页 > 其他好文 > 详细

脑裂是啥子?

时间:2021-03-09 13:11:53      阅读:0      评论:0      收藏:0      [点我收藏+]

标签:脑裂   大脑   一个   集群   没有   机制   领导者   lead   总结   

脑裂前提

脑裂(split-brain)就是“大脑分裂”,也就是本来一个“大脑”被拆分了两个或多个“大脑”。脑裂通常会出现在集群环境中,比如ElasticSearch、Zookeeper集群,而这些集群环境有一个统一的特点,就是它们有一个大脑,比如ElasticSearch集群中有Master节点,Zookeeper集群中有Leader节点。

脑裂介绍

对于一个集群,想要提高这个集群的可用性,通常会采用多机房部署。正常情况下,此集群只会有一个Leader,那么如果机房之间的网络断了之后,两个机房内的机器还是可以相互通信的,如果不考虑过半机制,那么就会出现每个机房内部都将选出一个Leader。这就相当于原本一个集群,被分成了两个集群,出现了两个“大脑”,这就是脑裂。

过半机制

在领导者选举的过程中,如果某台服务获得了超过半数的选票,则此服务就可以成为 Leader 了。比如现在集群中有5台 zkServer,那么 half=5/2=2,那么也就是说,领导者选举的过程中至少要有三台 zkServer 投了同一个 zkServer,才会符合过半机制,才能选出来一个 Leader。

总结

总结得出,有了过半机制,对于一个集群,要么没有Leader,要没只有1个Leader,这样就避免了脑裂问题。

脑裂是啥子?

标签:脑裂   大脑   一个   集群   没有   机制   领导者   lead   总结   

原文地址:https://www.cnblogs.com/feiqiangsheng/p/14499066.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!