1、什么是哨兵模式
哨兵模式:可以自动切换解决单点故障,但是不能负载均衡,存储能力受限制。
哨兵核心功能:在主从复制的基础上,实现了主节点的自动故障转移
2、哨兵的作用
监控:监控主节点和从节点是否在正常运行
故障自动转移:当主节点不能正常工作时,哨兵会开始自动故障转移操作,它会将失效主节点的其中一个从节点升级为新的主节点,并让其他从节点改为复制新的主节点。
通知(提醒):哨兵将故障转移结果发送给客户端
3、哨兵结构组成
哨兵节点:一个或多个哨兵节点组成,特殊的redis节点不存储数据
数据节点:主节点和从节点即数据节点
4、哨兵故障转移机制
主观下线:一个哨兵认为主节点有问题,则进行下一步即选举
客观下线:多个哨兵(半数以上)认为主节点有问题(客观下线是主节点上才会有的概念)
①由哨兵节点定期监控主节点是否发生故障
1个从节点每隔1s向哨兵发送ping的命令做心跳检测,主节点在一定时间内不回复或回复有问题则单个从节点认为主节点下线即主观下线,若超过半数的哨兵认为主节点下线了即客观下线真正下线了。
5、哨兵工作、切换原理
哨兵原理:分布式系统,用于对主从结构中的每台服务器进行监控,当出现故障是通过投票机制选新的master并将所有slave连接到新的master上,整个哨兵的集群数量不能少于3个节点(3台服务器)