Konfigurowanie grupy trybu failover dla usługi Azure SQL Managed Instance

Dotyczy: Azure SQL Managed Instance

W tym artykule przedstawiono sposób konfigurowania grupy trybu failover dla usługi Azure SQL Managed Instance przy użyciu witryny Azure Portal i programu Azure PowerShell.

Aby uzyskać pełny skrypt programu PowerShell umożliwiający utworzenie obu wystąpień w grupie trybu failover, zapoznaj się z artykułem Dodawanie wystąpienia do grupy trybu failover przy użyciu programu PowerShell.

Wymagania wstępne

Aby skonfigurować grupę trybu failover, musisz mieć już wystąpienie zarządzane SQL, którego zamierzasz użyć jako podstawowego. Zapoznaj się z artykułem Tworzenie wystąpienia , aby rozpocząć pracę.

Wymagania dotyczące konfiguracji

Aby skonfigurować grupę trybu failover między podstawowym i pomocniczym wystąpieniem zarządzanym SQL, należy wziąć pod uwagę następujące wymagania:

  • Pomocnicze wystąpienie zarządzane musi być puste bez żadnych baz danych użytkowników.
  • Dwa wystąpienia muszą być tą samą warstwą usługi i mieć ten sam rozmiar magazynu. Chociaż nie jest to wymagane, zdecydowanie zaleca się, aby oba wystąpienia miały równe rozmiary obliczeniowe, aby zapewnić, że wystąpienie pomocnicze może trwale przetwarzać zmiany replikowane z wystąpienia podstawowego, w tym w okresach szczytowej aktywności.
  • Zakres adresów IP dla sieci wirtualnej wystąpienia podstawowego nie może pokrywać się z zakresem adresów sieci wirtualnej dla pomocniczego wystąpienia zarządzanego lub żadna inna sieć wirtualna równorzędna z podstawową lub pomocniczą siecią wirtualną.
  • Oba wystąpienia muszą znajdować się w tej samej strefie DNS. Podczas tworzenia pomocniczego wystąpienia zarządzanego należy określić identyfikator strefy DNS wystąpienia podstawowego. Jeśli tego nie zrobisz, identyfikator strefy jest generowany jako losowy ciąg podczas tworzenia pierwszego wystąpienia w każdej sieci wirtualnej, a ten sam identyfikator jest przypisywany do wszystkich innych wystąpień w tej samej podsieci. Przypisanej strefy DNS nie można modyfikować.
  • Reguły sieciowych grup zabezpieczeń dla podsieci obu wystąpień muszą mieć otwarte połączenia PRZYCHODZĄCE i wychodzące TCP dla portów 5022 i zakresu portów 11000-11999, aby ułatwić komunikację między dwoma wystąpieniami.
  • Wystąpienia zarządzane powinny być wdrażane w sparowanych regionach ze względu na wydajność. Wystąpienia zarządzane, które znajdują się w regionach sparowanych geograficznie, korzystają z znacznie większej szybkości replikacji geograficznej w porównaniu z nieparzystymi regionami.
  • Oba wystąpienia muszą używać tych samych zasad aktualizacji.

Tworzenie wystąpienia pomocniczego

Podczas tworzenia wystąpienia pomocniczego należy użyć sieci wirtualnej, która ma przestrzeń adresową IP, która nie nakłada się na zakres przestrzeni adresów IP wystąpienia podstawowego. Ponadto podczas konfigurowania nowego wystąpienia pomocniczego należy określić identyfikator strefy wystąpienia podstawowego.

Możesz skonfigurować pomocniczą sieć wirtualną i utworzyć wystąpienie pomocnicze przy użyciu witryny Azure Portal i programu PowerShell.

Tworzenie sieci wirtualnej

Aby utworzyć sieć wirtualną dla wystąpienia pomocniczego w witrynie Azure Portal, wykonaj następujące kroki:

  1. Sprawdź przestrzeń adresową wystąpienia podstawowego. Przejdź do zasobu sieci wirtualnej dla wystąpienia podstawowego w witrynie Azure Portal i w obszarze Ustawienia wybierz pozycję Przestrzeń adresowa. Sprawdź zakres w obszarze Zakres adresów:

    Zrzut ekranu przedstawiający przestrzeń adresową podstawowej sieci wirtualnej w witrynie Azure Portal.

  2. Utwórz nową sieć wirtualną, która ma być używana dla wystąpienia pomocniczego, przechodząc do strony Tworzenie sieci wirtualnej.

  3. Na karcie Podstawy na stronie Tworzenie sieci wirtualnej:

    1. Wybierz grupę zasobów, której chcesz użyć dla wystąpienia pomocniczego. Utwórz nowy, jeśli jeszcze nie istnieje.
    2. Podaj nazwę sieci wirtualnej, na przykład vnet-sql-mi-secondary.
    3. Wybierz region sparowany z regionem, w którym znajduje się wystąpienie podstawowe.
  4. Na karcie Adresy IP na stronie Tworzenie sieci wirtualnej:

    1. Użyj opcji Usuń przestrzeń adresową, aby usunąć istniejącą przestrzeń adresową IPv4.
    2. Po usunięciu przestrzeni adresowej wybierz pozycję Dodaj przestrzeń adresową IPv4, aby dodać nową przestrzeń, a następnie podaj przestrzeń adresową IP, która różni się od przestrzeni adresowej używanej przez sieć wirtualną wystąpienia podstawowego. Jeśli na przykład bieżące wystąpienie podstawowe używa przestrzeni adresowej 10.0.0.16, wprowadź 10.1.0.0/16 przestrzeń adresową sieci wirtualnej, która ma być używana dla wystąpienia pomocniczego.
    3. Użyj opcji + Dodaj podsieć, aby dodać domyślną podsieć z wartościami domyślnymi.
    4. Użyj opcji + Dodaj podsieć, aby dodać pustą podsieć o nazwie ManagedInstance , która będzie dedykowana dla wystąpienia pomocniczego, używając zakresu adresów innego niż domyślna podsieć. Jeśli na przykład wystąpienie podstawowe używa zakresu adresów 10.0.0.0-10.0.255.255, podaj zakres 10.1.1.0 - 10.1.1.255 podsieci dla podsieci wystąpienia pomocniczego.

    Zrzut ekranu przedstawiający przestrzeń adresową nowej sieci wirtualnej w witrynie Azure Portal.

  5. Użyj pozycji Przejrzyj i utwórz , aby przejrzeć ustawienia, a następnie użyć polecenia Utwórz , aby utworzyć nową sieć wirtualną.

