帮你快速理解、总结文档立即下载

cluster 族

最近更新时间:2026-08-06 18:51:32
我的收藏

命令介绍

Cluster 族命令用于集群模式下的分片拓扑查询。在分布式缓存数据库的集群架构中,数据按16384个哈希槽(Hash Slot)分布在多个分片上,Cluster 族命令帮助客户端实现智能路由和集群状态感知。其核心命令按功能可分为以下两类:
集群拓扑与状态查询
CLUSTER NODES:返回集群中所有节点的 ID、地址、角色(主/从)、状态及槽位分配信息。
CLUSTER INFO:返回集群整体状态摘要,包括集群状态(ok/fail)、已分配槽位数量、已知节点数等关键指标。
CLUSTER SLOTS:返回槽位范围与节点的映射关系,是客户端路由表构建的核心命令。
CLUSTER SHARDS(Redis 7.0+ / Valkey 8.0+):以分片为粒度返回拓扑信息,更便于识别主从关系和分片边界。
槽位计算与路由
CLUSTER KEYSLOT:返回指定 Key 所属的哈希槽编号(0 - 16383),客户端据此将请求路由到正确的分片节点。
CLUSTER COUNTKEYSINSLOT:返回指定槽位中的键数量(仅本地节点)。CLUSTER GETKEYSINSLOT:返回指定槽位中的键名列表。
更多信息请参见 Valkey 官方文档:Cluster 命令组。

命令支持概览

槽位查询命令:cluster keyslot、cluster countkeysinslot、cluster getkeysinslot、cluster slots、cluster shards。其中 cluster shards 仅 Redis 7.0 及 Valkey 8.0、9.0 的标准架构与集群架构支持;其余4个在 Redis 4.0 及之后各版本的集群架构中均支持,标准架构不支持。cluster slots 返回槽到节点映射,cluster shards 返回槽到分片映射(7.0+ 的改进版本)。
集群信息查询命令:cluster nodes、cluster info。在 Redis 4.0 及之后各版本的集群架构中均支持,标准架构不支持。
跨 Slot 限制:Cluster 族命令操作集群元数据(槽位、节点信息),不操作用户数据键,不存在跨 Slot 访问场景。

命令兼容性矩阵

该族命令在各版本与架构下的支持情况如下表所示(✓ 表示支持,✗ 表示不支持,— 表示该命令不存在跨 Slot 访问场景)。
说明:
标准架构下所有 cluster 命令均不适用(✗)。集群架构下仅槽位查询(cluster keyslot、cluster countkeysinslot、cluster getkeysinslot、cluster slots、cluster shards)及集群信息查询(cluster nodes、cluster info)子命令受支持,其余涉及拓扑变更的运维管理命令全局不可用。cluster shards 是 cluster slots 的改进版本(Redis 7.0+ 引入),提供按分片聚合的槽位映射信息。
命令
Valkey 9.0标准架构
Valkey 9.0集群架构
Redis 7.0 / Valkey 8.0标准架构
Redis 7.0 / Valkey 8.0集群架构
Redis 6.2标准架构
Redis 6.2集群架构
Redis 5.0标准架构
Redis 5.0集群架构
Redis 4.0标准架构
Redis 4.0集群架构
Redis 2.8标准架构
集群架构跨 Slot 支持
cluster keyslot
✗
✓
✗
✓
✗
✓
✗
✓
✗
✓
✗
—
cluster countkeysinslot
✗
✓
✗
✓
✗
✓
✗
✓
✗
✓
✗
—
cluster getkeysinslot
✗
✓
✗
✓
✗
✓
✗
✓
✗
✓
✗
—
cluster slots
✗
✓
✗
✓
✗
✓
✗
✓
✗
✓
✗
—
cluster shards
✓
✓
✓
✓
✗
✗
✗
✗
✗
✗
✗
—
cluster nodes
✗
✓
✗
✓
✗
✓
✗
✓
✗
✓
✗
—
cluster info
✗
✓
✗
✓
✗
✓
✗
✓
✗
✓
✗
—