Подтвердить что ты не робот

Перезагрузка elasticsearch node

Каков правильный способ перезапуска node в elasticsearch? (желательно через REST API, API java тоже может быть в порядке)

4b9b3361

Ответ 1

Правильный способ перезапуска node состоит в том, чтобы закрыть его, используя либо API завершения работы, либо отправить сигнал TERM в процесс (например, с помощью kill $PID).

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

Если вы используете служебную оболочку, вы можете перезапустить node, передав ей команду restart: например, /etc/init.d/elasticsearch restart, но это всего лишь удобная оболочка для вышеперечисленного.

API restart отключен с версии 0.11, поскольку это было проблематично.

Ответ 3

Каждый раз, когда загорается node и/или появляется новый node, кластер перераспределяет осколки, что может быть нежелательно, когда вам просто нужно перезапустить node, поэтому вы можете использовать Перезапуск перезапуска:

  • сначала отключить выделение осколков:

    PUT/_cluster/settings  {       "переходный": {           "cluster.routing.allocation.enable": "none"      }   }

  • перезапустите node service elasticsearch restart

  • Разрешить распределение осколков:

    PUT/_cluster/settings {    "переходный": {        "cluster.routing.allocation.enable": "all"   } }

Подробнее об этом: Здесь