哨兵模式:就是给主机和从机的集群,设置一个站岗的,对该redis系统进行监控,是一个独立的进程。
功能:
1、监控主数据库和从数据库是否运行正常
2、主数据出现故障后自动将从数据库转化为主数据库;
如果主机宕机,则开启选举,选择一个从机作为主机,假设原来的主机恢复正常之后,也不会重新变成主机,只会变为当前主机的从机。
配置方式:
1、配置哨兵
首先添加配置文件sentinel.conf,里面添加配置信息。
里面添加信息
sentinel monitor mastername 127.0.0.1 6379 1
// 以下为解释
mastername 监控主数据的名称,自定义
127.0.0.1:监控主数据库的IP;
6379:端口
1:最低通过票数
2、启动哨兵
哨兵是一个单独的进程,需要先确保主从服务是正常的,先启动主服务,后启动从服务。
意思是,主机和congji的redis-server要打开
把日志写入指定的文件
./redis-sentinel ./sentinel.conf >sent.log &
启动哨兵
./redis-server sentinel.conf --sentinel
通过在客户端里面使用info可以查看为主机还是从机,以及主机信息,从机信息。
3、主机宕机
将主机的redis-server进程杀掉,来模拟主机宕机
ps -ef | grep redis
kill -9 id
然后去查看从机,会发现哨兵已经变成了主机
通过在客户端中使用info来查看
role为master表示为主机
第二个数量指的是从机的数量。
后面两行指的是从机的信息。
原来的主机需要重新打开redis-server,然后进入客户端查看,会发现,变成了原来设置的哨兵的从机。