Tworzenie wystąpienia pomocniczego

Po dokonaniu gotowości sieci wirtualnej wykonaj następujące kroki, aby utworzyć wystąpienie pomocnicze w witrynie Azure Portal:

  1. Przejdź do obszaru Tworzenie wystąpienia zarządzanego Azure SQL w witrynie Azure Portal.

  2. Na karcie Podstawy na stronie Tworzenie usługi Azure SQL Managed Instance:

    1. Wybierz region dla wystąpienia pomocniczego sparowanego z wystąpieniem podstawowym.
    2. Wybierz warstwę usługi zgodną z warstwą usługi wystąpienia podstawowego.
  3. Na karcie Sieć na stronie Tworzenie usługi Azure SQL Managed Instance użyj listy rozwijanej w obszarze Sieć wirtualna/podsieć, aby wybrać wcześniej utworzoną sieć wirtualną i podsieć:

    Zrzut ekranu przedstawiający sieć utworzoną do użycia z wystąpieniem pomocniczym w witrynie Azure Portal.

  4. Na karcie Dodatkowe ustawienia na stronie Tworzenie usługi Azure SQL Managed Instance wybierz pozycję Tak, aby użyć jako pomocniczego trybu failover, a następnie wybierz odpowiednie wystąpienie podstawowe z listy rozwijanej.

    Zrzut ekranu witryny Azure Portal określający podstawowe wystąpienie zarządzane jako pomocnicze tryb failover na stronie dodatkowych ustawień.

  5. Skonfiguruj resztę wystąpienia zgodnie z potrzebami biznesowymi, a następnie utwórz je przy użyciu opcji Przeglądanie i tworzenie.

Ustanawianie łączności między wystąpieniami

Aby zapewnić nieprzerwany przepływ ruchu replikacji geograficznej, należy ustanowić łączność między podsieciami sieci wirtualnej hostujących wystąpienia podstawowe i pomocnicze. Istnieje wiele sposobów łączenia wystąpień zarządzanych w różnych regionach świadczenia usługi Azure, w tym:

Globalna komunikacja równorzędna sieci wirtualnych jest zalecana jako najbardziej wydajny i niezawodny sposób nawiązywania łączności między wystąpieniami w grupie trybu failover. Globalna komunikacja równorzędna sieci wirtualnych zapewnia połączenie prywatne o małych opóźnieniach i dużej przepustowości między równorzędną siecią wirtualną przy użyciu infrastruktury szkieletowej firmy Microsoft. Do komunikacji między równorzędnymi sieciami wirtualnymi nie jest wymagany publiczny Internet, bramy, ani dodatkowe szyfrowanie.

Ważne

Alternatywne sposoby łączenia wystąpień obejmujących dodatkowe urządzenia sieciowe mogą komplikować rozwiązywanie problemów z łącznością lub szybkością replikacji, prawdopodobnie wymagających aktywnego zaangażowania administratorów sieci i potencjalnie znacznie przedłużającego czas rozwiązywania problemów.

Jeśli używasz mechanizmu do nawiązywania łączności między wystąpieniami innymi niż zalecana globalna komunikacja równorzędna sieci wirtualnych, upewnij się, że:

  • Urządzenie sieciowe, takie jak zapory lub wirtualne urządzenia sieciowe (WUS), nie blokuj ruchu przychodzącego i wychodzącego dla portów 5022 (TCP) i zakresu portów 11000-11999.
  • Routing jest poprawnie skonfigurowany i zastosowano uniknięcie routingu asymetrycznego.
  • W przypadku wdrażania grup trybu failover w topologii sieci piasty i szprych między regionami, aby uniknąć problemów z łącznością i szybkością replikacji, ruch replikacji powinien przechodzić bezpośrednio między dwiema podsieciami wystąpienia zarządzanego, a nie kierowanymi przez sieci koncentratora.

