六、哨兵模式
6.1 哨兵简介
哨兵(sentinel)是一个分布式系统,用于对主从结构中的每台服务器进行监控,当出现故障时通过投票机制选择新的master并将所有slave连接到新的master。
- 哨兵的作用
- 监控:不断的检查master和slave是否正常运行,master存货监测、master与slave运行情况监测;
- 通知(提醒):断开master与salve连接,选取一个slave作为master,将其他slave连接到新的master,并告知客户端新的服务器地址;
- 自动故障转义:断开master与slave连接,选取一个slave作为master,将其他slave连接到新的master,并告知客户端新的服务器地址。
注意:哨兵也是以太redis服务器,知识不提供数据服务,通常哨兵配置数量为单数。
6.2 启用哨兵模式
- 配置哨兵
- 配置一拖二的主从结构
- 配置三个哨兵(配置相同,端口不同)
- 启动哨兵
#启动哨兵的监听的命令:
redis-server.exe sentinel.conf --sentinel
#哨兵模式的配置文件(名字自己起)
sentinel.conf
注意:如果主机和各个从机的密码不相同,记得修改换完主机后配置文件里的密码!!
6.3 哨兵工作原理
主从切换:哨兵在进行主从切换过程中经历三个阶段:监控、通知、故障转移。
-
阶段一:监控阶段
-
阶段二:通知阶段
-
阶段三:故障转移阶段