Автобалансировка осколков в ElasticSearch - PullRequest
0 голосов
/ 17 октября 2018

У нас есть 4 узла ElasticSearch в версии 5.6.9, которые для некоторых предыдущих правил имеют несбалансированное количество шардов в каждом узле.

Мы обнаружили, что мы можем перемещать один осколок за раз в другой узел, но это невероятно медленно.

Помимо создания сценария, использующего API ElasticSearch для балансировки шардов, есть ли другой способ?

Ответы [ 2 ]

0 голосов
/ 31 октября 2018

Мы нашли проблему, система не выполняла автоматическую балансировку индексов кластера, потому что у нас было cluster.routing.rebalance.enable = none

Мы нашли информацию здесь .

Проблемау нас был кластер / перенаправление, согласно документации система снова попытается сбалансировать себя.В любом случае, спасибо за вашу помощь.

0 голосов
/ 17 октября 2018

Вы можете сделать это, используя Cluster Reroute , что позволяет вручную изменять распределение отдельных сегментов в кластере.проверить документы кластер Reroute

    POST /_cluster/reroute
{
    "commands" : [
        {
            "move" : {
                "index" : "test", "shard" : 0,
                "from_node" : "node1", "to_node" : "node2"
            }
        },
        {
          "allocate_replica" : {
                "index" : "test", "shard" : 1,
                "node" : "node3"
          }
        }
    ]
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...