Ten artykuł zawiera instrukcje konfigurowania globalnej komunikacji równorzędnej sieci wirtualnych między sieciami dwóch wystąpień przy użyciu witryny Azure Portal i programu PowerShell.

  1. W witrynie Azure Portal przejdź do zasobu sieć wirtualna dla podstawowego wystąpienia zarządzanego.

  2. Wybierz pozycję Komunikacje równorzędne w obszarze Ustawienia, aby otworzyć stronę Komunikacje równorzędne, a następnie użyj pozycji + Dodaj na pasku poleceń, aby otworzyć stronę Dodawanie komunikacji równorzędnej.

    Zrzut ekranu przedstawiający stronę komunikacji równorzędnej dla sieci wirtualnej A w witrynie Azure Portal.

  3. Na stronie Dodawanie komunikacji równorzędnej wprowadź lub wybierz wartości dla następujących ustawień:

    Ustawienia Opis
    Podsumowanie zdalnej sieci wirtualnej
    Nazwa łącza komunikacji równorzędnej Nazwa komunikacji równorzędnej musi być unikatowa w sieci wirtualnej. W tym artykule jest używany program Fog-peering.
    Model wdrażania sieci wirtualnej Wybierz pozycję Resource Manager.
    Znam identyfikator zasobu To pole można pozostawić niezaznaczone, chyba że znasz identyfikator zasobu.
    Subskrypcja Wybierz subskrypcję z listy rozwijanej.
    Sieć wirtualna Wybierz sieć wirtualną dla wystąpienia pomocniczego z listy rozwijanej.
    Ustawienia zdalnej komunikacji równorzędnej sieci wirtualnej
    Zezwalaj "pomocniczej sieci wirtualnej" na dostęp do "podstawowej sieci wirtualnej" Zaznacz pole wyboru, aby zezwolić na komunikację między dwiema sieciami. Włączenie komunikacji między sieciami wirtualnymi umożliwia zasobom połączonym z jedną z sieci wirtualnych komunikację ze sobą z taką samą przepustowością i opóźnieniem, jakby były połączone z tą samą siecią wirtualną. Cała komunikacja między zasobami w dwóch sieciach wirtualnych odbywa się za pośrednictwem sieci prywatnej platformy Azure.
    Zezwalaj "pomocniczej sieci wirtualnej" na odbieranie przekazywanego ruchu z "podstawowej sieci wirtualnej" Możesz zaznaczyć lub usunąć zaznaczenie tego pola, które działa w tym przewodniku. Aby uzyskać więcej informacji, zobacz Tworzenie komunikacji równorzędnej.
    Zezwalaj bramie lub serwerowi tras w "pomocniczej sieci wirtualnej" na przekazywanie ruchu do "podstawowej sieci wirtualnej" Możesz zaznaczyć lub usunąć zaznaczenie tego pola, które działa w tym przewodniku. Aby uzyskać więcej informacji, zobacz Tworzenie komunikacji równorzędnej.
    Włącz "pomocniczą sieć wirtualną", aby użyć bramy zdalnej podstawowej sieci wirtualnej lub serwera routingu Pozostaw to pole niezaznaczone. Aby uzyskać więcej informacji na temat innych dostępnych opcji, zobacz Tworzenie komunikacji równorzędnej.
    Podsumowanie lokalnej sieci wirtualnej
    Nazwa łącza komunikacji równorzędnej Nazwa tej samej komunikacji równorzędnej używanej dla zdalnej sieci wirtualnej. W tym artykule jest używany program Fog-peering.
    Zezwalaj "podstawowej sieci wirtualnej" na dostęp do pomocniczej sieci wirtualnej Zaznacz pole wyboru, aby zezwolić na komunikację między dwiema sieciami. Włączenie komunikacji między sieciami wirtualnymi umożliwia zasobom połączonym z jedną z sieci wirtualnych komunikację ze sobą z taką samą przepustowością i opóźnieniem, jakby były połączone z tą samą siecią wirtualną. Cała komunikacja między zasobami w dwóch sieciach wirtualnych odbywa się za pośrednictwem sieci prywatnej platformy Azure.
    Zezwalaj "podstawowej sieci wirtualnej" na odbieranie przekazywanego ruchu z "pomocniczej sieci wirtualnej" Możesz zaznaczyć lub usunąć zaznaczenie tego pola, które działa w tym przewodniku. Aby uzyskać więcej informacji, zobacz Tworzenie komunikacji równorzędnej.
    Zezwalaj bramie lub serwerowi tras w "podstawowej sieci wirtualnej" na przekazywanie ruchu do "pomocniczej sieci wirtualnej" Możesz zaznaczyć lub usunąć zaznaczenie tego pola, które działa w tym przewodniku. Aby uzyskać więcej informacji, zobacz Tworzenie komunikacji równorzędnej.
    Włącz "podstawową sieć wirtualną", aby użyć bramy zdalnej lub serwera routingu "pomocniczej sieci wirtualnej" Pozostaw to pole niezaznaczone. Aby uzyskać więcej informacji na temat innych dostępnych opcji, zobacz Tworzenie komunikacji równorzędnej.
  4. Użyj polecenia Dodaj , aby skonfigurować komunikację równorzędną z wybraną siecią wirtualną, a następnie automatycznie przejdź z powrotem do strony Komunikacja równorzędna , która pokazuje, że dwie sieci są połączone:

    Zrzut ekranu przedstawiający stan komunikacji równorzędnej sieci wirtualnych na stronie komunikacji równorzędnej w witrynie Azure Portal.

Konfigurowanie portów i reguł sieciowej grupy zabezpieczeń

Niezależnie od wybranego mechanizmu łączności między dwoma wystąpieniami sieci muszą spełniać następujące wymagania dotyczące przepływu ruchu replikacji geograficznej:

  • Tabela tras i sieciowe grupy zabezpieczeń przypisane do podsieci wystąpienia zarządzanego nie są współużytkowane przez dwie równorzędne sieci wirtualne.
  • Reguły sieciowej grupy zabezpieczeń w obu podsieciach hostujących każde wystąpienie zezwalają zarówno na ruch przychodzący, jak i wychodzący do innego wystąpienia na porcie 5022, a także zakres portów 11000–11999.

