提供索引的副本分片的存储信息。存储信息包括了:哪些节点存储分片副本,分片副本分配的ID,每个分片的唯一标识符以及打开分片索引时甚至更早期的引擎异常。
默认情况下,只有至少一个未分配的副本分片的列表存储信息。当集群健康状态为yellow
时,将列出具有至少一个未分配副本分片的存储信息。当集群健康状态为red
时,将列出具有未分配主分片的存储信息。
端点包括特定索引,多个索引或全部分片的存储信息:
curl -XGET 'http://localhost:9200/test/_shard_stores'
curl -XGET 'http://localhost:9200/test1,test2/_shard_stores'
curl -XGET 'http://localhost:9200/_shard_stores'
列出存储信息的分片范围可以通过status
参数变更。默认为yellow
和red
。yellow
列出至少一个未分配副本分片的信息,red
列出有未分配的主分片的信息。使用green
列出所有已分配的副本分片信息。
curl -XGET 'http://localhost:9200/_shard_stores?status=green'
响应:
分片存储信息按索引和分片ID分组。
{
...
"0": { ①
"stores": [ ②
{
"sPa3OgxLSYGvQ4oPs-Tajw": { ③
"name": "node_t0",
"transport_address": "local[1]",
"attributes": {
"mode": "local"
}
},
"allocation_id": "2iNySv_OQVePRX-yaRH_lQ", ④
"legacy_version": 42, ⑤
"allocation" : "primary" | "replica" | "unused", ⑥
"store_exception": ... ⑦
},
...
]
},
...
}
① 这个键是存储信息对应的分片id
②所有分片副本的存储信息列表
③副本托管存储的节点信息,这个键是唯一节点id
④存储副本分片的id
⑤存储副本的版本(仅适用于在当前版本的 Elasticsearch 中尚未激活的旧版分区副本)
⑥存储副本的状态,无论用作主存储、副本存储还是不使用的副本。
⑦打开分片索引或更早引擎故障时遇到的异常信息。