每个节点的分片总数
编辑每个节点的分片总数
编辑集群级别的分片分配器会尝试将单个索引的分片尽可能地分散到多个节点上。但是,根据您拥有的分片和索引的数量以及它们的大小,可能并不总是能均匀地分散分片。
以下动态设置允许您指定每个节点允许的来自单个索引的分片总数的硬性限制。
您还可以限制一个节点可以拥有的分片数量,而不管索引如何。
-
cluster.routing.allocation.total_shards_per_node
-
(动态) 分配给每个节点的主分片和副本分片的最大数量。默认为
-1
(无限制)。Elasticsearch 在分片分配期间检查此设置。例如,一个集群的
cluster.routing.allocation.total_shards_per_node
设置为100
,并且有三个节点的分配情况如下:- 节点 A: 100 个分片
- 节点 B: 98 个分片
- 节点 C: 1 个分片
如果节点 C 发生故障,Elasticsearch 会将其分片重新分配给节点 B。将分片重新分配给节点 A 将超出节点 A 的分片限制。
这些设置会施加一个硬性限制,这可能会导致某些分片未被分配。
请谨慎使用。