Komunikację portów i reguły sieciowej grupy zabezpieczeń można skonfigurować przy użyciu witryny Azure Portal i programu PowerShell.

Aby otworzyć porty sieciowej grupy zabezpieczeń w witrynie Azure Portal, wykonaj następujące kroki:

  1. Przejdź do zasobu Sieciowej grupy zabezpieczeń dla wystąpienia podstawowego.

  2. W obszarze Ustawienia, wybierz pozycję Reguły zabezpieczeń dla ruchu przychodzącego. Sprawdź, czy masz już reguły zezwalające na ruch przez port 5022 oraz zakres 11000–11999. Jeśli to zrobisz, a źródło spełnia Twoje potrzeby biznesowe, pomiń ten krok. Jeśli reguły nie istnieją lub chcesz użyć innego źródła (na przykład bezpieczniejszego adresu IP), usuń istniejącą regułę, a następnie wybierz pozycję + Dodaj na pasku poleceń, aby otworzyć stronę Dodaj regułę zabezpieczeń dla ruchu przychodzącego:

    Zrzut ekranu przedstawiający dodawanie reguł zabezpieczeń dla ruchu przychodzącego dla sieciowej grupy zabezpieczeń w witrynie Azure Portal.

  3. Na stronie Dodawanie reguły zabezpieczeń dla ruchu przychodzącego wprowadź lub wybierz wartości dla następujących ustawień:

    Ustawienia Zalecana wartość opis
    Źródło Adresy IP lub tag usługi Filtr źródła komunikacji. Adres IP jest najbezpieczniejszy i zalecany w środowiskach produkcyjnych. Tag usługi jest odpowiedni dla środowisk nieprodukcyjnych.
    Tag usługi źródłowej W przypadku wybrania tagu usługi jako źródła podaj VirtualNetwork jako tag źródłowy. Tagi domyślne to wstępnie zdefiniowane identyfikatory reprezentujące kategorię adresów IP. Tag VirtualNetwork oznacza wszystkie przestrzenie adresowe sieci wirtualnej i lokalnej.
    Źródłowe adresy IP Jeśli jako źródło wybrano adresy IP, podaj adres IP wystąpienia pomocniczego. Podaj zakres adresów przy użyciu notacji CIDR (np. 192.168.99.0/24 lub 2001:1234:/64) lub adresu IP (np. 192.168.99.0 lub 2001:1234::). Można również podać rozdzielaną przecinkami listę adresów IP lub zakresów adresów przy użyciu protokołu IPv4 lub IPv6.
    Zakresy portów źródłowych 5022 Określa, który ruch portów będzie dozwolony dla tej reguły.
    Usługa Niestandardowy Usługa określa docelowy protokół i zakres portów dla tej reguły.
    Zakresy portów docelowych 5022 Określa, który ruch portów będzie dozwolony dla tej reguły. Ten port powinien być zgodny z zakresem portów źródłowych.
    Akcja Zezwalaj Zezwalaj na komunikację na określonym porcie.
    Protokół TCP Określa protokół komunikacji portów.
    Priorytet 1200 Reguły są przetwarzane w kolejności priorytetów; im niższa liczba, tym wyższy priorytet.
    Nazwisko allow_geodr_inbound Nazwa reguły.
    opis Opcjonalnie Możesz podać opis lub pozostawić to pole puste.

    Wybierz pozycję Dodaj , aby zapisać ustawienia i dodać nową regułę.

  4. Powtórz te kroki, aby dodać kolejną regułę zabezpieczeń dla ruchu przychodzącego dla zakresu 11000-11999 portów o nazwie, takiej jak allow_redirect_inbound i priorytet nieco wyższy niż reguła 5022, na przykład 1100.

  5. W obszarze Ustawienia wybierz pozycję Reguły zabezpieczeń dla ruchu wychodzącego. Sprawdź, czy masz już reguły zezwalające na ruch przez port 5022 oraz zakres 11000–11999. Jeśli to zrobisz, a źródło spełnia Twoje potrzeby biznesowe, pomiń ten krok. Jeśli reguły nie istnieją lub chcesz użyć innego źródła (na przykład bezpieczniejszego adresu IP), usuń istniejącą regułę, a następnie wybierz pozycję + Dodaj na pasku poleceń, aby otworzyć stronę Dodawanie reguły zabezpieczeń dla ruchu wychodzącego.

  6. Na stronie Dodawanie reguły zabezpieczeń ruchu wychodzącego użyj tej samej konfiguracji dla portu 5022 i zakresu 11000-11999 tak jak w przypadku portów przychodzących.

  7. Przejdź do sieciowej grupy zabezpieczeń dla wystąpienia pomocniczego i powtórz następujące kroki, aby obie sieciowe grupy zabezpieczeń miały następujące reguły:

    • Zezwalaj na ruch przychodzący na porcie 5022
    • Zezwalaj na ruch przychodzący w zakresie portów 11000-11999
    • Zezwalaj na ruch wychodzący na porcie 5022
    • Zezwalaj na ruch wychodzący w zakresie portów 11000-11999

Tworzenie grupy trybu failover

Utwórz grupę trybu failover dla wystąpień zarządzanych przy użyciu witryny Azure Portal lub programu PowerShell.

