节点 API
1.0 版引入
节点 API 可以获取集群中各个节点的信息。
节点过滤器
使用 <node-filters>
参数可以过滤 API 响应中目标节点的集合。
参数 | 类型 | 描述 |
---|---|---|
<node-filters> | 字符串 | 一个逗号分隔的解析机制列表,OpenSearch 用于识别集群节点。 |
节点过滤器支持多种节点解析机制
- 预定义常量:
_local
、_cluster_manager
或_all
。 - 精确匹配
nodeID
- 对
node-name
、host-name
或host-IP-address
进行简单的区分大小写的通配符模式匹配。 - 节点角色,其中
<bool>
值设置为true
或false
cluster_manager:<bool>
指的是所有符合集群管理器条件的节点。data:<bool>
指的是所有数据节点。ingest:<bool>
指的是所有摄取节点。voting_only:<bool>
指的是所有仅投票节点。ml:<bool>
指的是所有机器学习(ML)节点。coordinating_only:<bool>
指的是所有仅协调节点。
- 对节点属性进行简单的区分大小写的通配符模式匹配:
<node attribute*>:<attribute value*>
。通配符匹配模式可以同时用于键和值。
解析机制按照客户端指定的顺序依次应用。每个机制规范都可以添加或删除节点。
要仅从选定的集群管理器节点获取统计信息,请使用以下查询
GET /_nodes/_cluster_manager/stats
要从仅数据节点获取统计信息,请使用以下查询
GET /_nodes/data:true/stats
解析机制的顺序
解析机制的顺序是依次应用的,每个机制都可以添加或删除节点。以下示例会产生不同的结果。
要获取除集群管理器节点外的所有节点的统计信息,请使用以下查询
GET /_nodes/_all,cluster_manager:false/stats
但是,如果您切换解析机制,结果将包含所有集群节点,包括集群管理器节点
GET /_nodes/cluster_manager:false,_all/stats