Sqlserver
 sql >> Baza danych >  >> RDS >> Sqlserver

Konfigurowanie grup dostępności AlwaysOn na serwerze SQL Server

WPROWADZENIE

W tym dokumencie opisano kroki i dodatkowe informacje niezbędne do skonfigurowania grup dostępności AlwaysOn dla HA i DR na MS SQL Server. Grupy dostępności AlwaysOn to rozwiązanie HA-DR wprowadzone w SQL Server 2012, zaprojektowane jako połączenie przesyłania dzienników transakcji i dublowania bazy danych.

AlwaysOn AG implementuje HA na poziomie bazy danych, mimo że węzły obsługujące instancje SQL i uczestniczące w konfiguracji są częścią klastra Windows Failover. Każdy węzeł nazywamy repliką dostępności.

W typowej konfiguracji występuje replika podstawowa i co najmniej jedna replika dodatkowa tylko do odczytu. Grupa baz danych skonfigurowana w grupie dostępności mogą zostać przełączone na alternatywną replikę razem.

WYMAGANIA WSTĘPNE

1.1 Wymagania wstępne

1.1.1 Co najmniej dwa serwery z systemem Windows 2012 lub nowszym (Enterprise Edition) z najnowszymi łatkami
1.1.2 Konta usług dla instancji SQL Server
1.1.3 Udział pliku na zaufanym serwerze innym niż serwery uczestniczące w klastrze
1.1.4 Nośnik instalacyjny SQL 2012 lub nowszy wraz z dodatkami Service Pack
1.1.5 Dwa dodatkowe adresy IP oprócz publicznych adresów IP uczestniczących serwerów
1.1.6 DBA, administrator Windows AD, administrator sieci

PODSUMOWANIE

1.2 Procedura konfiguracji obejmuje następujące etapy:

1.2.1 Włącz klastrowanie na wszystkich węzłach
1.2.2 Zweryfikuj węzły pod kątem klastrowania
1.2.3 Utwórz klaster
1.2.4 Konfiguracja Kworum
1.2.5 Zainstaluj SQL Server na wszystkich węzłach
1.2.6 Włącz grupy dostępności AlwaysOn we wszystkich instancjach
1.2.7 Utwórz grupę dostępności
1.2.8 Dodaj odbiornik AG

PROCEDURA

1.3 Włącz klastrowanie we wszystkich węzłach

1.3.1 Otwórz Menedżera serwerów w oknach

1.3.2 Uruchom Dodaj role i funkcje Kreator

Windows Failover Clustering to funkcja systemu Windows. Możesz to włączyć za pomocą kreatora.

1.3.3 Zaakceptuj ustawienia domyślne, aż dojdziesz do etapu funkcji.

Na tym etapie musimy wybrać serwer do konfiguracji. W tym scenariuszu mamy do czynienia z serwerem lokalnym (patrz Rysunek 4).

Ukryliśmy nazwy serwerów ze względów bezpieczeństwa, ale zobaczysz je w dolnym okienku (Rysunek 4).

W tej chwili nie planujemy konfigurowania roli. Dlatego klikamy DALEJ i podążamy, aż dojdziemy do funkcji (Rysunek 6).

Zaznacz pole wyboru dla klastra pracy awaryjnej. Następnie kliknij ZAINSTALUJ.

1.3.4 Wybierz klaster pracy awaryjnej na etapie Funkcje

1.3.5 Po zakończeniu zamknij kreatora

1.4 Sprawdź poprawność serwerów pod kątem klastrowania

Włączyliśmy klastrowanie, wykonując czynności opisane w poprzedniej sekcji. Musimy powtórzyć te kroki dla każdego serwera, który powinien brać udział w klastrze pracy awaryjnej.

System Windows obsługuje obecnie do 64 węzłów w klastrze pracy awaryjnej. Windows 2019 zwiększa użyteczność tej dużej liczby, udostępniając funkcję znaną jako zestawy klastrów. Weryfikacja potencjalnych serwerów członkowskich klastra oznacza sprawdzenie, czy wszystkie zostały odpowiednio skonfigurowane do udziału w klastrze.

1.4.1 Otwórz Menedżera klastra pracy awaryjnej

1.4.2 Otwórz Weryfikuj konfigurację Kreator po prawej.

1.4.3 Na Wybierz serwery etap, określ wszystkie serwery przeznaczone dla klastra. Po raz kolejny ukryliśmy wybrane serwery.

Z tego ekranu możemy dodać wszystkie uczestniczące serwery.

1.4.4 Zaakceptuj domyślną opcję „Uruchom wszystkie testy”.

1.4.5 Zignoruj ​​ostrzeżenia związane z dyskiem. Nie potrzebujesz dysków współdzielonych do konfiguracji AlwaysOn.

1.4.6 Ukończ kreatora

