Udostępnij za pośrednictwem


Wystąpienia klastra trybu failover z platformą SQL Server na maszynach wirtualnych platformy Azure

Dotyczy:program SQL Server na maszynie wirtualnej platformy Azure

W tym artykule przedstawiono różnice funkcji podczas pracy z wystąpieniami klastra trybu failover (FCI) dla programu SQL Server na maszynach wirtualnych platformy Azure.

Aby rozpocząć, przygotuj maszynę wirtualną.

Omówienie

Program SQL Server na maszynach wirtualnych platformy Azure wykorzystuje funkcję Windows Server Failover Clustering (WSFC) do zapewnienia lokalnej wysokiej dostępności poprzez nadmiarowość na poziomie instancji serwera: instancji klastra trybu failover. Instancja klastra trybu failover to pojedyncza instancja programu SQL Server, która jest zainstalowana na węzłach WSFC, często nazywany po prostu klastrem, i ewentualnie, na wielu podsieciach. W sieci FCI widoczne jest jako pojedyncze wystąpienie programu SQL Server uruchomione na jednym komputerze. Jednak FCI zapewnia przełączenie awaryjne z jednego węzła WSFC na inny, jeśli bieżący węzeł stanie się niedostępny.

W pozostałej części artykułu skupiono się na różnicach wystąpień klastra trybu failover, gdy są one używane z programem SQL Server na maszynach wirtualnych platformy Azure. Aby dowiedzieć się więcej o technologii klastrowania awaryjnego, sprawdź:

Uwaga

Teraz można podnieść i przenieść rozwiązanie wystąpienia klastra trybu failover do programu SQL Server na maszynach wirtualnych platformy Azure przy użyciu usługi Azure Migrate. Aby dowiedzieć się więcej, przeczytaj Migrowanie wystąpienia klastra trybu przełączania awaryjnego.

Kworum

Instancje klastra trybu failover z programem SQL Server na maszynach wirtualnych platformy Azure obsługują użycie świadka dysku, świadka w chmurze lub świadka udziału plików dla kworum klastra.

Aby dowiedzieć się więcej, zobacz Quorum best practices with SQL Server VMs in Azure (Najlepsze rozwiązania dotyczące kworum na maszynach wirtualnych z programem SQL Server na platformie Azure).

Magazynowanie

W tradycyjnych lokalnych środowiskach klastrowanych klaster trybu failover systemu Windows używa sieci magazynowania (SAN), która jest dostępna dla wszystkich węzłów jako magazyn współdzielony. Pliki programu SQL Server są hostowane w magazynie udostępnionym, a tylko aktywny węzeł może jednocześnie uzyskiwać dostęp do plików.

SQL Server na maszynach wirtualnych platformy Azure oferuje różne opcje jako rozwiązanie współdzielonego magazynowania dla wdrożenia instancji klastrowych trybu failover SQL Server.

Dyski udostępnione platformy Azure Udziały plików w warstwie Premium Przestrzenie dyskowe Direct (S2D) Elastyczna sieć SAN platformy Azure
Minimalna wersja systemu operacyjnego wszystkie Windows Server 2012 Windows Server 2016 Windows Server 2022
Minimalna wersja programu SQL Server wszystkie SQL Server 2012 SQL Server 2016 SQL Server 2022
Obsługiwana dostępność maszyn wirtualnych Premium SSD LRS: Zestawy dostępności z grupą umieszczania w pobliżu lub bez niej
SSD Premium ZRS: strefy dostępności
Dyski Ultra: ta sama strefa dostępności
Zestawy dostępności i strefy dostępności Zestawy dostępności Strefy dostępności
Obsługuje FileStream Tak Nie Tak Nie
Obsługuje MSDTC Tak Nie Nie Nie

W pozostałej części tej sekcji wymieniono korzyści i ograniczenia każdej opcji magazynu dostępnej dla programu SQL Server na maszynach wirtualnych platformy Azure.

Dyski udostępnione platformy Azure

Dyski udostępniane platformy Azure to funkcja dysków zarządzanych platformy Azure. Klaster trybu failover systemu Windows Server obsługuje używanie dysków udostępnionych platformy Azure z wystąpieniem klastra trybu failover.

Obsługiwany system operacyjny: wszystkie
Obsługiwana wersja SQL: wszystkie

