Udostępnij za pomocą


Klaster trybu failover i zawsze włączone grupy dostępności (SQL Server)

Dotyczy:programu SQL Server — tylko system Windows

Grupy dostępności Always On, rozwiązanie zapewniające wysoką dostępność oraz odzyskiwanie po awarii, wprowadzone w programie SQL Server 2012 (11.x), wymagają usługi Windows Server Failover Clustering (WSFC). Ponadto, mimo że zawsze włączone grupy dostępności nie są zależne od klastra trybu failover programu SQL Server, można użyć wystąpienia klastra trybu failover (FCI) do hostowania repliki dostępności dla grupy dostępności. Ważne jest, aby znać rolę każdej technologii klastrowania i wiedzieć, jakie zagadnienia są niezbędne podczas projektowania środowiska zawsze włączonych grup dostępności.

Notatka

Aby uzyskać informacje o pojęciach dotyczących zawsze włączonych grup dostępności, zobacz Co to jest zawsze włączona grupa dostępności?

Klaster trybu failover systemu Windows Server i grupy dostępności

Wdrażanie grup dostępności Always On wymaga klastra failover systemu Windows Server (WSFC). Aby można było włączyć dla Grup dostępności Always On, wystąpienie programu SQL Server musi znajdować się w węźle WSFC, a węzeł WSFC musi być online. Ponadto każda replika dostępności w obrębie danej grupy dostępności musi znajdować się w innym węźle tego samego klastra WSFC. Jedynym wyjątkiem jest to, że podczas migracji do innego klastra WSFC, grupa dostępności może tymczasowo znajdować się w dwóch klastrach jednocześnie.

Grupy dostępności Always On opierają się na klastrze przełączania awaryjnego systemu Windows Server (WSFC), aby monitorować i zarządzać bieżącymi rolami replik dostępności należących do danej grupy dostępności oraz określać, jak zdarzenie przełączenia awaryjnego wpływa na repliki dostępności. Grupa zasobów WSFC jest tworzona dla każdej utworzonej grupy dostępności. WSFC monitoruje tę grupę zasobów w celu oceny kondycji repliki podstawowej.

Kworum dla grup dostępności Always On opiera się na wszystkich węzłach klastra WSFC, niezależnie od tego, czy dany węzeł klastra hostuje jakiekolwiek repliki dostępności. W przeciwieństwie do mirroring bazy danych nie ma roli świadka w grupach dostępności Always On.

Ogólna kondycja usługi WSFC jest określana przez liczbę głosów kworum węzłów w klastrze. Jeśli WSFC przejdzie w tryb offline z powodu nieplanowanej awarii lub z powodu trwałej awarii sprzętu lub komunikacji, wymagana jest ręczna interwencja administracyjna. Administrator systemu Windows Server lub WSFC będzie musiał wymusić kworum, a następnie przywrócić zachowane węzły klastra do trybu online w konfiguracji nieodpornej na błędy.

Ważny

Klucze rejestru grup dostępności Always On są podkluczami WSFC. Jeśli usuniesz i ponownie utworzysz usługę WSFC, musisz wyłączyć i ponownie włączyć funkcję Zawsze włączone grupy dostępności w każdym wystąpieniu programu SQL Server, które hostuje replikę dostępności w oryginalnym programie WSFC.

Aby uzyskać informacje na temat uruchamiania programu SQL Server w węzłach WSFC i kworum WSFC, zobacz Klaster trybu failover systemu Windows Server z programem SQL Server.

Wystąpienia klastra trybu failover programu SQL Server (FCI) i grupy dostępności

Drugą warstwę przełączania awaryjnego można skonfigurować na poziomie instancji serwera, implementując SQL Server oraz instancję klastra przełączania awaryjnego razem z usługą WSFC. Wystąpienie autonomiczne programu SQL Server lub wystąpienie wystąpienia klastra trybu failover może hostować replikę dostępności. Tylko jeden partner FCI może hostować replikę dla określonej grupy dostępności. Gdy replika dostępności działa na instancji klastra przełączania awaryjnego (FCI), lista możliwych właścicieli grupy dostępności będzie zawierać tylko aktywny węzeł FCI.

