集群状态
_cluster/state
API 用于检索集群的当前状态,包括元数据、路由表、节点及其他组件。此 API 主要用于监控、调试和内部目的。它提供由集群管理器节点维护的集群状态各个部分的快照。
端点
GET /_cluster/state
GET /_cluster/state/{metric}
GET /_cluster/state/{metric}/{target}
路径参数
下表列出了可用的路径参数。所有路径参数均为可选。
参数 | 数据类型 | 描述 |
---|---|---|
度量 | 字符串或列表 | 回复中要包含的指标列表,以逗号分隔。有关可用选项的列表,请参见指标选项。默认值为_all 。 |
目标 | 字符串或列表 | 索引名称、数据流和索引别名的逗号分隔列表,用于限制响应的范围。 |
指标选项
您可以使用 metric
路径参数来限制 API 返回的信息。以下选项可用:
_all
(默认):返回所有指标。blocks
:包含索引级别和全局块的信息。metadata
:返回集群元数据,包括设置、索引映射和模板。nodes
:返回集群中节点的信息。routing_table
:提供所有分片的路由信息。cluster_manager_node
:显示当前选定的集群管理器节点的 ID。version
:显示当前集群状态版本。
查询参数
下表列出了可用的查询参数。所有查询参数都是可选的。
参数 | 数据类型 | 描述 |
---|---|---|
local | 布尔型 | 如果为 true ,则从本地节点而非集群管理器节点检索状态。默认值为 false 。 |
cluster_manager_timeout | 时间 | 连接到集群管理器节点的超时持续时间。默认值为 30s 。 |
flat_settings | 布尔型 | 如果为 true ,则以平面格式返回设置。默认值为 false 。 |
wait_for_metadata_version | 整数 | 等待元数据版本等于或大于此值后才响应。 |
wait_for_timeout | 时间 | 指定使用 wait_for_metadata_version 时的等待时间。默认值为 30s 。 |
ignore_unavailable | 布尔型 | 是否忽略缺失或已关闭的索引。默认值为 false 。 |
expand_wildcards | 字符串 | 指定通配符表达式可匹配的索引类型。支持逗号分隔的值。 有效值为 - all :匹配任何索引,包括隐藏索引。- closed :匹配已关闭的非隐藏索引。- hidden :匹配隐藏索引。必须与 open 、closed 或两者结合使用。- none :不接受通配符表达式。- open :匹配已打开的非隐藏索引。默认值为 open 。 |
allow_no_indices | 布尔型 | 如果通配符表达式或索引别名无法解析为任何索引,是否失败。默认值为 true 。 |
示例
检索完整的集群状态
GET /_cluster/state
检索特定索引的元数据和路由表
GET /_cluster/state/metadata,routing_table/my-index
仅检索当前选定的集群管理器节点
GET /_cluster/state/cluster_manager_node
响应字段
下表列出了所有响应字段。
字段 | 数据类型 | 描述 |
---|---|---|
集群名称 | 字符串 | 集群的名称。 |
cluster_uuid | 字符串 | 集群的唯一标识符。 |
version | 整数 | 集群状态的当前版本。 |
state_uuid | 字符串 | 此状态版本的唯一标识符。 |
master_node | 字符串 | 与 cluster_manager_node 一样,此参数是为了向后兼容而保留的。 |
cluster_manager_node | 字符串 | 选定的集群管理器节点的节点 ID。 |
blocks | 对象 | 索引级别的块设置。 |
metadata | 对象 | 索引映射、设置和别名。 |
节点 | 对象 | 集群中所有节点的详细信息。 |
routing_table | 对象 | 每个索引的分片到节点分配。 |
routing_nodes | 对象 | 分配给每个节点的分片列表。 |
索引 | 对象 | 索引特定状态元数据。 |