Korzyści:

  • Przydatne w przypadku aplikacji, które chcą przeprowadzić migrację na platformę Azure, zachowując architekturę wysokiej dostępności i odzyskiwania po awarii (HADR, high-availability and disaster recovery).
  • Można migrować aplikacje klastrowane na platformę Azure bez zmian dzięki obsłudze rezerwacji trwałych SCSI (SCSI PR).
  • Obsługuje szczególnie udostępniane dyski Azure Premium SSD, Premium SSD v2 oraz Azure Ultra Dysk.
  • Można użyć jednego dysku udostępnionego lub zestawiać wiele dysków udostępnionych, aby utworzyć udostępnioną pulę magazynową.
  • Obsługuje FILESTREAM.
  • Dyski SSD Premium obsługują zestawy dostępności.
  • Magazyn strefowo nadmiarowy (ZRS) w warstwie Premium obsługuje strefy dostępności. Maszyny wirtualne będące częścią FCI (wystąpienia klastra trybu failover) mogą być umieszczane w różnych strefach dostępności.
  • Obsługuje program Microsoft Distributed Transaction Coordinator (MSDTC) począwszy od systemu Windows Server 2019.

Uwaga

Chociaż dyski udostępnione platformy Azure obsługują również dyski SSD w warstwie standardowej, nie zalecamy używania dysków SSD w warstwie standardowej dla obciążeń SQL Server z powodu ograniczeń wydajności.

Ograniczenia:

  • Buforowanie dysków SSD w warstwie Premium nie jest obsługiwane.
  • Dyski Ultra nie obsługują zestawów dostępności ani magazynu strefowo nadmiarowego (ZRS).
  • Strefy dostępności są obsługiwane w przypadku dysków Ultra, ale maszyny wirtualne muszą znajdować się w tej samej strefie dostępności, co obniża dostępność maszyn wirtualnych do 99,9%.

Aby rozpocząć, zobacz Konfigurowanie wystąpienia klastra z funkcją przełączania awaryjnego z dyskami udostępnionymi Azure.

Storage Spaces Direct

Storage Spaces Direct to funkcja systemu Windows Server obsługiwana przez klastrowanie z przełączaniem awaryjnym na maszynach wirtualnych platformy Azure. Zapewnia wirtualną sieć SAN opartą na oprogramowaniu.

Obsługiwany system operacyjny: Windows Server 2016 lub nowszy
Obsługiwana wersja SQL: SQL Server 2016 i nowsze

Korzyści:

  • Wystarczająca przepustowość sieci umożliwia niezawodne i wysoce wydajne rozwiązanie wspólnego magazynowania.
  • Obsługuje pamięć podręczną obiektów blob platformy Azure, więc odczyty mogą być obsługiwane lokalnie z pamięci podręcznej. (Aktualizacje są replikowane jednocześnie do obu węzłów).
  • Obsługuje FileStream.

Ograniczenia:

  • Dostępne tylko dla systemu Windows Server 2016 i nowszych.
  • Strefy dostępności nie są obsługiwane.
  • Wymaga tej samej pojemności dysku dołączonej do obu maszyn wirtualnych.
  • Wysoka przepustowość sieci jest wymagana do osiągnięcia wysokiej wydajności z powodu trwającej replikacji dysku.
  • Wymaga większego rozmiaru maszyny wirtualnej i podwójnego płacenia za magazyn, ponieważ magazyn jest dołączony do każdej maszyny wirtualnej.
  • Koordynator transakcji rozproszonych firmy Microsoft (MSDTC) nie jest obsługiwany.

Aby rozpocząć, zobacz Konfigurowanie wystąpienia klastra trybu failover przy użyciu Storage Spaces Direct.

Premiumowa usługa udostępniania plików

Udziały plików w warstwie Premium to funkcja usługi Azure Files. Udziały plików w warstwie Premium są obsługiwane przez dyski SSD i charakteryzują się stale niskim opóźnieniem. Są one w pełni obsługiwane w przypadku wystąpień klastra trybu failover dla programu SQL Server 2012 lub nowszego w systemie Windows Server 2012 lub nowszym. Udziały plików w warstwie Premium zapewniają większą elastyczność, ponieważ umożliwiają zmianę rozmiaru i skalowanie bez przestojów.

Obsługiwany system operacyjny: Windows Server 2012 lub nowszy
Obsługiwana wersja SQL: SQL Server 2012 i nowsze