W tym momencie możesz przejrzeć raport z walidacji. Jeśli wystąpią jakiekolwiek problemy, możesz je poprawić przed kontynuowaniem. Niektóre ostrzeżenia można zignorować, ale należy sprawdzić ich znaczenie.

1.5 Utwórz klaster

1.5.1 W Menedżerze klastra pracy awaryjnej uruchom Utwórz klaster Kreator.

1.5.2 Dodaj wszystkie serwery przeznaczone do klastrowania.

Ten ekran przypomina Weryfikację konfiguracji Ekran . Możemy również dodać wszystkie wymagane węzły jednocześnie.

Aby dodać serwery, kliknij Przeglądaj przycisk.

1.5.3 Podaj żądaną nazwę klastra i powiązany adres IP

Ta nazwa pozwala utworzyć obiekt nazwy komputera w domenie. W związku z tym potrzebne są uprawnienia do tworzenia obiektów komputerowych dla konta wykonującego instalację. Należy również pamiętać, że wszystkie adresy IP używane dla wszystkich członków klastra muszą znajdować się w tej samej podsieci, z wyjątkiem przypadku tworzenia klastra z wieloma lokalizacjami.

Podczas tworzenia klastra pracy awaryjnej dla grup dostępności AlwaysOn nie musimy dodawać dysków do klastra. Dlatego pozostaw tę opcję niezaznaczoną (patrz rysunek 19).

1.5.4 Ukończ Utwórz klaster Kreator

1.6 Skonfiguruj Kworum

Kworum określa liczbę członków klastra, które muszą być w trybie online, aby określić dostępność klastra. Microsoft dopuszcza różne opcje kworum. Niektóre z nich pozwalają, aby dyski lub udziały plików były członkami klastra.

Zazwyczaj powinna to być nieparzysta liczba członków. Jednak niektóre konfiguracje pozwalają nam używać liczby parzystej i usuwać prawa głosu z jednego węzła. Świadek to obiekt niebędący serwerem, którego można użyć do uzupełnienia nieparzystej liczby wyborców. Świadek udostępniania plików ma pierwszeństwo w konfiguracji AlwaysOn, ponieważ w konfiguracji AlwaysOn nie ma dysku współdzielonego.

1.6.1 Utwórz udział na niezawodnym serwerze, który nie należy do klastra. Następnie przyznaj pełne uprawnienia do Obiektu nazwy komputera o tej samej nazwie co Twój klaster (krok 4.3.3).

1.6.2 Kliknij prawym przyciskiem myszy właśnie utworzony klaster i wybierz Więcej działań> Skonfiguruj ustawienia kworum klastra.

1.6.3 Wybierz opcję konfiguracji świadka kworum

1.6.4 Wybierz opcję konfiguracji wskaźnika udostępniania plików

1.6.5 Wybierz udział pliku (patrz 4.4.1):

1.6.6 Zakończ konfigurację świadka

1.7 Zainstaluj serwer SQL

Zainstaluj pojedyncze wystąpienia programu SQL Server na wszystkich serwerach uczestniczących w klastrze. Możliwe jest pomyślne zakończenie tej konfiguracji, nawet jeśli poprzednia konfiguracja serwera SQL miała miejsce przed utworzeniem klastra.

Zwróć uwagę, że instancje SQL Server nie zgrupowane w konfiguracji AlwaysOn. Konfigurujesz i zarządzasz HA na poziomie bazy danych dla grup baz danych. Zapoznaj się z odpowiednią dokumentacją dotyczącą instalacji serwera SQL.

1.8 Włącz zawsze włączone grupy dostępności

1.8.1 Otwórz Menedżera konfiguracji serwera SQL na każdym węźle

1.8.2 Kliknij prawym przyciskiem myszy usługę SQL Server. Otwórz kartę Zawsze włączona wysoka dostępność.

1.8.3 Wybierz Włącz zawsze włączone grupy dostępności pole wyboru

Zauważ, że na tym etapie otrzymujesz już identyfikację wcześniej skonfigurowanego klastra. W ten sposób wzmocnisz kolejność kroków. Musisz włączyć klastrowanie w każdym węźle klastra przed włączeniem AlwaysOn w każdej instancji SQL Server.

1.8.4 Zrestartuj usługę SQL Server

1.9 Utwórz nową grupę dostępności

1.9.1 Otwórz Studio zarządzania serwerem SQL

1.9.2 Kliknij prawym przyciskiem myszy Zawsze wysoka dostępność> Grupy dostępności i wybierz Kreator nowej grupy dostępności .

1.9.3 Podążaj za kreatorem

1.9.4 Określ nazwę grupy dostępności. Ta nazwa będzie używana do tworzenia roli klastra.

Nazwa grupy dostępności jest również obiektem nazwy wirtualnej z wpisem w Microsoft Active Directory. Dlatego zanim to zadziała, obiekt nazwy komputera używany jako Nazwa klastra musi mieć uprawnienia do (1) tworzenia obiektów komputerowych oraz (2) Przeczytaj wszystkie właściwości w Aktywnym katalogu .

