Redis Sentinel - 如何选择新的主人?

Redis Sentinel - How the new master is chosen?

我正在尝试设置 Redis Sentinel。 我知道当主人倒下时,哨兵会捡起它的一个奴隶并将其提升为主人。 我想知道新主人是根据哪些属性在奴隶中选择的,以及哪个奴隶被选为新主人?

Sentinels选举完成后,leader sentinel会进行以下操作:

  1. 从从属列表中删除已经处于关闭状态的从属。
  2. 移除掉线时间大于down-after-milliseconds + master down时间
  3. 十倍的slave
  4. Select 个从属 replica-priority(在从属中配置)
  5. 如果多个slave被selected,按同步偏移量排序,select最in-sync(最大偏移量)slave。
  6. 如果还有多个selection,按运行Id排序,select小的

所以你可以看到master的进程顺序selection可以是下面的顺序:

  • 断开连接时间
  • 优先级
  • 复制偏移量
  • 运行 身份证