gpt4 book ai didi

elasticsearch - 在新添加的数据节点之间分配Elasticsearch的主要分片

转载 作者:行者123 更新时间:2023-12-02 22:26:57 25 4
gpt4 key购买 nike

我正在寻找一种在新添加的数据节点之间自动分配Elasticsearch的主要分片的方法。
我知道一种实现此目的的方法是在添加新节点之后,通过重新索引。集群配置更改后,是否有任何内部配置或其他更简单的方法可以自动完成?
示例场景
最初,集群具有3个数据节点和一个索引,该索引包含6个主分片和5个副本。因此,Elasticsearch在每个节点之间分配2个主要分片。一段时间后,我将数据节点的数量增加到6。 3个新节点自动共享未分配的副本,但不共享主碎片。 是否有一种无需重新编制索引即可实现此目标的方法?

最佳答案

您是正确的,除了@leandrojmp已经在注释中提到的cluster reroute API之外,Elasticsearch不会自动在新添加的数据节点上重定位主碎片。
您可以尝试其他一些事情,但是这些都是冒险的,只有在拥有备份并且对您的操作有良好控制的情况下才应该这样做,而我做到了这些,以在玩和破坏ES时学习更多有关的知识,并拥有备份和对操作的完全控制以及是学习ES内部知识和解决问题的不同方法的好方法:
如果您有足够的副本(在您的情况下,您有5个副本),则可以将副本减少到2个,这将导致Elasticsearch重新平衡分片(尽管不确定是否会导致主分片重新定位),并且一旦完成,再次将副本增加到原始数量。
强制一段时间(至少60秒),停止对1个数据节点的elasticsearch过程,这将导致副本碎片提升为主要碎片并分配给新的数据节点。
,恕我直言,集群重新路由API是最安全和最佳选择。

关于elasticsearch - 在新添加的数据节点之间分配Elasticsearch的主要分片,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62779155/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com