Opis kworum klastra i puli

Dotyczy: Azure Stack HCI, wersje 22H2 i 21H2; Windows Server 2022, Windows Server

Klaster trybu failover systemu Windows Server zapewnia wysoką dostępność obciążeń uruchomionych w klastrach usługi Azure Stack HCI i Windows Server. Te zasoby są uważane za wysoce dostępne, jeśli węzły, które hostują zasoby, są w górę; jednak klaster zwykle wymaga więcej niż połowy węzłów do uruchomienia, co jest nazywane kworum.

Kworum ma na celu zapobieganie scenariuszom podziału mózgu , które mogą wystąpić, gdy istnieje partycja w sieci i podzbiorów węzłów nie może komunikować się ze sobą. Może to spowodować, że oba podzestawy węzłów będą próbowały posiadać obciążenie i zapisać na tym samym dysku, co może prowadzić do wielu problemów. Jednak zapobiega to koncepcji kworum klastra trybu failover, co wymusza kontynuowanie działania tylko jednej z tych grup węzłów, więc tylko jedna z tych grup pozostaje w trybie online.

Kworum określa liczbę awarii, które klaster może utrzymać, pozostając w trybie online. Kworum jest przeznaczony do obsługi scenariusza, gdy występuje problem z komunikacją między podzbiorami węzłów klastra, dzięki czemu wiele serwerów nie próbuje jednocześnie hostować grupy zasobów i zapisywać na tym samym dysku jednocześnie. Dzięki temu pojęciu kworum klaster wymusza zatrzymanie usługi klastra w jednym z podzbiorów węzłów w celu zapewnienia, że istnieje tylko jeden prawdziwy właściciel określonej grupy zasobów. Węzły, które zostały zatrzymane, mogą ponownie komunikować się z główną grupą węzłów i automatycznie ponownie dołączyć klaster i uruchomić usługę klastra.

W usługach Azure Stack HCI i Windows Server 2019 istnieją dwa składniki systemu, które mają własne mechanizmy kworum:

  • Kworum klastra: działa to na poziomie klastra (tj. można utracić węzły i zatrzymać klaster)
  • Kworum puli: działa to na poziomie puli (tj. można utracić węzły i dyski i zachować pulę). Pule magazynów zostały zaprojektowane tak, aby były używane zarówno w scenariuszach klastrowanych, jak i nieklasowanych, dlatego mają inny mechanizm kworum.

Omówienie kworum klastra

Poniższa tabela zawiera omówienie wyników kworum klastra na scenariusz:

Węzły serwera Może przetrwać awarię jednego węzła serwera Może przetrwać awarię jednego węzła serwera, a następnie inny Może przetrwać dwa jednoczesne awarie węzła serwera
2 50/50 Nie Nie
2 + monitor Tak Nie Nie
3 Tak 50/50 Nie
3 + monitor Tak Tak Nie
4 Tak Tak 50/50
4 + monitor Tak Tak Tak
5 i nowsze Tak Tak Tak

Zalecenia dotyczące kworum klastra

  • Jeśli masz dwa węzły, wymagany jest monitor.
  • Jeśli masz trzy lub cztery węzły, monitor jest zdecydowanie zalecany.
  • Jeśli masz pięć węzłów lub więcej, monitor nie jest potrzebny i nie zapewnia dodatkowej odporności.
  • Jeśli masz dostęp do Internetu, użyj monitora w chmurze.
  • Jeśli jesteś w środowisku IT z innymi maszynami i udziałami plików, użyj monitora udziału plików.

Jak działa kworum klastra

Gdy węzły kończą się niepowodzeniem lub gdy część podzestawu węzłów utraci kontakt z innym podzbiorem, węzły ocalałych muszą sprawdzić, czy stanowią większość klastra, aby pozostać w trybie online. Jeśli nie będą mogli tego zweryfikować, przełączą się w tryb offline.

Jednak koncepcja większości działa prawidłowo tylko wtedy, gdy całkowita liczba węzłów w klastrze jest nieparzysta (na przykład trzy węzły w klastrze z pięcioma węzłami). Więc co z klastrami z parzystą liczbą węzłów (na przykład z czterema klastrami węzłów)?

