ES reroute会不会与 rebalance 产生"冲突"?导致reroute后的分片又被rebalance到其他节点上了?
Elasticsearch | 作者 hapjin | 发布于2019年08月06日 | 阅读数:3225
因为我在官方文档cluster-reroute看到这段话:
其大意是:ES reroute之后会执行rebalance,如果使用reroute 将分片A 从node1迁移到node2,可能会触发ES rebalance又把分片A 从node2 再均衡回到node1了?
那难道使用了reroute命令迁移分片之后,必须得禁用Rebalance了?因为如果不禁用Rebalance的话,reroute可能并没有真正生效啊。但是禁用了Rebalance,又不能充分利用ES提供的"负载均衡"能力了。
It is important to note that after processing any reroute commands Elasticsearch will perform rebalancing as normal (respecting the values of settings such as cluster.routing.rebalance.enable) in order to remain in a balanced state. For example, if the requested allocation includes moving a shard from node1 to node2 then this may cause a shard to be moved from node2 back to node1 to even things out.
其大意是:ES reroute之后会执行rebalance,如果使用reroute 将分片A 从node1迁移到node2,可能会触发ES rebalance又把分片A 从node2 再均衡回到node1了?
那难道使用了reroute命令迁移分片之后,必须得禁用Rebalance了?因为如果不禁用Rebalance的话,reroute可能并没有真正生效啊。但是禁用了Rebalance,又不能充分利用ES提供的"负载均衡"能力了。
2 个回复
bellengao - 博客: https://www.jianshu.com/u/e0088e3e2127
赞同来自:
hapjin
赞同来自:
由于 loginmac-201905 索引有5个分片,那要完全reroute完这个索引到 node-11节点,需要运行5次命令。