哨兵模式原理

哨兵系统监控Redis主从集群,确保高可用性。当主节点故障时,哨兵通过投票选出新主节点,并通知客户端。此外,哨兵之间互相监控,保证集群稳定性。故障转移基于多数票原则,选择优先级最高、复制最完整从节点作为新主。Cluster模式提供读写负载均衡和自动故障转移,扩展存储能力。
摘要由CSDN通过智能技术生成

一、定义

哨兵(sentinel):是一个分布式系统,用于对主从结构中的每台服务器进行监控,当出现故障时通过投票机制选择新的Master并将所有slave连接到新的

Master。所以整个运行哨兵的集群的数量不得少于3个节点。

二、作用

监控:哨兵会不断地检查主节点和从节点是否运作正常。

自动故障转移:当主节点不能正常工作时,哨兵会开始自动故障转移操作,它会将失效主节点的其中一个从节点升级为新的主节点,并让其它从节点改为复制新的主节点。

通知(提醒):哨兵可以将故障转移的结果发送给客户端。

三、故障转移机制

1.由哨兵节点定期监控发现主节点是否出现了故障
每个哨兵节点每隔1秒会向主节点、从节点及其它哨兵节点发送一次ping命令做一次心跳检测。如果主节点在一定时间范围内不回复或者是回复一个错误消息,那么这个哨兵就会认为这个主节点主观下线了(单方面的)。当超过半数哨兵节点认为该主节点主观下线了,这样就客观下线了。
2.当主节点出现故障,此时哨兵节点会通过Raft算法(选举算法)实现选举机制共同选举出一个哨兵节点为leader,来负责处理主节点的故障转移和通知。所以整个运行哨兵的集群的数量不得少于3个节点。
3.由leader哨兵节点执行故障转移,过程如下:
●将某一个从节点升级为新的主节点,让其它从节点指向新的主节点;

●若原主节点恢复也变成从节点,并指向新的主节点;

●通知客户端主节点已经更换。
需要特别注意的是,客观下线是主节点才有的概念;如果从节点和哨兵节点发生故障,被哨兵主观下线后,不会再有后续的客观下线和故障转移操作。

主节点的选举:

1.过滤掉不健康的(已下线的),没有回复哨兵 ping 响应的从节点。

2.选择配置文件中从节点优先级配置最高的。(replica-priority,默认值为100)
3.选择复制偏移量最大,也就是复制最完整的从节点。
哨兵的启动依赖于主从模式,所以须把主从模式安装好的情况下再去做哨兵模式

在这里插入图片描述

哨兵的模式

一、哨兵对主从复制集群进行监控

监控的对象:所有redis数据库节点

二、哨兵与哨兵之间互相进行监控

监控对象:哨兵彼此

三、监控的目的

1、哨兵和哨兵之间的监控目的:检测批次的存活转台

2、哨兵监控所有redis数据库的目的:为了实现自动故障切换

故障切换的原理?

1当master挂掉,哨兵会及时发现,发现之后,进行投票机制,选举出一个新的master服务器(得是基数)

2完成slave—>master的从想主切
3完成其他从服务器对新master的配

cluster模式

在这里插入图片描述

cluster模式同步两种方式

master1 只给slave01同步数据mastre1和master2同步数据
cluster模式
1、读和写可以负载均衡

2、自动故障转移

3、突破了单机存储限制
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值