Istnieją dwa sposoby, w jaki klaster może sprawić, że całkowita liczba głosów będzie nieparzysta:

  1. Po pierwsze, może przejść w górę , dodając świadek z dodatkowym głosowaniem. Wymaga to skonfigurowania użytkownika.
  2. Może też przejść w dół , zerując jeden pechowy głos węzła (dzieje się automatycznie zgodnie z potrzebami).

Za każdym razem, gdy węzły ocalałych pomyślnie sprawdzają, że są one większością, definicja większości jest aktualizowana tak, aby należeć tylko do ocalałych. Dzięki temu klaster może utracić jeden węzeł, a następnie inny, a następnie tak dalej. Ta koncepcja całkowitej liczby głosów dostosowujących się po kolejnych niepowodzeniach jest nazywana dynamicznym kworum.

Monitor dynamiczny

Dynamiczny świadek przełącza głos świadka, aby upewnić się, że całkowita liczba głosów jest dziwna. Jeśli istnieje nieparzysta liczba głosów, świadek nie ma głosu. Jeśli istnieje parzysta liczba głosów, świadek ma głos. Monitor dynamiczny znacznie zmniejsza ryzyko awarii klastra z powodu awarii monitora. Klaster decyduje, czy używać głosu monitora na podstawie liczby węzłów głosowania, które są dostępne w klastrze.

Kworum dynamiczne działa z dynamicznym monitorem w sposób opisany poniżej.

Zachowanie dynamicznego kworum

  • Jeśli masz parzystą liczbę węzłów i nie masz monitora, jeden węzeł otrzymuje zerowane głosy. Na przykład tylko trzy z czterech węzłów otrzymują głosy, więc łączna liczba głosów wynosi trzy, a dwa osoby ocalałych z głosami są uważane za większość.
  • Jeśli masz nieparzystą liczbę węzłów i nie masz monitora, wszyscy otrzymują głosy.
  • Jeśli masz parzystą liczbę węzłów i monitora, głosy monitora, więc suma jest nieparzysta.
  • Jeśli masz nieparzystą liczbę węzłów i monitora, monitor nie głosuje.

Dynamiczne kworum umożliwia dynamiczne przypisywanie głosu do węzła w celu uniknięcia utraty większości głosów i umożliwienia klastrowi uruchamiania z jednym węzłem (nazywanym ostatnią osobą stojącą). Weźmy przykładowy klaster z czterema węzłami. Załóżmy, że kworum wymaga 3 głosów.

W takim przypadku klaster zniknąłby w przypadku utraty dwóch węzłów.

Diagram przedstawiający cztery węzły klastra, z których każdy otrzymuje głos.

Jednak dynamiczne kworum uniemożliwia to zdarzenie. Łączna liczba głosów wymaganych do kworum jest teraz określana na podstawie liczby dostępnych węzłów. Dlatego w przypadku dynamicznego kworum klaster pozostaje w górę, nawet jeśli utracisz trzy węzły.

Diagram przedstawiający cztery węzły klastra, z węzłami, które kończą się niepowodzeniem jeden naraz, oraz liczbę wymaganych głosów dostosowujących się po każdym niepowodzeniu.

Powyższy scenariusz dotyczy klastra ogólnego, który nie ma Bezpośrednie miejsca do magazynowania włączone. Jednak po włączeniu Bezpośrednie miejsca do magazynowania klaster może obsługiwać tylko dwa błędy węzłów. Wyjaśniono więcej w sekcji kworum puli.

Przykłady

Dwa węzły bez monitora

Głosowanie jednego węzła jest zerowane, więc większość głosów jest określana z całkowitej liczby 1 głosów. Jeśli węzeł bez głosowania zostanie nieoczekiwanie wyłączony, ocalały ma 1/1, a klaster przetrwa. Jeśli węzeł głosowania ulegnie nieoczekiwanie awarii, ocalały ma wartość 0/1, a klaster ulegnie awarii. Jeśli węzeł głosowania jest bezpiecznie wyłączony, głosowanie zostanie przeniesione do innego węzła, a klaster przetrwa. Dlatego ważne jest skonfigurowanie monitora.

Kworum wyjaśniono w przypadku dwóch węzłów bez monitora.

  • Może przetrwać jedną awarię serwera: pięćdziesiąt procent szans.
  • Może przetrwać jedną awarię serwera, a następnie drugą: Nie.
  • Może przetrwać dwa błędy serwera jednocześnie: Nie.

Dwa węzły z monitorem

