elastic / elasticsearch

Free and Open Source, Distributed, RESTful Search Engine
https://www.elastic.co/products/elasticsearch
Other
70k stars 24.76k forks source link

Increase default value for cluster.routing.allocation.cluster_concurrent_rebalance #97750

Open idegtiarenko opened 1 year ago

idegtiarenko commented 1 year ago

Description

cluster.routing.allocation.cluster_concurrent_rebalance property is limiting the amount of shards that could be rebalanced simultaneously. The default value is 2 what is reasonable for a small amount of shards however it is becoming a bottleneck for a bigger clusters (10+ nodes).

Since new desired balance shard allocator is not affected by https://github.com/elastic/elasticsearch/issues/87279 (effectively resolved by https://github.com/elastic/elasticsearch/pull/93977) I believe we should change the default to allow big clusters to rebalance quicker.

The new default could be set to:

elasticsearchmachine commented 1 year ago

Pinging @elastic/es-distributed (Team:Distributed)

idegtiarenko commented 1 year ago

After discussing this with a team we decided that we should limit amount of rebalances per node level similar to cluster.routing.allocation.node_concurrent_incoming_recoveries / cluster.routing.allocation.node_concurrent_outgoing_recoveries (with default value of 1 per node) as this is the safest option