Эластичный поиск оптимального количества мастеров

В настоящее время мы имеем кластер из 6 данных node и один не-данные node. Из них два в настоящее время имеют право на участие в конкурсе. Этот кластер находится на EC2.

Какое оптимальное количество мастер-узлов, или есть причина для дискриминации вообще?

Ответ 1

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

Также может быть полезно иметь нечетное количество узлов, удовлетворяющих основным требованиям, и установить discovery.zen.minimum_master_nodes на более чем половину количества основных подходящих узлов в вашем кластере. Это должно значительно снизить вероятность того, что ваш кластер переходит в состояние расщепленного мозга.

Например, для кластера с 3 узлами, имеющими мастер-доступ, вы можете установить discovery.zen.minimum_master_nodes в 2.

Ответ 2

Как описано в Elasticsearch Pre-Flight Checklist, вы можете установить discovery.zen.minimum_master_nodes не менее (N/2)+1 на кластеры с узлами N > 2.

Где N - количество допустимых основных узлов.

Что означает в вашем случае discovery.zen.minimum_master_nodes: 4 подходящие основные узлы - i.e (6/2)+1

Ответ 3

minimum_master_nodes (кворум) следует рассчитывать на основе количества главных узлов, а не узлов данных, предложение Uyi было бы правильным тогда и только тогда, когда все ваши узлы данных также являются основными доступными узлами.

У вас никогда не должно быть двух главных узлов из-за потенциального присутствия в split-brain, мое предложение было бы, сделайте не менее 3 основных узлов узла, и установите минимальный мастер node на 2.

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