Zawsze włączone grupy dostępności nie zależą od żadnej formy magazynu udostępnionego. Jeśli jednak używasz instancji klastra trybu failover programu SQL Server do hostowania jednej lub więcej replik dostępności, każda z tych instancji będzie wymagała wspólnej pamięci masowej zgodnie ze standardową instalacją instancji klastra trybu failover programu SQL Server.

Aby uzyskać więcej informacji na temat dodatkowych wymagań wstępnych, zobacz Wymagania wstępne, ograniczenia i zalecenia dotyczące zawsze włączonych grup dostępności (SQL Server).

Porównanie wystąpień klastra trybu failover i grup dostępności

Niezależnie od liczby węzłów w klastrze trybu failover, całe wystąpienie tego klastra zawiera pojedynczą replikę w grupie dostępności. W poniższej tabeli opisano różnice w pojęciach między węzłami w klastrze trybu failover i replikami w grupie dostępności.

Węzły w ramach klastra z funkcją przełączania awaryjnego (FCI) Repliki w grupie dostępności
używa WSFC Tak Tak
poziom ochrony Instancja Baza danych
typ magazynu Udostępniona Nieudostępniane

Mimo że repliki w grupie dostępności nie współużytkują magazynu, replika hostowana przez wystąpienie klastra trybu failover używa udostępnionego rozwiązania magazynu zgodnie z wymaganiami tego wystąpienia klastra trybu failover. Rozwiązanie magazynowe jest współużytkowane tylko przez węzły w ramach wystąpienia klastrowego trybu failover (FCI) i nie jest współdzielone między replikami grupy dostępności.
rozwiązania Storage Bezpośrednie dołączanie, sieć SAN, punkty instalacji, SMB Zależy od typu węzła
Drugorzędne z możliwością odczytu Nie* Tak
odpowiednie ustawienia zasad trybu przełączania awaryjnego Kworum WSFC

Specyficzne dla wystąpienia FCI

Ustawienia grupy dostępności**
Kworum WSFC

Ustawienia grupy dostępności
Przełączone zasoby awaryjne Serwer, wystąpienie i baza danych Tylko baza danych

*Podczas gdy synchroniczne repliki pomocnicze w grupie dostępności są zawsze uruchomione w odpowiednich wystąpieniach programu SQL Server, węzły pomocnicze w wystąpieniu klastra trybu failover rzeczywiście nie uruchomiły odpowiednich wystąpień programu SQL Server i dlatego nie są czytelne. W przypadku klastra trybu failover (FCI), węzeł pomocniczy uruchamia swoje wystąpienie programu SQL Server tylko wtedy, gdy własność grupy zasobów zostanie do niego przeniesiona podczas przełączenia awaryjnego FCI. Jednak w aktywnym węźle wystąpienia klastra trybu failover, gdy baza danych hostowana przez wystąpienie klastra trybu failover należy do grupy dostępności, baza danych jest czytelna, jeśli lokalna replika dostępności jest uruchomiona jako replika pomocnicza z możliwością odczytu.

**Ustawienia zasad trybu failover dla grupy dostępności mają zastosowanie do wszystkich replik, niezależnie od tego, czy są one hostowane w wystąpieniu autonomicznym, czy wystąpieniu wystąpienia wystąpienia klastra trybu failover.

Zagadnienia dotyczące hostowania repliki dostępności w klastrze trybu failover

Ważny

Jeśli planujesz hostować replikę dostępności w wystąpieniu klastra trybu failover programu SQL Server (FCI), upewnij się, że węzły hosta systemu Windows Server 2008 spełniają wymagania wstępne i ograniczenia dotyczące zawsze włączonych wystąpień klastra trybu failover (FCI). Aby uzyskać więcej informacji, zobacz Wymagania wstępne, Ograniczenia i Zalecenia dotyczące Always On Availability Groups (SQL Server).

Wystąpienia klastra trybu failover programu SQL Server (FCI) nie obsługują automatycznego trybu failover przez grupy dostępności, więc każda replika dostępności, którą hosty wystąpienia klastra trybu failover można skonfigurować tylko do ręcznego przejścia w tryb failover.