Oba węzły głosują, plus głosy świadków, więc większość jest określana z 3 głosów. Jeśli którykolwiek z węzłów ulegnie awarii, ocalały ma wartość 2/3, a klaster przetrwa.

Kworum wyjaśniono w przypadku dwóch węzłów z monitorem.

  • Może przetrwać jedną awarię serwera: Tak.
  • Może przetrwać jedną awarię serwera, a następnie drugą: Nie.
  • Może przetrwać dwa błędy serwera jednocześnie: Nie.

Trzy węzły bez monitora

Wszystkie węzły głosują, więc większość jest określana w sumie 3 głosy. Jeśli jakikolwiek węzeł ulegnie awarii, osoby, które przeżyły, są 2/3, a klaster przetrwa. Klaster staje się dwoma węzłami bez monitora — w tym momencie jesteś w scenariuszu 1.

Kworum wyjaśniono w przypadku trzech węzłów bez monitora.

  • Może przetrwać jedną awarię serwera: Tak.
  • Może przetrwać jedną awarię serwera, a następnie drugą: Pięćdziesiąt procent szans.
  • Może przetrwać dwa błędy serwera jednocześnie: Nie.

Trzy węzły z monitorem

Wszystkie węzły głosują, więc monitor początkowo nie głosuje. Większość jest określana w sumie 3 głosów. Po jednej awarii klaster ma dwa węzły z monitorem — który jest z powrotem do scenariusza 2. Tak więc teraz dwa węzły i głos monitora.

Kworum wyjaśniono w przypadku trzech węzłów z monitorem.

  • Może przetrwać jedną awarię serwera: Tak.
  • Może przetrwać jedną awarię serwera, a następnie drugą: Tak.
  • Może przetrwać dwa błędy serwera jednocześnie: Nie.

Cztery węzły bez monitora

Głosowanie jednego węzła jest zerowe, więc większość jest określana z 3 głosów. Po jednej awarii klaster staje się trzema węzłami i znajdujesz się w scenariuszu 3.

Kworum wyjaśniono w przypadku czterech węzłów bez monitora.

  • Może przetrwać jedną awarię serwera: Tak.
  • Może przetrwać jedną awarię serwera, a następnie drugą: Tak.
  • Może przetrwać dwa błędy serwera jednocześnie: Pięćdziesiąt procent szans.

Cztery węzły z monitorem

Wszystkie węzły głosuje i głosy świadków, więc większość jest określana z łącznie 5 głosów. Po jednym niepowodzeniu jesteś w scenariuszu 4. Po dwóch równoczesnych awariach należy przejść do scenariusza 2.

Kworum wyjaśniono w przypadku czterech węzłów z monitorem.

  • Może przetrwać jedną awarię serwera: Tak.
  • Może przetrwać jedną awarię serwera, a następnie drugą: Tak.
  • Może przetrwać dwa błędy serwera jednocześnie: Tak.

Pięć węzłów i poza nią

Wszystkie węzły głosują lub wszystkie, ale jedno głosowanie, cokolwiek sprawia, że suma jest dziwna. Bezpośrednie miejsca do magazynowania nie może obsłużyć więcej niż dwóch węzłów w dół, więc w tym momencie nie jest potrzebny ani przydatny monitor.

Kworum wyjaśniono w przypadku pięciu węzłów i poza nią.

  • Może przetrwać jedną awarię serwera: Tak.
  • Może przetrwać jedną awarię serwera, a następnie drugą: Tak.
  • Może przetrwać dwa błędy serwera jednocześnie: Tak.

Teraz, gdy rozumiemy, jak działa kworum, przyjrzyjmy się typom świadków kworum.

Typy monitorów kworum

Klaster trybu failover obsługuje trzy typy świadków kworum:

  • Monitor w chmurze — usługa Blob Storage na platformie Azure dostępna dla wszystkich węzłów klastra. Przechowuje informacje klastrowania w pliku witness.log, ale nie przechowuje kopii bazy danych klastra.
  • Monitor udziału plików — udział plików SMB skonfigurowany na serwerze plików z systemem Windows Server. Przechowuje informacje klastrowania w pliku witness.log, ale nie przechowuje kopii bazy danych klastra.
  • Monitor dysku — mały dysk klastrowany, który znajduje się w grupie Magazyn dostępny w klastrze. Ten dysk jest wysoce dostępny i może przejść w tryb failover między węzłami. Zawiera kopię bazy danych klastra. Monitor dysku nie jest obsługiwany w przypadku Bezpośrednie miejsca do magazynowania.

