ZooKeeper 03 - ZooKeeper集群的脑裂问题 (Split Brain问题)
文章目录 1.ZooKeeper的主从机制 2 什么是ZooKeeper的脑裂 2.1 脑裂现象的表现 2.2 为什么会出现脑裂 3 ZooKeeper如何解决"脑裂" 3.1 3种可行的思路 3.2 ZooKeeper采用的方法 3.3 ZooKeeper的具体解决思路 参考资料 1.ZooKeeper的主从机制 Leader == Master, Follower == Slaver. 集群中的各个节点都会尝试注册为leader节点, 其他没有注册成功的则成为follower(随从)节点. 这些follower节点通过watcher(观察者)监控着leader节点: —— ZooKeeper内部通过心跳机制来确定leader的状态, 一旦leader节点出现问题, : 就能很快获悉并迅速通知其他follower节点, 这些follower节点得知消息之后将及时采取相关操作. 2 什么是ZooKeeper的脑裂 2.1 脑裂现象的表现 ZooKeeper集群中, 各个节点间的网络通信不良时, 容易出现脑裂(split-brain)现象: 集群中的节点监听不到leader节点的心跳, 就会认为leader节点出了问题, 此时集群将分裂为不同的小集群, 这些小集群会各自选举出自己的leader节点, 导致原有的集群中出现多个leader节点. —— 这就是脑裂现象. 2.2