Korzyści:

  • Rozwiązanie magazynu współdzielonego dla maszyn wirtualnych działających w wielu strefach dostępności.
  • W pełni zarządzany system plików z niskimi opóźnieniami i wzrostową wydajnością operacji we/wy.
  • Nie wszystkie funkcje programu SQL Server są obsługiwane — takie jak migawki bazy danych, strumień plików i CHECKDB bez funkcji TABLOCK. Aby uzyskać szczegółowe informacje, zapoznaj się z ograniczeniami.

Ograniczenia:

  • Dostępne tylko dla systemu Windows Server 2012 i nowszych.
  • Usługa FileStream nie jest obsługiwana.
  • Koordynator transakcji rozproszonych firmy Microsoft (MSDTC) nie jest obsługiwany.

Aby rozpocząć, zobacz Konfigurowanie wystąpienia klastra przełączania awaryjnego przy użyciu udostępnionego pliku Premium.

Azure Elastic SAN

Azure Elastic SAN to oferta magazynu dołączonego do sieci, która zapewnia klientom elastyczne i skalowalne rozwiązanie z możliwością obniżenia kosztów dzięki konsolidacji magazynu. Usługa Azure Elastic SAN zapewnia ekonomiczne, wydajne i niezawodne rozwiązanie magazynu blokowego, które łączy się z różnymi usługami obliczeniowymi platformy Azure za pośrednictwem protokołu iSCSI. Elastyczna sieć SAN umożliwia bezproblemowe przejście z istniejącej jednostki magazynu SAN do chmury bez konieczności refaktoryzacji architektury aplikacji.

Obsługiwany system operacyjny: Windows Server 2019 lub nowszy
Obsługiwana wersja SQL: SQL Server 2022 i nowsze

Korzyści:

  • Elastyczna sieć SAN nie jest ograniczona przez limity przepływności dysku maszyny wirtualnej, co oznacza, że można zaoszczędzić na kosztach, osiągając żądaną przepływność przy użyciu mniejszych maszyn wirtualnych.
  • Konsolidacja magazynów i dynamiczne udostępnianie wydajności — można zaoszczędzić na kosztach, konsolidując obciążenia o niskiej do średniej wydajności z obciążeniami SQL Server, ponieważ pula magazynowa jest zarządzana na poziomie SAN, a wydajność jest współdzielona między obciążeniami.
  • Obsługuje trwałe rezerwacje SCSI (SCSI PR), co oznacza, że można migrować klastrowane aplikacje na platformę Azure, tak jak to jest.
  • Może użyć jednego udostępnionego woluminu lub przeplatać wiele udostępnionych woluminów w celu utworzenia udostępnionej puli magazynowej.
  • Magazyn strefowo nadmiarowy elastycznej sieci SAN obsługuje strefy dostępności. Maszyny wirtualne będące częścią instancji klastra trybu failover można umieścić w różnych strefach dostępności.

Ograniczenia:

  • Świadek chmury nie jest obecnie obsługiwany.
  • Nie obsługuje obciążeń o opóźnieniach podmilisekundowych.
  • Strumień plików nie jest obsługiwany.
  • Koordynator transakcji rozproszonych firmy Microsoft (MSDTC) nie jest obsługiwany.

Partner

Istnieją rozwiązania klastrowania partnerów z obsługiwanym magazynem.

Obsługiwany system operacyjny: wszystkie
Obsługiwana wersja SQL: wszystkie

W jednym z przykładów użyto SIOS DataKeeper jako pamięci. Aby uzyskać więcej informacji, zobacz wpis na blogu Klaster trybu failover i SIOS DataKeeper.

iSCSI i ExpressRoute

Za pośrednictwem usługi Azure ExpressRoute można również udostępnić magazyn blokowy współdzielony z obiektem docelowym iSCSI.

Obsługiwany system operacyjny: wszystkie
Obsługiwana wersja SQL: wszystkie

Na przykład usługa NetApp Private Storage (NPS) uwidacznia obiekt docelowy iSCSI za pośrednictwem usługi ExpressRoute z aplikacją Equinix na maszynach wirtualnych platformy Azure.

W przypadku rozwiązań do magazynowania udostępnionego i replikacji danych od partnerów firmy Microsoft skontaktuj się z dostawcą, aby uzyskać informacje dotyczące uzyskiwania dostępu do danych w trybie failover.

