首页/数据/Redis 进阶速查/redis-cli --cluster check 健康检查

redis-cli --cluster check 健康检查

集群体检命令:输出各节点的槽覆盖、从节点挂载关系、节点间连通性与配置一致性检查,是集群变更前后的标准动作。

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

集群体检命令

redis-cli --cluster check 是集群的体检命令:传入任意一个节点地址,它会遍历集群,输出各节点负责的槽覆盖情况、主从挂载关系、节点间连通性以及配置一致性检查结果。它是集群变更前后的标准动作——变更前跑一次留存基线,变更后再跑一次做对比,比事后凭印象判断拓扑是否正常可靠得多。

基本信息

命令格式redis-cli --cluster check <任意节点地址>
输出内容槽分布、主从关系、一致性告警
使用节奏变更前后各跑一次并留档对比
相关命令redis-cli --cluster info 输出概览
返回表现发现问题时会明确列出告警项

典型使用场景

  • 扩容或缩容前后做拓扑对比,确认变化符合预期
  • 故障恢复后确认集群是否回到完整状态
  • 定期巡检:把输出按日期存档,便于回溯
  • 上线验收:确认槽覆盖完整、主从成对
  • 客户端报错时,先确认集群自身是否健康

体检与留档

体检与留档
redis-cli --cluster check 10.0.0.11:7000                     # 完整体检
redis-cli --cluster info 10.0.0.11:7000                      # 概览输出
redis-cli --cluster check 10.0.0.11:7000 > /tmp/cluster-check-$(date +%F).txt
redis-cli -p 7000 CLUSTER INFO | grep -E 'cluster_state|cluster_slots_assigned'
redis-cli -p 7000 CLUSTER NODES | grep -cE 'fail'            # 快速看异常节点数量

体检关注点

检查项期望状态异常含义
槽覆盖0 到 16383 全部有归属存在空洞时部分请求无法路由
主从关系每个主节点都配有从节点缺少从节点就没有故障转移能力
节点连通所有节点互相可达被隔离的节点会引发判定异常
配置一致性各节点关键参数一致不一致会导致行为难以预测
体检通过不代表数据健康:槽覆盖正常但某个节点内存打满、磁盘写满或复制延迟极高,同样会出问题。体检覆盖的是拓扑层面,资源与性能指标需要单独监控。
把体检输出按日期留档,故障复盘时能清楚看到拓扑在哪个时间点发生了变化,比事后从日志里一点点拼凑时间线省力得多。

易错点

  • 只在出问题时才做体检,缺少基线输出可对比,无法判断变化范围
  • 看到检查通过就认为一切正常,忽略内存、磁盘、复制延迟等资源层面的隐患
  • 在写入高峰执行体检,遍历开销叠加到线上负载上
  • 体检结果不落档,复盘时缺少拓扑变化的时间线

数据来源与参考

  • Redis 官方文档:cluster check 工具说明
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