Cześć Kacper Wojcik,
Konfiguracja parametru cluster.initial_master_nodes nie zapobiegnie sytuacji "split-brain" podczas partycji sieciowej. W Elasticsearch 7.0 i nowszych system ten jest używany wyłącznie do uruchamiania stanu klastra po raz pierwszy. Definiujesz go w pliku konfiguracyjnym, zazwyczaj znajdującym się w /etc/elasticsearch/elasticsearch.yml na systemach Linux. Po pomyślnym utworzeniu klastra Elasticsearch całkowicie ignoruje ten parametr. Próby użycia go do zarządzania trwającymi wyborami węzłów to częste błędne przekonanie przejęte z starszych wersji oprogramowania.
Aby zapobiec rozpadowi klastra na dwa niezależne węzły główne, musisz zaprojektować środowisko tak, aby wspierało dynamiczną konfigurację głosowania Elasticsearch. System automatycznie zapobiega split-brain, wymagając ścisłej większości kworum do wprowadzenia zmian stanu klastra. Musisz wdrożyć nieparzystą liczbę węzłów kwalifikujących się do mastera, co zazwyczaj oznacza zapewnienie trzech dedykowanych węzłów. Podczas podziału sieci partycja zawierająca co najmniej dwa węzły będzie utrzymywała kworum i kontynuowała działalność, podczas gdy izolowany trzeci węzeł natychmiast ustąpi z pracy. Ten zautomatyzowany proces wyborczy zapewnia spójność danych bez konieczności ręcznych zmian konfiguracji podczas przerwy.
Mam nadzieję, że ta odpowiedź przyniosła Ci przydatne informacje. Jeśli tak, kliknij "zaakceptuj odpowiedź". Jeśli masz pytania, śmiało zostaw komentarz.
VPHAN