Elasticsearch的选举


 1、bully算法
  通过如下几个步骤
    1.启动节点ping协调器,获取当前集群状态(节点信息,集群名称等),若是协调器没有启动一直到ping通为止
    2.不管能ping通,都会拿到对象activeMaster现役master
    3.判断activeMaster的数量,0说明当前集群没有master,1表示当前集群已经选举完毕.
    4.若是为1,当前节点启动Bully算法逻辑结束;若是为0,进入第5步(总会中止在这里)
    5.启动时发现没有现役master,将集群中全部的master节点放到candidate的候选名单中.候选名单大于等于最小master数量,小于最小master数量.
    6.若是candidate中大于等于master最小数量,从其中选举一个id值最小的节点放到activeMaster中,暂定为master,若是小于最小master转回第一步.
 2、master宕机逻辑
    在集群中,任意节点的变化,都会致使全部人记录的candidate/activeMaster发生变化
    ○ activeMaster发生变化(1-0),主节点宕机
    从新进行选举
    ○ candidate发生变化,现役master正常,其余备选有宕机现象;
  从新判断集群的最小个数(activeMaster+candidate个数>=最小master)算法

相关文章
相关标签/搜索