1.9.5 Wybierz bazy danych, które mają być częścią tej grupy dostępności. W jednym zestawie instancji może znajdować się kilka grup dostępności. Zaangażowane bazy danych muszą być skonfigurowane z Modelem pełnego odzyskiwania i musisz zrobić kopię zapasową. Kreator sprawdzi te wymagania wstępne.

1.9.6 Wybierz instancje, które będą działać jako repliki wtórne

Określ, czy potrzebujesz replikacji synchronicznej czy asynchronicznej oraz automatycznego lub ręcznego przełączania awaryjnego. Szczegóły konsekwencji tych wyborów znajdują się w dokumentacji firmy Microsoft zdefiniowanej na końcu tego dokumentu.

Zazwyczaj tryb Synchronous-Commit z automatycznym przełączaniem awaryjnym służy do lokalnej odporności, a tryb Asynchronous-Commit służy do używania AlwaysOn jako rozwiązania DR ze względu na problemy z opóźnieniami.

1.9.7 Utwórz udział plików do początkowej kopii zapasowej

Ten udział plików jest używany do inicjowania replikacji. Konto usługi SQL Server powinno mieć pełne uprawnienia do tego udziału plików. Przyjmuje się za pewnik, że instancje SQL Server uczestniczące w tej konfiguracji używają tego samego konta domeny, co konto usługi SQL Server.

1.9.8 Wybierz udział utworzony w kroku 4.7.9 jako początkową lokalizację kopii zapasowej bazy danych.

1.9.9 Przejrzyj etap walidacji. Zauważ, że odbiornik nie został utworzony. Możesz to zrobić później.

1.9.10 Przejrzyj podsumowanie opcji i zakończ konfigurację

1.10 Dodaj odbiornik AG

Odbiornik grupy dostępności umożliwia aplikacjom łączenie się z podstawowym, bez względu na to, który węzeł pełni obecnie tę rolę. Pomaga to, aby przełączanie awaryjne było niewidoczne dla aplikacji.

1.10.1 Kliknij prawym przyciskiem myszy Zawsze wysoka dostępność> Odbiornik grupy dostępności i wybierz Dodaj słuchacza .

Odbiornik grupy dostępności to także obiekt nazwy wirtualnej (VNO), który utworzysz w domenie. Dlatego wymaga powiązanego adresu IP.

Jak wspomniano wcześniej, aby to zadziałało, obiekt nazwy klastra (CNO) określony podczas tworzenia klastra musi mieć dwa uprawnienia w domenie Active Directory:

i. Twórz obiekty komputerowe
ii. Przeczytaj wszystkie właściwości

1.10.2 Konfiguracja została zakończona. Możesz wyświetlić pulpit nawigacyjny:

1.11 napotkane problemy

Magazyn w klastrze

Podczas pierwszego uruchomienia tworzenia klastra wszystkie dyski w węzłach klastra są dodawane do klastra. Nie jest to stan pożądany dla zawsze włączonych grup dostępności.

Rozwiązaniem było zniszczenie klastra, a następnie wyczyszczenie i odtworzenie go z polem wyboru Dodaj wszystkie kwalifikujące się miejsce do przechowywania do klastra wyczyszczone w kroku 4.3.3.

Nie można było odtworzyć klastra do czasu wyczyszczenia węzłów za pomocą Clear-ClusterNode Polecenie PowerShell.

Automatyczne przełączanie awaryjne

Testowanie automatycznego przełączania awaryjnego przez zatrzymanie usługi SQL Server z programu SQL Server Configuration Manager nie działało. Polecenie PowerShell Get-ClusterLog wygenerowało dziennik klastra -Node -TimeSpan 10, i zidentyfikował następujący błąd:

000007f4.00002320::2016/07/07-06:10:59.654 WARN [RCM] Brak pracy awaryjnej w grupie EPG-SERVER-AG, failoverCount 25, failoverThresholdSetting 20, lastFailover 1601/01/01-00:00:00.000

Rozwiązaniem była zmiana „maksymalnych awarii” w określonym okresie dla roli klastra grupy dostępności na znacznie wyższą wartość.

1.12 Referencje

  1. Zawsze włączone grupy dostępności
  2. Tryby przełączania awaryjnego i przełączania awaryjnego
  3. Tryby dostępności

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Jak mogę przejść do przechowywanej procedury SQL Server z mojego kodu C#?

  2. Zmień separator na przecinek podczas wysyłania wyników zapytania pocztą e-mail w programie SQL Server (T-SQL)

  3. Jak wyświetlić pełną zawartość kolumny tekstowej lub varchar(MAX) w programie SQL Server 2008 Management Studio?

  4. Tworzenie indeksu ciągów z kodem jako pierwszy

  5. jak uzyskać daty rozpoczęcia i zakończenia wszystkich tygodni między dwiema datami w serwerze SQL?