Redis故障转移

针对Redis集群主节点,主节点故障,则需要进行故障转移

虚拟概念,介于节点、key二者之中

故障发现

Redis集群内节点通过ping/pong消息实现节点通信,故障发现通过消息传播机制实现

主观下线

某个节点认为另一个节点不可用

客观下线

标记一个节点真正下线,多个节点认为该节点不可用

尝试客观下线流程

计算有效下线报告数量

cluster-node-time不宜设置过小

判断是否大于槽节点总数一半

是更新为客观下线

向集群广播下线节点fail消息

故障恢复流程

资格检查

准备选举时间

发起选举

选举投票

替换主节点

1、投票成功的从节点取消复制,变为主节点

2、执行clusterDelSlot操作,撤销故障节点负责的槽

3、执行clusterAddSlot操作,委派槽给自己

4、向集群广播消息,通知集群所有节点接管了故障主节点槽信息

哨兵

一种Redis实例,加入Redis Sentinel,监控节点,自动完成故障发现与转移

浙ICP备11005866号-12