Łączność

Aby zapewnić zgodność z lokalnym środowiskiem podczas łączenia się z wystąpieniem klastra trybu failover, wdróż maszyny wirtualne programu SQL Server w wielu podsieciach w tej samej sieci wirtualnej. Posiadanie wielu podsieci eliminuje konieczność korzystania z dodatkowej zależności od usługi Azure Load Balancer lub rozproszonej nazwy sieciowej (DNN) do kierowania ruchu do Twojego wystąpienia FCI.

W przypadku wdrażania maszyn wirtualnych z programem SQL Server w jednej podsieci można skonfigurować nazwę sieci wirtualnej (VNN) i usługę Azure Load Balancer lub nazwę sieci rozproszonej (DNN) w celu kierowania ruchu do wystąpienia klastra trybu failover. Przejrzyj różnice między nimi, a następnie wdróż nazwę sieci rozproszonej lub nazwę sieci wirtualnej dla wystąpienia klastra trybu failover.

Zaleca się użycie sieci rozproszonej, jeśli to możliwe, ponieważ tryb przełączania awaryjnego jest szybszy, a obciążenia oraz koszty związane z zarządzaniem modułem równoważenia obciążeń są wyeliminowane.

Większość funkcji programu SQL Server działa płynnie z wystąpieniami klastra trybu failover podczas korzystania z rozproszonej nazwy sieciowej, ale istnieją pewne funkcje, które mogą wymagać szczególnej uwagi. Aby uzyskać więcej informacji, zobacz współdziałanie FCI i DNN.

Uwaga

Jeśli masz wiele grup dostępności (AG) lub wystąpień klastra trybu failover (FCI) w tym samym klastrze i używasz nasłuchiwacza sieci rozproszonej (DNN) lub nasłuchiwacza sieci wirtualnej (VNN), każda grupa dostępności lub wystąpienie klastra trybu failover wymaga własnego, niezależnego punktu połączenia.

Ograniczenia

Ograniczona obsługa rozszerzeń

Obecnie wystąpienia klastra przełączania awaryjnego programu SQL Server na maszynach wirtualnych platformy Azure zarejestrowanych w rozszerzeniu SQL IaaS Agent obsługują tylko ograniczoną liczbę funkcji dostępnych za pośrednictwem rejestracji podstawowej, a nie tych, które wymagają agenta, czyli takich, jak automatyczna kopia zapasowa, stosowanie poprawek, uwierzytelnianie Microsoft Entra i zaawansowane zarządzanie portalem. Zobacz tabelę korzyści , aby dowiedzieć się więcej.

Jeśli maszyna wirtualna z programem SQL Server została już zarejestrowana w rozszerzeniu agenta IaaS SQL i włączono wszystkie funkcje wymagające agenta, należy usunąć rozszerzenie z maszyny wirtualnej programu SQL Server, usuwając zasób maszyny wirtualnej SQL dla odpowiednich maszyn wirtualnych, a następnie ponownie rejestrując je w rozszerzeniu agenta IaaS SQL. Jeśli usuwasz zasób maszyny wirtualnej SQL, korzystając z portalu Azure, wyczyść pole wyboru obok właściwej maszyny wirtualnej, aby nie usunąć maszyny wirtualnej.

MSDTC

Usługa Azure Virtual Machines obsługuje Koordynatora Transakcji Rozproszonych firmy Microsoft (MSDTC) w systemie Windows Server 2019 z magazynem na klastrowanych udostępnionych woluminach (CSV) oraz przy użyciu standardowego modułu równoważenia obciążenia Azure lub na maszynach wirtualnych SQL Server korzystających z dysków udostępnionych platformy Azure.

Na platformie Azure Virtual Machines usługa MSDTC nie jest obsługiwana w systemie Windows Server 2016 lub starszym z woluminami współdzielonymi w klastrze, ponieważ:

  • Nie można skonfigurować klastrowanego zasobu MSDTC do korzystania z magazynu udostępnionego. W systemie Windows Server 2016, jeśli tworzysz zasób MSDTC, nie wyświetla żadnej udostępnionej pamięci masowej do użycia, nawet jeśli pamięć jest dostępna. Ten problem został rozwiązany w systemie Windows Server 2019.
  • Podstawowy moduł równoważenia obciążenia nie obsługuje portów RPC.