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

Что отличается между шлюзом Master node и другим шлюзом node в elasticsearch? Оба они хранят метаданные, не так ли?

Чем отличается между шлюзом Master node и другим шлюзом node в elasticsearch? Оба они хранят метаданные, не так ли? Мета-данные, поиск elasticsearch, какую информацию мы можем получить от него?

4b9b3361

Ответ 1

Мастер node совпадает с любым другим node в кластере, за исключением того, что он был избран мастером.

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

Задачи, выполняемые мастером, являются легкими. Любые задачи, связанные с данными (например, индексирование, поиск и т.д.), Не требуют привлечения мастера. Если вы решите запустить мастер как не-данные node (т.е. node, который действует как ведущий и как маршрутизатор, но не содержит каких-либо данных), тогда мастер может успешно работать в маленьком поле.

A node разрешено стать мастером, если он помечен как "подходящий мастер" (по умолчанию все узлы). Если текущий мастер спускается, новый кластер будет выбран кластером.

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

Например, если у вас есть 3 узла, все из которых являются подходящими для мастера, и установите minimum_master_nodes на 1, а затем, если третий node отделен от двух других, он все еще видит один доступный для мастера node (сам) и думает, что он может сформировать кластер сам по себе.

Вместо этого установите minimum_master_nodes в 2 в этом случае (количество узлов /2 + 1), а затем, если третий node отделится, он не увидит достаточного количества основных узлов и, следовательно, не образует кластер само по себе. Он будет продолжать пытаться присоединиться к исходному кластеру.

В то время как Elasticsearch очень тяжело выбирает правильные значения по умолчанию, minimum_master_nodes невозможно догадаться, так как он не знает, сколько узлов вы собираетесь запускать. Это то, что вы должны настроить самостоятельно.