redis的哨兵
Markdown编辑器真好用嘿 还有模板
文章目录
前言
一、是什么?
作用:
二、能干嘛
1.主从监控
监控主从redis库运行是否正常
2.消息通知
哨兵可以将故障转移的结果发送给客户端
3.故障转移
如果Master异常,则会进行主从切换,将其中一个Slave作为新的Master
4.配置中心
客户端通过连接哨兵来获取当前redis服务的主节点地址
三、怎么玩==(案例演示、实战步骤)==
提示:这里对文章进行总结:
1.哨兵的配置文件
conf文件需要写的东西
常规配置参数说明:
哨兵监控参数说明:
a.命令1: sentinel monitor
Q:上图中 sentinel monitor 命令最后一个参数quorum 法定票数代表什么意思?
A:确认客观下线的最少哨兵数量
b.命令2:sentinel auth-pass
哨兵连接master的密码
c.其他命令:
注意:因为哨兵的conf文件和redis的conf文件是分开存放的,所以端口也不能使用重复
2.启动哨兵
两种启动命令
启动命令:redis-sentinel conf文件名 --sentinel
3.哨兵报错排错思路
看日志
例如说有三台redis,人别为 6379、6380、6381,其中6379为master主机,同时启动了哨兵机制。问:
日志中的记录
知识点1:断开6379可能会遇到 Broken Pipe
错误
知识点2:防止6379在断开重连检验密码失败,需要配置访问新主机的密码。
知识点3:哨兵会对redis的conf文件进行动态修改
4.其他备注
四、哨兵运行流程和选举原理
故障流程
SDWon 主观下线
配置说明:sentinel down-after-milliseconds <主机名> <失效间隔时间 /毫秒>
ODown 客观下线
配置说明:sentinel monitor <主机名> <IP> <端口> <法定票数>
客观下线 的投票完成后,再选举出领导者哨兵(哨兵里的兵王)
1.兵王是如何选出来的?
Raft算法
2.兵王leader来进行余下操作
由兵王开始推动故障切换流程并选举出一个新的主机master
1.新主机master是如何选出来的?
2.群臣俯首 兵王leader会动态执行相关语句
3.旧主拜服
4.小总结
五、哨兵使用建议
在哨兵进行重新选举等操作时,可能会引起数据丢失,所以引出了redis集群