首页/数据/Redis 进阶速查/哨兵运维检查清单
主从与哨兵51 条

哨兵运维检查清单

上线与巡检清单:哨兵数量与部署位置、quorum 与 majority、认证配置、公告地址、日志落盘、告警联动、切换演练记录,逐项核对。

Redis 进阶速查数据更新于 2026-10-13

哨兵为什么需要清单

哨兵的故障大多不是「进程挂了」,而是「以为被保护着,其实保护不了」:票数凑不够、脚本没装、公告地址不可达、从来没人真正演练过切换。把上线前和周期巡检要看的东西固化成清单,人员轮换时也不容易漏项。

基本信息

拓扑要求3 个以上哨兵,分布在不同故障域
配置项quorum、认证、公告地址、日志落盘
运行检查CKQUORUM 结果与事件日志
验证项定期演练切换并留存记录

典型使用场景

  • 新上线一套哨兵时逐项对照配置
  • 季度巡检核对拓扑与票数是否仍然合理
  • 告警失效排查时确认通知链路是否还能工作
  • 人员交接时作为知识传递的载体
  • 切换演练前先跑一遍清单确认前置条件

巡检命令

巡检命令
# 票数与多数派是否还能满足客观下线判定
redis-cli -p 26379 SENTINEL CKQUORUM mymaster
# 主库地址、角色标记与下线判定参数
redis-cli -p 26379 SENTINEL MASTERS
# 其他哨兵是否都在名册里、地址是否可达
redis-cli -p 26379 SENTINEL SENTINELS mymaster
# 结果留档,便于与上一期对比发现配置漂移
redis-cli -p 26379 SENTINEL MASTERS | tee /var/log/redis/sentinel-check-$(date +%F).log

检查项目

检查项判断标准漏项的后果
哨兵数量与分布3 个以上且跨故障域单点故障即失去仲裁能力
quorum 与多数派能凑出多数票选出 leader永远无法完成切换
认证配置实例有密码时已配 auth-pass哨兵能看到实例却读不了状态
公告地址各哨兵输出地址互相可达选举与客户端连接失败
日志与告警日志落盘、通知脚本已部署事件无人知悉,故障静默
演练记录有近期演练与耗时数据真故障时才发现流程不通
清单要配留档才有价值:把每期巡检输出存下来,下一期对比就能看出配置漂移与拓扑变化,而不是每回都从零判断。
只监控「进程还在不在」等于没查:进程活着但票数不足、脚本丢失、公告地址配错,真出故障时照样不会切换。

易错点

  • 只做进程存活监控 → 哨兵处于「看起来正常但无法投票」的状态 → 把 CKQUORUM 与 SENTINELS 输出纳入监控
  • 巡检发现问题不做闭环 → 公告地址之类的错误长期潜伏,切换时才爆发 → 问题与整改记录挂在同一个台账上
  • 哨兵全部部署在同一台宿主机或同一可用区 → 一次故障同时带走多个哨兵,仲裁能力归零 → 按故障域分散部署
  • 从不演练切换 → 脚本、虚拟地址、客户端重连的问题无法提前暴露 → 定期演练并记录耗时与失败点

数据来源与参考

  • Redis 官方文档:Sentinel 运维要点汇总
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