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 używa funkcji klastra trybu failover systemu Windows Server (WSFC), aby zapewnić lokalną wysoką dostępność dzięki nadmiarowości na poziomie wystąpienia serwera: wystąpienia klastra trybu failover. Wystąpienie klastra trybu failover to pojedyncze wystąpienie programu SQL Server, które jest instalowane w węzłach WSFC (lub po prostu klastrze) i, ewentualnie, w wielu podsieciach. W sieci wystąpienie klastra trybu failover wydaje się być pojedynczym wystąpieniem programu SQL Server uruchomionym na jednym komputerze. Jednak interfejs FCI zapewnia tryb failover z jednego węzła WSFC do innego, 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 trybu failover, zobacz:
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, zobacz Migrowanie wystąpienia klastra trybu failover.
Kworum
Wystąpienia klastra trybu failover z programem SQL Server na maszynach wirtualnych platformy Azure obsługują monitor dysku, monitor w chmurze lub monitor 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).
Storage
W tradycyjnych środowiskach klastrowanych lokalnych klaster trybu failover systemu Windows używa sieci magazynowania (SAN), która jest dostępna dla wszystkich węzłów jako magazynu udostępnionego. 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.
Program SQL Server na maszynach wirtualnych platformy Azure oferuje różne opcje jako rozwiązanie magazynu udostępnionego dla wdrożenia wystąpień klastra trybu failover programu SQL Server:
Dyski udostępnione platformy Azure | Udziały plików w warstwie Premium | Miejsca do magazynowania 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 | Magazyn LRS SSD w warstwie Premium: zestawy dostępności z grupą umieszczania w pobliżu lub bez tej grupy Magazyn ZRS SSD w warstwie Premium: strefy dostępności Dyski w warstwie 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 element FileStream | Tak | Nie | Tak | Nie. |
Obsługuje witrynę 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ępnione 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że migrować aplikacje klastrowane na platformę Azure, ponieważ są obsługiwane rezerwacje trwałe SCSI (SCSI PR).
- Obsługuje współużytkowany dysk SSD Azure w warstwie Premium i magazyn Azure Ultra Disk.
- Może użyć jednego dysku udostępnionego lub usunąć wiele dysków udostępnionych, aby utworzyć udostępnioną pulę magazynów.
- Obsługuje element FILESTREAM.
- Dyski SSD w warstwie Premium obsługują zestawy dostępności.
- Magazyn strefowo nadmiarowy (ZRS) w warstwie Premium obsługuje strefy dostępności. Maszyny wirtualne częścią wystąpienia klastra trybu failover można umieścić 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 Standardowa, nie zalecamy używania dysków SSD w warstwie Standardowa dla obciążeń programu SQL Server z powodu ograniczeń wydajności.
Ograniczenia:
- Buforowanie dysków SSD w warstwie Premium nie jest obsługiwane.
- Dyski w warstwie 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 w warstwie Ultra, ale maszyny wirtualne muszą znajdować się w tej samej strefie dostępności, co zmniejsza dostępność maszyny wirtualnej do 99,9%.
Aby rozpocząć, zobacz Konfigurowanie wystąpienia klastra trybu failover z dyskami udostępnionymi platformy Azure.
Bezpośrednie miejsca do magazynowania
Miejsca do magazynowania Direct to funkcja systemu Windows Server obsługiwana przez klaster trybu failover 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 magazynu udostępnionego.
- 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 element 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 usługi Miejsca do magazynowania Direct.
Udział plików w warstwie Premium
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 mają stale małe opóźnienia. 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ż można zmieniać rozmiar i skalować udział plików 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ółużytkowanego dla maszyn wirtualnych rozłożone na wiele stref dostępności.
- W pełni zarządzany system plików z opóźnieniami jednocyfrowymi i wydajnością operacji we/wy z możliwością zwiększenia wydajności.
- 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 trybu failover przy użyciu udziału plików w warstwie 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.
Uwaga
Konfigurowanie wystąpienia klastra trybu failover przy użyciu elastycznej sieci SAN platformy Azure jest obecnie w wersji zapoznawczej dla programu SQL Server na maszynach wirtualnych platformy Azure.
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 magazynu i dynamiczne udostępnianie wydajności — można zaoszczędzić na kosztach, konsolidując obciążenia o niskiej wydajności do średniej warstwy przy użyciu obciążeń programu SQL Server, ponieważ pula magazynów jest aprowizowana na poziomie sieci 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 rozebrać wiele udostępnionych woluminów w celu utworzenia udostępnionej puli magazynów.
- Magazyn strefowo nadmiarowy elastycznej sieci SAN obsługuje strefy dostępności. Maszyny wirtualne częścią wystąpienia klastra trybu failover można umieścić w różnych strefach dostępności.
Ograniczenia:
- Monitor w chmurze nie jest obecnie obsługiwany.
- Nie obsługuje obciążeń opóźnienia podrzędnego.
- 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 przykładzie użyto usługi DataKeeper SIOS jako magazynu. Aby uzyskać więcej informacji, zobacz wpis w blogu Klaster trybu failover i SIOS DataKeeper.
iSCSI i ExpressRoute
Za pośrednictwem usługi Azure ExpressRoute można również uwidocznić docelowy magazyn blokowy obiektów docelowych 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 dopasować środowisko lokalne do nawiązywania połączenia z wystąpieniem klastra trybu failover, wdróż maszyny wirtualne programu SQL Server w wielu podsieciach w tej samej sieci wirtualnej. Posiadanie wielu podsieci neguje potrzebę dodatkowej zależności od usługi Azure Load Balancer lub rozproszonej nazwy sieci (DNN) do kierowania ruchu do wystąpienia klastra trybu failover.
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.
Zalecana jest nazwa sieci rozproszonej, jeśli jest to możliwe, ponieważ tryb failover jest szybszy, a koszty związane z zarządzaniem modułem równoważenia obciążenia są wyeliminowane.
Większość funkcji programu SQL Server działa w sposób niewidoczny dla wystąpienia klastra trybu failover podczas korzystania z nazwy sieci rozproszonej, ale istnieją pewne funkcje, które mogą wymagać szczególnej uwagi. Aby uzyskać więcej informacji, zobacz Współdziałanie wystąpienia klastra trybu failover i nazwy sieci rozproszonej.
Uwaga
Jeśli masz wiele grup dostępności lub wystąpień klastra trybu failover w tym samym klastrze i używasz odbiornika sieci rozproszonej lub sieci wirtualnej, 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 trybu failover programu SQL Server na maszynach wirtualnych platformy Azure zarejestrowanych w rozszerzeniu agenta IaaS sql obsługują tylko ograniczoną liczbę funkcji dostępnych za pośrednictwem rejestracji podstawowej, a nie tych, które wymagają agenta, 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 przy użyciu witryny Azure Portal, wyczyść pole wyboru obok właściwej maszyny wirtualnej, aby uniknąć usunięcia maszyny wirtualnej.
MSDTC
Usługa Azure Virtual Machines obsługuje koordynatora transakcji rozproszonych firmy Microsoft (MSDTC) w systemie Windows Server 2019 z magazynem w klastrowanych udostępnionych woluminach (CSV) i na usługa Load Balancer w warstwie Standardowa maszynach wirtualnych programu SQL Server korzystających z dysków udostępnionych platformy Azure.
W usłudze Azure Virtual Machines usługa MSDTC nie jest obsługiwana w systemie Windows Server 2016 lub starszym z udostępnionymi woluminami klastra, 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 żadnego udostępnionego magazynu dostępnego do użycia, nawet jeśli magazyn jest dostępny. Ten problem został rozwiązany w systemie Windows Server 2019.
- Podstawowy moduł równoważenia obciążenia nie obsługuje portów RPC.
Powiązana zawartość
- Najlepsze rozwiązania dotyczące konfiguracji wysokiej dostępności i odzyskiwania po awarii (program SQL Server na maszynach wirtualnych platformy Azure)
- Przygotowywanie maszyn wirtualnych do wystąpienia klastra trybu failover (SQL Server na maszynach wirtualnych platformy Azure)
- Klaster trybu failover systemu Windows Server z programem SQL Server na maszynach wirtualnych platformy Azure
- Omówienie wystąpienia klastra trybu failover