Omówienie kworum puli

Omówiliśmy kworum klastra, które działa na poziomie klastra. Teraz przyjrzyjmy się kworum puli, które działa na poziomie puli (tj. możesz utracić węzły i dyski i zachować pulę). Pule magazynów zostały zaprojektowane tak, aby były używane zarówno w scenariuszach klastrowanych, jak i nieklasterowanych, dlatego mają inny mechanizm kworum.

Poniższa tabela zawiera omówienie wyników kworum puli na scenariusz:

Węzły serwera Może przetrwać awarię jednego węzła serwera Może przetrwać jedną awarię węzła serwera, a następnie inną Może przetrwać dwie jednoczesne awarie węzła serwera
2 Tak Nie Nie
2 + Świadek Tak Nie Nie
3 Tak Nie Nie
3 + świadek Tak Nie Nie
4 Tak Nie Nie
4 + świadek Tak Tak Tak
5 i nowsze Tak Tak Tak

Jak działa kworum puli

Gdy dyski kończą się niepowodzeniem lub gdy jakiś podzbiór dysków traci kontakt z innym podzbiorem, przechowywane dyski hostujące metadane muszą sprawdzić, czy stanowią one większość puli, aby pozostać w trybie online. Jeśli nie będą mogli tego zweryfikować, przejdzie do trybu offline. Pula jest jednostką, która przechodzi w tryb offline lub pozostaje w trybie online na podstawie tego, czy ma wystarczającą ilość dysków dla kworum (50% + 1). Baza danych klastra może mieć wartość +1, o ile sam klaster jest w stanie spoczynku.

Jednak kworum puli działa inaczej niż kworum klastra w następujący sposób:

  • Pula wybiera podzbiór dysków na węzeł do hostowania metadanych
  • Pula używa bazy danych klastra do zerwania więzi
  • Pula nie ma dynamicznego kworum
  • Pula nie implementuje własnej wersji usuwania głosu

Przykłady

Cztery węzły z układem symetrycznym

Każdy z 16 dysków ma jeden głos, a węzeł dwa ma również jedno głosowanie (ponieważ jest właścicielem zasobu puli). Większość jest określana w sumie 16 głosów. Jeśli węzły trzy i cztery zejdą w dół, zachowany podzbiór ma 8 dysków i właściciela zasobu puli, czyli 9/16 głosów. Tak więc basen przetrwa.

Kworum puli 1.

  • Może przetrwać jedną awarię serwera: Tak.
  • Może przetrwać jedną awarię serwera, a następnie drugą: Tak.
  • Może przetrwać dwa błędy serwera jednocześnie: Tak.

Cztery węzły z symetrycznym układem i awarią dysku

Każdy z 16 dysków ma jeden głos, a węzeł 2 ma również jedno głosowanie (ponieważ jest właścicielem zasobu puli). Większość jest określana w sumie 16 głosów. Po pierwsze, dysk 7 spada. Jeśli węzły trzy i cztery zejdą w dół, zachowany podzbiór ma 7 dysków i właściciela zasobu puli, czyli 8/16 głosów. Tak więc pula nie ma większości i spada.

Kworum puli 2.

  • Może przetrwać jedną awarię serwera: Tak.
  • Może przetrwać jedną awarię serwera, a następnie drugą: Nie.
  • Może przetrwać dwa błędy serwera jednocześnie: Nie.

Zalecenia dotyczące kworum puli

  • Upewnij się, że każdy węzeł w klastrze jest symetryczny (każdy węzeł ma taką samą liczbę dysków)
  • Włącz dublowanie trzystopniowe lub parzystość podwójną, aby można było tolerować awarie dwóch węzłów i zachować dyski wirtualne w trybie online.
  • Jeśli nie działa więcej niż dwa węzły lub dwa węzły, a dysk w innym węźle nie działa, woluminy mogą nie mieć dostępu do wszystkich trzech kopii danych, a tym samym zostać przełączony w tryb offline i być niedostępny. Zaleca się przywrócenie serwerów lub szybkie zastąpienie dysków, aby zapewnić największą odporność na wszystkie dane w woluminie.

Następne kroki