Utwórz grupę trybu failover dla usługi SQL Managed Instances przy użyciu witryny Azure Portal.

  1. Wybierz pozycję Azure SQL w menu po lewej stronie witryny Azure Portal. Jeśli usługa Azure SQL nie znajduje się na liście, wybierz pozycję Wszystkie usługi, a następnie wpisz azure SQL w polu wyszukiwania. (Opcjonalnie) Wybierz gwiazdkę obok pozycji Azure SQL , aby dodać ją jako ulubiony element do nawigacji po lewej stronie.

  2. Wybierz podstawowe wystąpienie zarządzane, które chcesz dodać do grupy trybu failover.

  3. W obszarze Zarządzanie danymi wybierz pozycję Grupy trybu failover, a następnie użyj pozycji Dodaj grupę, aby otworzyć stronę Grupa trybu failover wystąpienia:

    Zrzut ekranu przedstawiający dodawanie strony grupy trybu failover w witrynie Azure Portal.

  4. Na stronie Grupa trybu failover wystąpienia:

    1. Wstępnie wybrane jest podstawowe wystąpienie zarządzane.
    2. W obszarze Nazwa grupy trybu failover wprowadź nazwę grupy trybu failover.
    3. W obszarze Pomocnicze wystąpienie zarządzane wybierz wystąpienie zarządzane, którego chcesz użyć jako pomocnicze w grupie trybu failover.
    4. Wybierz zasady trybu failover odczytu/zapisu z listy rozwijanej. Zaleca się ręczne sterowanie trybem failover.
    5. Pozostaw opcję Włącz prawa trybu failover do opcji Wyłączone, chyba że zamierzasz używać tej repliki tylko do odzyskiwania po awarii.
    6. Użyj polecenia Utwórz , aby zapisać ustawienia i utworzyć grupę trybu failover.

    Zrzut ekranu przedstawiający tworzenie grupy trybu failover w witrynie Azure Portal.

  5. Po rozpoczęciu wdrażania grupy trybu failover następuje powrót do strony Grupy trybu failover. Strona zostanie odświeżona, aby wyświetlić nową grupę trybu failover po zakończeniu wdrażania.

Testowanie pracy w trybie failover

Przetestuj tryb failover grupy trybu failover przy użyciu witryny Azure Portal lub programu PowerShell.

Uwaga

Jeśli wystąpienia znajdują się w różnych subskrypcjach lub grupach zasobów, zainicjuj tryb failover z wystąpienia pomocniczego.

Przetestuj tryb failover grupy trybu failover przy użyciu witryny Azure Portal.

  1. Przejdź do podstawowego lub pomocniczego wystąpienia zarządzanego w witrynie Azure Portal.

  2. W sekcji Zarządzanie danymi wybierz opcję Grupy trybu failover.

  3. Na stronie Grupy trybu failover zwróć uwagę, które wystąpienie jest wystąpieniem podstawowym, a które wystąpienie jest wystąpieniem pomocniczym.

  4. Na stronie Grupy trybu failover wybierz pozycję Tryb failover na pasku poleceń. Wybierz pozycję Tak w ostrzeżeniu dotyczącym rozłączania sesji TDS i zanotuj implikację licencjonowania.

    Zrzut ekranu przedstawiający przełączanie grupy trybu failover w witrynie Azure Portal w tryb failover.

  5. Na stronie Grupy trybu failover po pomyślnym przejściu w tryb failover wystąpienia przełączą role, dzięki czemu poprzednia pomocnicza stanie się nowym podstawowym, a poprzedni podstawowy staje się nowym pomocniczym.

    Ważne

    Jeśli role nie przełączyły się, sprawdź łączność między wystąpieniami i powiązanymi sieciowymi grupami zabezpieczeń i regułami zapory. Przejdź do następnego kroku dopiero po przełączeniu ról.

  6. (Opcjonalnie) Na stronie Grupy trybu failover użyj trybu failover , aby przełączyć role z powrotem, aby oryginalna podstawowa rola stała się ponownie podstawowa.

Lokalizowanie punktu końcowego odbiornika

Po skonfigurowaniu grupy trybu failover zaktualizuj parametry połączenia dla aplikacji, aby wskazywała punkt końcowy odbiornika odczytu/zapisu, aby aplikacja nadal łączyła się z dowolnym wystąpieniem podstawowym po przejściu w tryb failover. Korzystając z punktu końcowego odbiornika, nie trzeba ręcznie aktualizować parametry połączenia za każdym razem, gdy grupa trybu failover przełączy się w tryb failover, ponieważ ruch jest zawsze kierowany do bieżącego podstawowego elementu. Obciążenie tylko do odczytu można również wskazać punktowi końcowemu odbiornika tylko do odczytu.

Aby zlokalizować punkt końcowy odbiornika w witrynie Azure Portal, przejdź do wystąpienia zarządzanego SQL i w obszarze Zarządzanie danymi wybierz pozycję Grupy trybu failover.

Przewiń w dół, aby znaleźć punkty końcowe odbiornika:

  • Punkt końcowy odbiornika odczytu/zapisu w postaci fog-name.dns-zone.database.windows.net, kieruje ruch do wystąpienia podstawowego.
  • Punkt końcowy odbiornika fog-name.dns-zone.tutorial.database.windows.nettylko do odczytu w postaci elementu kieruje ruch do wystąpienia pomocniczego.

Zrzut ekranu przedstawiający lokalizację parametry połączenia grupy trybu failover w witrynie Azure Portal.

Tworzenie grupy między wystąpieniami w różnych subskrypcjach

