查看某个主节点的副本
CLUSTER REPLICAS <node-id> 列出指定主节点下所有从节点的状态行,输出格式与节点列表命令中的行完全一致。它是核对主从配对是否完整的常用手段:按主节点逐个查询,就能发现只有主节点没有副本的「光杆」分片。这类分片一旦主节点故障就无法自动接管,属于集群架构里最需要提前发现的风险。
基本信息
| 用法 | CLUSTER REPLICAS <node-id> |
|---|---|
| 参数 | 主节点的 40 位十六进制 ID |
| 输出 | 从节点状态行,与节点列表格式一致 |
| 配套命令 | 取自身节点 ID 的命令,便于脚本自行定位 |
| 巡检方式 | 遍历所有主节点逐个查询并核对数量 |
典型使用场景
- 例行巡检确认每个分片都有副本,及时发现光杆主节点
- 扩容或缩容后核对主从配对是否按设计重建
- 从节点漂移或重挂之后确认它已经正常跟随目标主节点
- 高可用评审时输出每个分片的副本数量作为证据
- 故障恢复后确认所有副本已经指向新的主节点
查询示例
查询示例
redis-cli -p 7000 CLUSTER MYID # 取当前节点 ID
redis-cli -p 7000 CLUSTER REPLICAS <主节点id> # 列出该主节点下的副本
redis-cli -p 7000 CLUSTER NODES | grep master # 找出所有主节点逐个核对
redis-cli -p 7000 CLUSTER SHARDS # 7.0+ 可用分片视图一次看全输出行怎么读
| 字段 | 含义 | 异常表现 |
|---|---|---|
| 节点 ID | 该副本的十六进制标识 | 与备份记录不一致说明节点被重建过 |
| 地址端口 | 副本的连接地址 | 为公告地址,外部不可达需查公告配置 |
| 角色标记 | 副本为从节点角色 | 出现故障标记说明同步已中断 |
| 主节点 ID | 它跟随的主节点 | 指向非预期主节点说明配对错误 |
| 连接状态 | 与主节点的链路状态 | 长时间未连接需要查网络与日志 |
副本行里出现故障标记说明同步中断,需要进一步查看实例日志与网络连通性,而不是只统计数量是否够。
部分较老版本没有这个子命令,可用节点列表命令自行解析出全部从节点行来替代,脚本里最好做能力探测。