领导者选举的原因
- 只有一个 sentinel 节点完成故障转移;
领导者选举基本过程(Raft算法)
- 每个做主观下线的 sentinel 节点向其他 sentinel 节点发送命令,要求将其设置为领导者;
- 收到命令的 sentinel 节点如果没有同意其他 sentinel 节点发送的命令,那么将同意该请求,否则拒绝;
- 如果发送命令的 sentinel 节点发现自己的票数已经超过 sentinel 节点的一半并且超过 quorum,那么它将成为领导者;
- 如果此过程有多个 sentinel 成为领导者,将等待一段时间重新选举;