Redis主从切换
- Redis主从复制实际上就是将主Redis节点的数据,复制到其他从Redis节点去进行存储
- 启动主节点和启动不同的从节点启动间隔时间不能太短,因为主节点需要将数据同步到不同的从节点会耗费大量资源
- 当主节点因为出现异常宕机后,需要进行主从切换
- Redis主从切换主要分为以下两种方式:手动切换以及哨兵模式
主从手动切换
- 主节点出现宕机时,使用主从手动切换的方式,手动的将一台从节点切换成主节点
- 手动切换的过程中会造成Redis服务不可用
实现
命令
edis-cli -h <从节点ip> -p <从节点端口号> slaveof no one
- 通过上述命令,可以将该从节点临时设置为主节点(当Redis重启时,主从切换设置将会失效)
- 按照主从复制的配置将其他从节点的主配置改成现在的主节点
- 当原来的主节点从宕机中进行恢复,则将临时主节点的数据进行保存,将AOF文件与RDB文件拷贝替换原主节点下的AOF文件与RDB文件
- 重启原主节点Redis服务以及临时主节点Redis服务,恢复原先的主从关系
哨兵模式
-
在Redis中,哨兵是一个独立的进程独立运行。由一个或多个Sentinel实例组成,可以监视多个主节点以及主节点下的从节点
-
当监视的主节点因为故障宕机,Sentinel实例可以自动的将主节点下的其中一个从节点升级为新的主节