、主从复制高可用
#主从复制存在的问题:
1主从复制,主节点发生故障,需要做故障转移,可以手动转移:让其中一个slave变成master2 主从复制,只能主写数据,所以写能力和存储能力有限
哨兵是对Redis的系统的运行情况的监控,它是一个独立进程,它会独立运行,功能有二个:
通过发送命令,让Redis服务器返回监控其运行状态,包括主服务器和从服务器。
当哨兵监测到master宕机,会自动将slave切换成master,然后通过发布订阅模式通知其他的从服务器,修改配置文件,让它们切换主机。
二、架构说明
可以做故障判断,故障转移,通知客户端(其实是一个进程),客户端直接连接sentinel的地址
流程
1多个sentinel发现并确认master有问题2选举触一个sentinel作为领导3选取一个slave作为新的master4通知其余slave成为新的master的slave5通知客户端主从变化6 等待老的master复活成为新master的slave
三、配置哨兵
一般配置多个哨兵,除了监控各个redis服务器之外,哨兵之间也会互相监控。
1.环境配置
主机服务
主机IP
端口
sentinel端口
master(主库)
127.0.0.1
6379
26379
slave (从库)
127.0.0.1
6380
26380
slave (从库)
127.0.0.1
6381
26381
redis默认的sentinel.conf文件
2.创建自定义sentinel文件
进入服务器的redis文件夹下,创建redis6379_sentinel.conf配置
port 26379 #此端口号是该哨兵文件的端口号,每个哨兵文件的端口号不同daemonize no
dir /root/data
protected-mode no
bind0.0.0.0logfile"redis6379_sentinel.log"#sentinel monitor代表监控,mymaster是给主库取得别名,ip地