0

我正在尝试将所有分片(主分片和副本)从一个特定的弹性搜索节点移动到其他节点。

在做一些研究时,我开始了解集群级别的分片分配过滤,我可以在其中指定在分配分片时要忽略的节点名称。

PUT _cluster/settings
{
  "transient" : {
    "cluster.routing.allocation.exclude._name" : "data-node-1"
  }
}

我的问题是,

  1. 如果我动态更新设置,分片会自动从我排除的节点移动到其他节点吗?
  2. 如何检查并确保所有分片都从特定节点移动?
4

1 回答 1

1
  1. 是的,如果可能的话,您的分片将自动移动:

    仅当可以在不破坏另一个路由约束的情况下重新定位分片时,才会重新定位分片,例如永远不会在同一节点上分配主分片和副本分片。

    更多信息在这里

  2. 您可以使用shards api查看所有分片的位置。或者,如果您可以访问 kibana 仪表板,则可以在最底部的分片或索引的监控选项卡中查看分片分配。

于 2020-03-05T15:01:45.527 回答