Grupę trybu failover można utworzyć między wystąpieniami zarządzanymi SQL w dwóch różnych subskrypcjach, o ile subskrypcje są skojarzone z tą samą dzierżawą firmy Microsoft Entra.

  • W przypadku korzystania z interfejsu API programu PowerShell można to zrobić, określając PartnerSubscriptionId parametr pomocniczego wystąpienia zarządzanego SQL.
  • W przypadku korzystania z interfejsu API REST każdy identyfikator wystąpienia uwzględniony w parametrze properties.managedInstancePairs może mieć własny identyfikator subskrypcji.
  • Witryna Azure Portal nie obsługuje tworzenia grup trybu failover w różnych subskrypcjach.

Ważne

Witryna Azure Portal nie obsługuje tworzenia grup trybu failover w różnych subskrypcjach. W przypadku grup trybu failover w różnych subskrypcjach i/lub grupach zasobów nie można zainicjować trybu failover ręcznie za pośrednictwem witryny Azure Portal z podstawowego wystąpienia zarządzanego SQL. Zamiast tego należy zainicjować go z wystąpienia pomocniczego obszaru geograficznego.

Zapobieganie utracie krytycznych danych

Ze względu na duże opóźnienie sieci rozległe replikacja geograficzna używa mechanizmu replikacji asynchronicznej. Replikacja asynchroniczna sprawia, że utrata danych jest nieunikniona w przypadku awarii podstawowej. Aby chronić krytyczne transakcje przed utratą danych, deweloper aplikacji może wywołać procedurę składowaną sp_wait_for_database_copy_sync natychmiast po zatwierdzeniu transakcji. Wywołanie sp_wait_for_database_copy_sync blokuje wątek wywołujący do czasu przesyłania ostatniej zatwierdzonej transakcji i wzmacniania zabezpieczeń w dzienniku transakcji pomocniczej bazy danych. Jednak nie czeka na ponowne odtworzenie przesyłanych transakcji (redone) na pomocniczym. sp_wait_for_database_copy_sync jest ograniczona do określonego łącza replikacji geograficznej. Każdy użytkownik z prawami połączenia do podstawowej bazy danych może wywołać tę procedurę.

Uwaga

sp_wait_for_database_copy_sync zapobiega utracie danych po przejściu w tryb failover geograficznym dla określonych transakcji, ale nie gwarantuje pełnej synchronizacji w celu uzyskania dostępu do odczytu. Opóźnienie spowodowane sp_wait_for_database_copy_sync wywołaniem procedury może być znaczące i zależy od rozmiaru dziennika transakcji, który nie został jeszcze przesłany na serwerze podstawowym w momencie wywołania.

Zmienianie regionu pomocniczego

Załóżmy, że wystąpienie A jest wystąpieniem podstawowym, wystąpienie B jest istniejącym wystąpieniem pomocniczym, a wystąpienie C jest nowym wystąpieniem pomocniczym w trzecim regionie. Aby wykonać przejście, wykonaj następujące kroki:

  1. Utwórz wystąpienie C o takim samym rozmiarze jak A i w tej samej strefie DNS.
  2. Usuń grupę trybu failover między wystąpieniami A i B. W tym momencie próby zalogowania się kończą się niepowodzeniem, ponieważ aliasy SQL dla odbiorników grupy trybu failover zostały usunięte, a brama nie rozpozna nazwy grupy trybu failover. Pomocnicze bazy danych są odłączone od prawyborów i stają się bazami danych odczytu i zapisu.
  3. Utwórz grupę trybu failover o tej samej nazwie między wystąpieniem A i C. Postępuj zgodnie z instrukcjami w przewodniku konfigurowania grupy trybu failover. Jest to operacja rozmiaru danych i kończy się, gdy wszystkie bazy danych z wystąpienia A są rozmieszczane i synchronizowane.
  4. Usuń wystąpienie B, jeśli nie jest potrzebne, aby uniknąć niepotrzebnych opłat.

Uwaga

Po kroku 2 i do momentu ukończenia kroku 3 bazy danych w wystąpieniu A pozostaną niechronione z powodu katastrofalnego błędu wystąpienia A.

Zmienianie regionu podstawowego

Załóżmy, że wystąpienie A jest wystąpieniem podstawowym, wystąpienie B jest istniejącym wystąpieniem pomocniczym, a wystąpienie C jest nowym wystąpieniem podstawowym w trzecim regionie. Aby wykonać przejście, wykonaj następujące kroki:

  1. Utwórz wystąpienie C o takim samym rozmiarze jak B i w tej samej strefie DNS.
  2. Zainicjuj ręczne przejście w tryb failover z wystąpienia B, aby było nowym elementem podstawowym. Wystąpienie A automatycznie staje się nowym wystąpieniem pomocniczym.
  3. Usuń grupę trybu failover między wystąpieniami A i B. W tym momencie próby logowania przy użyciu punktów końcowych grupy trybu failover zaczynają się wieść. Pomocnicze bazy danych w usłudze A są odłączone od prawyborów i stają się bazami danych odczytu i zapisu.
  4. Utwórz grupę trybu failover o tej samej nazwie między wystąpieniem B i C. Jest to operacja rozmiaru danych i kończy się, gdy wszystkie bazy danych z wystąpienia B są rozmieszczane i synchronizowane z wystąpieniem C. W tym momencie próby logowania zakończą się niepowodzeniem.
  5. Ręczne przełączenie w tryb failover w celu przełączenia wystąpienia języka C do roli podstawowej. Wystąpienie B automatycznie staje się nowym wystąpieniem pomocniczym.
  6. Usuń wystąpienie A, jeśli nie jest potrzebne, aby uniknąć niepotrzebnych opłat.