Może być konieczne skonfigurowanie usługi WSFC w celu uwzględnienia dysków udostępnionych, które nie są dostępne we wszystkich węzłach. Rozważmy na przykład usługę WSFC w dwóch centrach danych z trzema węzłami. Dwa węzły hostuje wystąpienie klastra trybu failover programu SQL Server w podstawowym centrum danych i ma dostęp do tych samych dysków udostępnionych. Trzeci węzeł hostuje autonomiczne wystąpienie programu SQL Server w innym centrum danych i nie ma dostępu do dysków udostępnionych z podstawowego centrum danych. Ta konfiguracja usługi WSFC obsługuje wdrażanie grupy dostępności, jeśli wystąpienie klastra trybu failover hostuje replikę podstawową i autonomiczne wystąpienie hostuje replikę pomocniczą.

Podczas wybierania wystąpienia klastra trybu failover do hostowania repliki dostępności dla danej grupy dostępności upewnij się, że tryb failover wystąpienia klastra trybu failover nie może potencjalnie spowodować, że pojedynczy węzeł WSFC będzie próbował hostować dwie repliki dostępności dla tej samej grupy dostępności.

Poniższy przykładowy scenariusz ilustruje, jak ta konfiguracja może prowadzić do problemów:

  • Konfigurujesz klaster WSFC z dwoma węzłami: NODE01 i NODE02.
  • Instalujesz wystąpienie klastra trybu failover programu SQL Server, fciInstance1na obydwu NODE01 i NODE02, gdzie NODE01 jest bieżącym właścicielem dla fciInstance1.
  • W programie NODE02zainstalujesz inne wystąpienie programu SQL Server, Instance3czyli wystąpienie autonomiczne.
  • Na NODE01włączasz fciInstance1 dla grup dostępności Always On. Na NODE02włączasz Instance3 dla grup dostępności Always On. Następnie należy skonfigurować grupę dostępności, dla której fciInstance1 hostuje replikę podstawową, a Instance3 hostuje replikę pomocniczą.
  • W pewnym momencie fciInstance1 staje się niedostępny w systemie NODE01, a usługa WSFC powoduje przejście w tryb failover fciInstance1 do NODE02elementu . Po przejściu w tryb failover fciInstance1 jest instancją Always On grupy dostępności pełniącą rolę podstawową na NODE02. Jednak Instance3 teraz znajduje się w tym samym węźle WSFC co fciInstance1. Narusza to ograniczenie grup dostępności Always On.

Aby rozwiązać problem przedstawiony w tym scenariuszu, wystąpienie Instance3autonomiczne musi znajdować się w innym węźle w tym samym WSFC co NODE01 i NODE02.

Aby uzyskać więcej informacji o wystąpieniach klastra trybu failover programu SQL Server, zobacz Always On failover cluster instances (SQL Server).

Ograniczenia dotyczące korzystania z menedżera WSFC z grupami dostępności

Nie używaj Menedżera klastra trybu failover do manipulowania grupami dostępności. Przykład:

  • Nie dodawaj ani nie usuwaj zasobów w klastrowanej usłudze (grupie zasobów) dla grupy dostępności.

  • Nie zmieniaj żadnych właściwości grupy dostępności, takich jak możliwe właścicieli i preferowanych właścicieli. Te właściwości są ustawiane automatycznie przez grupę dostępności.

  • Nie używaj Menedżera klastra trybu failover do przenoszenia grup dostępności do różnych węzłów ani grup dostępności w tryb failover. Menedżer klastra trybu failover nie zna stanu synchronizacji replik dostępności i może to prowadzić do wydłużenia przestoju. Należy użyć Transact-SQL lub SQL Server Management Studio.

Ostrzeżenie

Użycie Menedżera klastra trybu failover w celu przeniesienia wystąpienia klastra trybu failover hostujących grupę dostępności do węzła, który już hostuje replikę tej samej grupy dostępności, może spowodować utratę repliki grupy dostępności, uniemożliwiając jej przełączenie w tryb online w węźle docelowym. Jeden węzeł klastra trybu failover nie może hostować więcej niż jednej repliki dla tej samej grupy dostępności. Aby uzyskać więcej informacji na temat tego, jak to się stanie i jak odzyskać, zobacz blog Replica nieoczekiwanie porzucony w grupie dostępności.