Перебалансировка OpenSearch

Ребалансировка кластера - это процесс, с помощью которого кластер OpenSearch распределяет данные между узлами. В частности, речь идет о перемещении существующих шейдов данных на другой узел для улучшения баланса между узлами (в отличие от распределения новых шейдов по узлам). Обычно это полностью автоматический процесс, не требующий вмешательства извне. Однако существует ряд параметров, которые OpenSearch использует для регулирования этого процесса.

OpenSearch logo

Примеры

Приведенная ниже команда устанавливает настройки кластера для включения автоматической ребалансировки кластера. Выполнять команду не обязательно (используемые значения фактически являются значениями по умолчанию).

Примечания и полезные сведения

В общем случае настройки ребалансировки кластера имеют разумные значения по умолчанию. Отключать ребалансировку кластера, как правило, не рекомендуется. Обычно разумнее всего дождаться, пока все индексы станут активными, прежде чем приступать к ребалансировке, поскольку мы считаем наиболее приоритетным восстановление индексов, а не их перемещение. Наконец, рекомендуется ограничить количество одновременных ребалансировок до 2 (по умолчанию), так как большое количество перемещаемых в один момент времени шардов может потреблять много ресурсов и приводить к нестабильности. Увеличение этого числа имеет смысл только на больших кластерах.

Процесс "ребалансировки" можно рассматривать как тенденцию к распределению общего количества шардов по всем узлам кластера, а также к как можно более равномерному распределению общего количества шардов для данного индекса по кластеру. Ребалансировка - это "мягкий" алгоритм, и над ним будут довлеть другие "жесткие" факторы, такие как осведомленность о распределении на дисках или шардах.

Если вы считаете, что ваш кластер балансируется не так, как нужно, сначала проверьте "жесткие" ограничения на осведомленность о распределении осколков или распределение осколков на основе диска, прежде чем настраивать параметры ребалансировки.

Ручная ребалансировка

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

Рекомендуется включить параметр dry_run, чтобы проверить результат своих действий, и если все в порядке, то повторить команду с dry_run=false.

Следует иметь в виду, что при ручной ребалансировке OpenSearch может автоматически переместить тот же (или другой) осколок обратно, компенсируя предыдущее действие. Кроме того, могут существовать ограничения, которые не позволят кластеру принять ваше перераспределение.

Понравилась статья? Поделиться с друзьями:
Добавить комментарий