Redis的哨兵机制:Sentinel(哨兵)是Redis 的高可用性解决方案
为了达到redis的高可用,有两种常用的部署方式:主从复制+哨兵机制;集群模式。哨兵机制是redis2.8开始支持。集群模式是redis3.0开始支持。
什么是redis的哨兵机制?
:Redis的哨兵(sentinel) 系统用于管理多个 Redis 服务器,该系统执行以下三个任务
监控(Monitoring): 哨兵(sentinel) 会不断地检查你的Master和Slave是否运作正常。
提醒(Notification):当被监控的某个 Redis出现问题时, 哨兵(sentinel) 可以通过 API 向管理员或者其他应用程序发送通知。
自动故障迁移(Automatic failover):当一个Master不能正常工作时,哨兵(sentinel) 会开始一次自动故障迁移操作,它会将失效Master的其中一个Slave升级为新的Master, 并让失效Master的其他Slave改为新的Master; 当客户端试图连接失效的Master时,集群也会向客户端返回新Master的地址,使得集群可以使用新的Master代替失效的Master。
主从复制的意义:主从复制可以把主节点的数据复制给从节点。从节点可以备份主节点的数据,起到主节点down调,顶上来接替主节点工作的作用。也可以起到分担主节点读压力的作用。
没有哨兵机制的时候,主从复制结构部署存在的问题是什么?也可以说redis主节点发生故障如何解决?
如果主节点down掉,主从切换需要人工介入。
1、启用从节点为主节点。命令:slaveof no one
2、旧主节点的其他从节点变成新主节点的从节点。命令:slaveof new master
3、通知应