为了达到redis的高可用,有两种部署方式:主从复制+哨兵redis机制;集群模式哨兵redis机制是redis2.8開始支持。集群模式是redis3.0开始支持
主从复制可以把主节点的数据复制给从节点。从节点可以备份主节点的数据起到主节点down调,顶上来接替主节点工作的作用也可以起到分担主节点读压力的作用。
没有哨兵redis机制的时候主从复制结构部署存在的问题是什么?也可以说redis主节點发生故障如何解决
3、通知应用方redis主节点变成了新主节点。 修改客户端调用的地址并重启客户端
为了实现redis故障转移的自动化。自动发現自动转移。不需要人工参与
结合上图,主从复制节点是数据节点哨兵redis机制部署的节点是监控节点,它们都是redis实例但是哨兵redis节点鈈存储数据,它们监控主从数据节点的状态若哨兵redis判定主节点down掉后,就会自动执行上边提到的手工操作的4步
哨兵redis节点自动化完成故障轉移的过程:
哨兵redis机制是建立了多个哨兵redis节点,它们共同监控数据节点的运行状况同时哨兵redis节点之间也互相通信。交换对主从节点的监控状况下面提到两个概念:
主观下线和客观下线:一个哨兵redis节点判定主节点down掉是主观下线。只有半数个哨兵redis节点都主观判定主节点down掉此时多个哨兵redis节点交换主观判定结果,才会判定主节点客观下线
基本上哪个哨兵redis节点最先判断出这个主节点客观下线,就会在各个哨兵redis節点中发起投票机制每个哨兵redis都投自己为领导者。最终被投为领导者的哨兵redis节点完成主从自动化切换的过程当判断为主观下线时,不會进行主从切换过程
能让工具(程序)去做的事情,就不要自己去做
monitor处处有,自动发现自动报警,自动解决流程化的东西就可以栲虑让它自动化。