Redis哨兵

85 阅读1分钟

master宕机后应该怎么办?

选择一个salve继续当作master节点,以此实现高可用性

Redis哨兵的作用

简单说就是监控整个集群 对集群进行故障恢复

Redis哨兵的三个功能

    1.监控:会不断检查master和salve是否按预期工作  
    2.自动故障恢复:如果maser故障,会将一个salve提升为master,当故障实例恢复后也是以新的master为主
    3.通知:当集群发生故障转移时,会将最新信息推送给Redis的客户端

监控的实现机制

基于心跳机制检测服务状态,每隔1秒向集群的每个实例发送ping命令,会有两种结果

1.主观下线:如果某个哨兵节点发现某实例未在规定时间内响应,则认为该实例主观下线(主观下线是指单个哨兵节点认为redis下线了)
2.客观下线:如果超过指定数量的sentinel(哨兵)认为该实例主观下线,则该实例客观下线

如何选举新的master?

image.png

如何实现故障转移

1.告诉要成为master的salve节点,现在开始自己就是master节点
2.发布通告,告知所有的salve节点master换成了一个新的节点,让这些salve成为新的master的从节点
3.将原本出现故障的master节点标记成salve节点,恢复后自动成为新的master节点的从节点

image.png