Uwaga

Po wykonaniu kroku 3 i do momentu ukończenia kroku 4 bazy danych w wystąpieniu A pozostaną niechronione z powodu katastrofalnego błędu wystąpienia A.

Ważne

Po usunięciu grupy trybu failover rekordy DNS dla punktów końcowych odbiornika również zostaną usunięte. W tym momencie istnieje niezerowe prawdopodobieństwo utworzenia grupy trybu failover o tej samej nazwie. Ponieważ nazwy grup trybu failover muszą być globalnie unikatowe, uniemożliwi to ponowne użycie tej samej nazwy. Aby zminimalizować to ryzyko, nie używaj ogólnych nazw grup trybu failover.

Zmienianie zasad aktualizacji

Wystąpienia w grupie trybu failover muszą mieć zgodne zasady aktualizacji. Aby włączyć zawsze aktualne zasady aktualizacji dla wystąpień należących do grupy trybu failover, najpierw włącz zawsze aktualne zasady aktualizacji w wystąpieniu pomocniczym, poczekaj na zastosowanie zmiany, a następnie zaktualizuj zasady dla wystąpienia podstawowego.

Podczas zmiany zasad aktualizacji w wystąpieniu podstawowym w grupie trybu failover powoduje przełączenie wystąpienia w tryb failover do innego węzła lokalnego (podobnie jak operacje zarządzania w wystąpieniach, które nie są częścią grupy trybu failover), nie powoduje przełączenia grupy trybu failover do trybu failover, utrzymanie wystąpienia podstawowego w roli głównej.

Uwaga

Po zmianie zaktualizowanych zasad na zawsze aktualne, zmiana jej z powrotem na zasady aktualizacji programu SQL Server 2022 nie jest już możliwa.

Włączanie scenariuszy zależnych od obiektów z systemowych baz danych

Systemowe bazy danych nie są replikowane do wystąpienia pomocniczego w grupie trybu failover. Aby włączyć scenariusze zależne od obiektów z systemowych baz danych, pamiętaj, aby utworzyć takie same obiekty w wystąpieniu pomocniczym i zachować ich synchronizację z wystąpieniem podstawowym.

Jeśli na przykład planujesz używać tych samych identyfikatorów logowania w wystąpieniu pomocniczym, pamiętaj, aby utworzyć je przy użyciu identycznego identyfikatora SID.

-- Code to create login on the secondary instance
CREATE LOGIN foo WITH PASSWORD = '<enterStrongPasswordHere>', SID = <login_sid>;

Aby dowiedzieć się więcej, zobacz temat Replication of logins and agent jobs (Replikacja identyfikatorów logowania i zadań agenta).

Synchronizowanie właściwości wystąpienia i wystąpień zasad przechowywania

Wystąpienia w grupie trybu failover pozostają oddzielnymi zasobami platformy Azure, a żadne zmiany konfiguracji wystąpienia podstawowego nie zostaną automatycznie zreplikowane do wystąpienia pomocniczego. Upewnij się, że wszystkie istotne zmiany są wykonywane zarówno w wystąpieniu podstawowym , jak i pomocniczym. Jeśli na przykład zmienisz nadmiarowość magazynu kopii zapasowych lub zasady długoterminowego przechowywania kopii zapasowych w wystąpieniu podstawowym, pamiętaj o zmianie go również w wystąpieniu pomocniczym.

Skalowanie wystąpień

Wystąpienie podstawowe i pomocnicze można skalować w górę lub w dół do innego rozmiaru obliczeniowego w ramach tej samej warstwy usługi lub do innej warstwy usługi. Podczas skalowania w górę w ramach tej samej warstwy usługi najpierw przeprowadź skalowanie w górę pomocniczego obszaru geograficznego, a następnie przeprowadź skalowanie w górę podstawowego. Podczas skalowania w dół w ramach tej samej warstwy usługi należy odwrócić kolejność: najpierw przeskaluj w dół podstawową, a następnie przeprowadź skalowanie w dół pomocniczej. Postępuj zgodnie z tą samą sekwencją podczas skalowania wystąpienia do innej warstwy usługi.

Ta sekwencja jest zalecana, aby uniknąć problemów z pomocniczym obszarem geograficznym w niższej jednostce SKU, przeciążeniu i konieczności ponownego przejścia na starszą lub starszą wersję procesu.

Uprawnienia

Uprawnienia do grupy trybu failover są zarządzane za pośrednictwem kontroli dostępu opartej na rolach (RBAC) platformy Azure.

Rola Współautor wystąpienia zarządzanego SQL, w zakresie grup zasobów podstawowego i pomocniczego wystąpienia zarządzanego, jest wystarczająca do wykonywania wszystkich operacji zarządzania w grupach trybu failover.

Poniższa tabela zawiera szczegółowy widok minimalnych wymaganych uprawnień oraz ich minimalny wymagany poziom zakresu dla operacji zarządzania w grupach trybu failover:

