| Termin | Definicja |
|---|---|
| Manual failover | Manual failover to ręczne przełączenie roli podstawowej na inną replikę grupy dostępności, wykonywane przez administratora. Na czym polega ręczne przełączenie roli podstawowejManual failover, czyli ręczne przełączenie, jest operacją administracyjną stosowaną w grupie dostępności Always On Availability Groups w systemie Microsoft SQL Server. Polega na zmianie repliki pełniącej rolę podstawową na inną replikę należącą do tej samej grupy dostępności. Po prawidłowym wykonaniu operacji nowa replika podstawowa obsługuje zapis danych, a dotychczasowa replika podstawowa przechodzi do roli pomocniczej. Przełączenie dotyczy grupy dostępności, a nie pojedynczej tabeli, bazy lub procesu działającego niezależnie od tej grupy. Ręczny failover różni się od automatycznego przełączenia awaryjnego tym, że jest inicjowany świadomie przez administratora. Decyzja może wynikać z planowanych prac serwisowych, konieczności odciążenia określonego węzła, testu procedury odtworzeniowej albo potrzeby kontrolowanego przeniesienia obsługi na inną instancję SQL Server. Sama operacja nie naprawia uszkodzeń danych, problemów z siecią ani błędów konfiguracji. Zmienia natomiast właściciela roli podstawowej zgodnie ze stanem replik i zasadami działania grupy dostępności. Warunki bezpiecznego przełączenia w Always OnBezpieczny ręczny failover wymaga, aby docelowa replika pomocnicza była zsynchronizowana z repliką podstawową. W trybie synchronicznego zatwierdzania oznacza to, że transakcje zatwierdzone na replice podstawowej zostały dostarczone i zapisane na odpowiedniej replice pomocniczej. Jeżeli docelowa replika nie ma aktualnego stanu, przełączenie może wiązać się z utratą nieprzekazanych zmian albo może zostać odrzucone przez mechanizmy SQL Server. Dlatego przed operacją sprawdza się stan synchronizacji baz, rolę każdej repliki, tryb dostępności oraz kondycję połączeń między instancjami. W SQL Server przełączenie bez utraty danych jest związane z wymaganiami dotyczącymi synchronizacji i gotowości repliki docelowej. Administrator powinien również upewnić się, że obie repliki należą do tej samej grupy dostępności, a docelowa instancja może przejąć rolę podstawową. Istotny jest także dostęp aplikacji do listenera grupy dostępności. Listener zapewnia stały punkt połączenia dla klientów, ale po zmianie roli może być potrzebne ponowne nawiązanie połączeń przez aplikacje. Otwarte sesje, aktywne transakcje i zapytania korzystające z poprzedniej repliki mogą zostać przerwane. Przebieg operacji i kontrola stanu po zmianieRęczny failover można wykonać z poziomu SQL Server Management Studio, Transact-SQL albo narzędzi administracyjnych SQL Server. W przypadku Transact-SQL operacja jest wykonywana na replice, która ma przejąć rolę podstawową, przy użyciu instrukcji Po przełączeniu należy zweryfikować, która instancja pełni rolę PRIMARY, a która SECONDARY, oraz czy wszystkie bazy grupy dostępności są ONLINE i SYNCHRONIZED albo mają inny stan zgodny z założonym trybem pracy. Trzeba także sprawdzić, czy listener wskazuje właściwy węzeł, czy aplikacje mogą ponownie nawiązać połączenia i czy nie występują błędy w dzienniku SQL Server. Kontrola powinna obejmować również opóźnienie transportu i redo, stan endpointów Always On oraz ewentualne zaległe transakcje. Dopiero te informacje pozwalają ocenić, czy operacja zakończyła się funkcjonalnie, a nie tylko formalnie. Ręczny failover a diagnostyka problemów z dostępnościąJeżeli przełączenie nie jest dostępne, przyczyną może być brak synchronizacji, niedostępność repliki pomocniczej, rozłączony endpoint, błąd klastra Windows Server Failover Clustering albo niezgodność konfiguracji grupy dostępności. Analiza powinna rozdzielać problem samej grupy Always On od problemu instancji SQL Server, systemu operacyjnego, magazynu danych i komunikacji sieciowej. Szczególne znaczenie ma ustalenie, czy bazy nadal przyjmują zmiany, czy są zatrzymane w stanie NOT SYNCHRONIZING, czy wystąpiły błędy odczytu lub zapisu oraz czy węzeł uczestniczy prawidłowo w klastrze. W środowisku, w którym występuje ręczne przełączanie roli podstawowej, diagnostyka laptopa lub komputera PC może dotyczyć wyłącznie stacji używanej do zarządzania: jej połączenia z siecią, klienta SQL Server, dostępu do konsoli administracyjnej albo błędów systemowych utrudniających wykonanie polecenia. Sam mechanizm Always On Availability Groups jest funkcją serwerową SQL Server i wymaga analizy konfiguracji instancji, grupy dostępności oraz klastra. Przed podjęciem kolejnego failoveru należy zachować informacje o rolach replik, stanie synchronizacji, komunikatach SQL Server i czasie wystąpienia problemu, ponieważ pochopne przełączanie może utrudnić ustalenie pierwotnej przyczyny awarii. |