Operacja zarządzania Uprawnienie Scope
Tworzenie/aktualizowanie grupy trybu failover Microsoft.Sql/locations/instanceFailoverGroups/write Grupy zasobów wystąpienia podstawowego i pomocniczego zarządzanego
Tworzenie/aktualizowanie grupy trybu failover Microsoft.Sql/managedInstances/write Wystąpienie zarządzane podstawowe i pomocnicze
Grupa trybu failover trybu failover Microsoft.Sql/locations/instanceFailoverGroups/failover/action Grupy zasobów wystąpienia podstawowego i pomocniczego zarządzanego
Wymuszanie grupy trybu failover w trybie failover Microsoft.Sql/locations/instanceFailoverGroups/forceFailoverAllowDataLoss/action Grupy zasobów wystąpienia podstawowego i pomocniczego zarządzanego
Usuwanie grupy trybu failover Microsoft.Sql/locations/instanceFailoverGroups/delete Grupy zasobów wystąpienia podstawowego i pomocniczego zarządzanego

Ograniczenia

Należy pamiętać o następujących ograniczeniach:

  • Nie można utworzyć grup trybu failover między dwoma wystąpieniami w tym samym regionie świadczenia usługi Azure.
  • Nazw grup trybu failover nie można zmieniać. Należy usunąć grupę i utworzyć ją ponownie z inną nazwą.
  • Grupa trybu failover zawiera dokładnie dwa wystąpienia zarządzane. Dodawanie dodatkowych wystąpień do grupy trybu failover nie jest obsługiwane.
  • Wystąpienie może uczestniczyć tylko w jednej grupie trybu failover w dowolnym momencie.
  • Nie można utworzyć grupy trybu failover między dwoma wystąpieniami należącymi do różnych dzierżaw platformy Azure.
  • Tworzenie grupy trybu failover między dwoma wystąpieniami w różnych grupach zasobów lub subskrypcjach jest obsługiwane tylko za pomocą programu Azure PowerShell lub interfejsu API REST, a nie witryny Azure Portal lub interfejsu wiersza polecenia platformy Azure. Po utworzeniu grupy trybu failover jest ona widoczna w witrynie Azure Portal, a wszystkie operacje są obsługiwane w witrynie Azure Portal lub przy użyciu interfejsu wiersza polecenia platformy Azure. Przejście w tryb failover musi być inicjowane z wystąpienia pomocniczego.
  • Tworzenie grupy trybu failover z wystąpieniem skonfigurowanym za pomocą linku wystąpienia zarządzanego jest obecnie nieobsługiwane.
  • Zmiana nazwy bazy danych nie jest obsługiwana w przypadku baz danych w grupie trybu failover. Aby móc zmienić nazwę bazy danych, musisz tymczasowo usunąć grupę trybu failover.
  • Systemowe bazy danych nie są replikowane do wystąpienia pomocniczego w grupie trybu failover. W związku z tym scenariusze zależne od obiektów z systemowych baz danych, takich jak identyfikatory logowania serwera i zadania agenta, wymagają ręcznego utworzenia obiektów w wystąpieniach pomocniczych, a także ręcznej synchronizacji po wprowadzeniu zmian w wystąpieniu podstawowym. Jedynym wyjątkiem jest klucz główny usługi (SMK) dla wystąpienia zarządzanego SQL, który jest replikowany automatycznie do wystąpienia pomocniczego podczas tworzenia grupy trybu failover. Wszelkie kolejne zmiany zestawu SMK w wystąpieniu podstawowym nie zostaną jednak zreplikowane do wystąpienia pomocniczego. Aby dowiedzieć się więcej, zobacz, jak włączyć scenariusze zależne od obiektów z systemowych baz danych.
  • Nie można utworzyć grup trybu failover między wystąpieniami, jeśli którykolwiek z nich znajduje się w puli wystąpień.
  • W przypadku wystąpień wewnątrz grupy trybu failover zmiana warstwy usługi na lub z niej nie jest obsługiwana w warstwie Ogólnego przeznaczenia następnej generacji. Najpierw należy usunąć grupę trybu failover przed zmodyfikowaną repliką, a następnie ponownie utworzyć grupę trybu failover po wprowadzeniu zmiany.
  • Wystąpienia zarządzane SQL w grupie trybu failover muszą mieć te same zasady aktualizacji, chociaż istnieje możliwość zmiany zasad aktualizacji dla wystąpień w grupie trybu failover.

Programowe zarządzanie grupami trybu failover

Grupami trybu failover można również zarządzać programowo przy użyciu środowiska Azure PowerShell, interfejsu wiersza polecenia (CLI) platformy Azure i interfejsu API REST. W poniższych tabelach opisano zestaw dostępnych poleceń. Grupy trybu failover obejmują zestaw interfejsów API usługi Azure Resource Manager do zarządzania, w tym interfejs API REST usługi Azure SQL Database i polecenia cmdlet programu Azure PowerShell. Te interfejsy API wymagają użycia grup zasobów i obsługi kontroli dostępu opartej na rolach platformy Azure (Azure RBAC). Aby uzyskać więcej informacji na temat implementowania ról dostępu, zobacz Kontrola dostępu oparta na rolach (RBAC) platformy Azure.

Polecenia cmdlet opis
New-AzSqlDatabaseInstanceFailoverGroup To polecenie tworzy grupę trybu failover i rejestruje ją w wystąpieniach podstawowych i pomocniczych
Set-AzSqlDatabaseInstanceFailoverGroup Modyfikuje konfigurację grupy trybu failover
Get-AzSqlDatabaseInstanceFailoverGroup Pobiera konfigurację grupy trybu failover
Switch-AzSqlDatabaseInstanceFailoverGroup Wyzwala tryb failover grupy trybu failover do wystąpienia pomocniczego
Remove-AzSqlDatabaseInstanceFailoverGroup Usuwa grupę trybu failover