Tworzenie wystąpienia klastra trybu failover za pomocą usługi Miejsca do magazynowania Direct (program SQL Server na maszynach wirtualnych platformy Azure)

Dotyczy:SQL Server na maszynie wirtualnej platformy Azure

Napiwek

Istnieje wiele metod wdrażania grupy dostępności. Uprość wdrażanie i eliminuje konieczność korzystania z usługi Azure Load Balancer lub rozproszonej nazwy sieci (DNN) dla zawsze włączonej grupy dostępności, tworząc maszyny wirtualne programu SQL Server w wielu podsieciach w tej samej sieci wirtualnej platformy Azure. Jeśli grupa dostępności została już utworzona w jednej podsieci, możesz ją zmigrować do środowiska z wieloma podsieciami.

W tym artykule wyjaśniono, jak utworzyć wystąpienie klastra trybu failover (FCI) przy użyciu Miejsca do magazynowania Direct z programem SQL Server na maszynach wirtualnych platformy Azure. Miejsca do magazynowania Direct działa jako programowa sieć magazynu wirtualnego (VSAN), która synchronizuje magazyn (dyski danych) między węzłami (maszynami wirtualnymi platformy Azure) w klastrze systemu Windows.

Aby dowiedzieć się więcej, zobacz omówienie wystąpienia klastra trybu failover z programem SQL Server na maszynach wirtualnych platformy Azure i najlepszych rozwiązaniach dotyczących klastrów.

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.

Omówienie

usługa Miejsca do magazynowania Direct (S2D) obsługuje dwa typy architektur: zbieżne i hiperkonwergentne. Infrastruktura hiperkonwergentna umieszcza magazyn na tych samych serwerach, które hostuje aplikację klastrowaną, dzięki czemu magazyn znajduje się w każdym węźle wystąpienia klastra trybu failover programu SQL Server.

Na poniższym diagramie przedstawiono kompletne rozwiązanie, które korzysta z hiperkonwergentnego Miejsca do magazynowania Direct z programem SQL Server na maszynach wirtualnych platformy Azure:

Diagram kompletnego rozwiązania korzystającego z hiperkonwergentnego Miejsca do magazynowania Direct

Na powyższym diagramie przedstawiono następujące zasoby w tej samej grupie zasobów:

  • Dwie maszyny wirtualne w klastrze trybu failover systemu Windows Server. Gdy maszyna wirtualna znajduje się w klastrze trybu failover, jest również nazywana węzłem klastra lub węzłem.
  • Każda maszyna wirtualna ma co najmniej dwa dyski danych.
  • Miejsca do magazynowania Direct synchronizuje dane na dyskach danych i przedstawia zsynchronizowany magazyn jako pulę magazynów.
  • Pula magazynów przedstawia udostępniony wolumin klastra (CSV) do klastra trybu failover.
  • Rola klastra klastra trybu failover programu SQL Server używa woluminu CSV dla dysków danych.
  • Moduł równoważenia obciążenia platformy Azure do przechowywania adresu IP dla wystąpienia klastra trybu failover programu SQL Server dla scenariusza pojedynczej podsieci.
  • Zestaw dostępności platformy Azure przechowuje wszystkie zasoby.

Uwaga

To całe rozwiązanie można utworzyć na platformie Azure na podstawie szablonu. Przykład szablonu jest dostępny na stronie szablonów szybkiego startu platformy Azure w usłudze GitHub. W tym przykładzie nie zaprojektowano ani nie przetestowano pod kątem konkretnego obciążenia. Możesz uruchomić szablon, aby utworzyć wystąpienie klastra trybu failover programu SQL Server z magazynem bezpośrednim Miejsca do magazynowania połączonym z domeną. Możesz ocenić szablon i zmodyfikować go do Twoich celów.

Wymagania wstępne

Przed wykonaniem instrukcji opisanych w tym artykule należy mieć już następujące elementy:

Tworzenie klastra trybu failover systemu Windows

Kroki tworzenia klastra trybu failover systemu Windows Server różnią się w zależności od tego, czy maszyny wirtualne programu SQL Server zostały wdrożone w jednej podsieci lub w wielu podsieciach. Aby utworzyć klaster, wykonaj kroki opisane w samouczku dotyczącym scenariusza z wieloma podsieciami lub pojedynczej podsieci. Chociaż te samouczki służą do tworzenia grupy dostępności, kroki tworzenia klastra są takie same.

Konfigurowanie kworum

Mimo że monitor dysku jest najbardziej odporną opcją kworum, nie jest obsługiwany w przypadku wystąpień klastra trybu failover skonfigurowanych przy użyciu usługi Miejsca do magazynowania Direct. W związku z tym monitor w chmurze jest zalecanym rozwiązaniem kworum dla tego typu konfiguracji klastra dla programu SQL Server na maszynach wirtualnych platformy Azure.

Jeśli masz parzystą liczbę głosów w klastrze, skonfiguruj rozwiązanie kworum, które najlepiej odpowiada twoim potrzebom biznesowym. Aby uzyskać więcej informacji, zobacz Kworum z maszynami wirtualnymi programu SQL Server.

Weryfikowanie klastra

Zweryfikuj klaster w interfejsie użytkownika Menedżera klastra trybu failover lub przy użyciu programu PowerShell.

Aby zweryfikować klaster przy użyciu interfejsu użytkownika, wykonaj następujące czynności na jednej z maszyn wirtualnych:

  1. W obszarze Menedżer serwera wybierz pozycję Narzędzia, a następnie wybierz pozycję Menedżer klastra trybu failover.

  2. W obszarze Menedżer klastra trybu failover wybierz pozycję Akcja, a następnie wybierz pozycję Weryfikuj konfigurację.

  3. Wybierz Dalej.

  4. W obszarze Wybierz serwery lub klaster wprowadź nazwy obu maszyn wirtualnych.

  5. W obszarze Opcje testowania wybierz pozycję Uruchom tylko testy, które wybieram.

  6. Wybierz Dalej.

  7. W obszarze Wybór testu zaznacz wszystkie testy z wyjątkiem magazynu, jak pokazano poniżej:

    Wybieranie testów weryfikacji klastra

  8. Wybierz Dalej.

  9. W obszarze Potwierdzenie wybierz pozycję Dalej.

    Kreator weryfikowania konfiguracji uruchamia testy weryfikacyjne.

Aby zweryfikować klaster przy użyciu programu PowerShell, uruchom następujący skrypt z sesji programu PowerShell administratora na jednej z maszyn wirtualnych:

Test-Cluster –Node ("<node1>","<node2>") –Include "Storage Spaces Direct", "Inventory", "Network", "System Configuration"

Dodawanie magazynu

Dyski Miejsca do magazynowania Direct muszą być puste. Nie mogą zawierać partycji ani innych danych. Aby wyczyścić dyski, postępuj zgodnie z instrukcjami w temacie Deploy Miejsca do magazynowania Direct (Wdrażanie Miejsca do magazynowania Direct).

  1. Włącz Miejsca do magazynowania Direct.

    Następujący skrypt programu PowerShell umożliwia Miejsca do magazynowania Direct:

    Enable-ClusterS2D
    

    W Menedżerze klastra trybu failover można teraz zobaczyć pulę magazynów.

  2. Utwórz wolumin.

    Miejsca do magazynowania Direct automatycznie tworzy pulę magazynów po jej włączeniu. Teraz możesz utworzyć wolumin. Polecenie cmdlet New-Volume programu PowerShell automatyzuje proces tworzenia woluminu. Ten proces obejmuje formatowanie, dodawanie woluminu do klastra i tworzenie woluminu CSV. W tym przykładzie jest tworzony plik CSV o pojemności 800 gigabajtów (GB):

    New-Volume -StoragePoolFriendlyName S2D* -FriendlyName VDisk01 -FileSystem CSVFS_REFS -Size 800GB
    

    Po uruchomieniu poprzedniego polecenia wolumin 800 GB jest instalowany jako zasób klastra. Wolumin ma wartość C:\ClusterStorage\Volume1\.

    Ten zrzut ekranu przedstawia plik CSV z Miejsca do magazynowania Direct:

    Zrzut ekranu przedstawiający udostępniony wolumin klastra z usługą Miejsca do magazynowania Direct

Testowanie trybu failover klastra

Przetestuj tryb failover klastra. W Menedżerze klastra trybu failover kliknij prawym przyciskiem myszy klaster, wybierz pozycję Więcej akcji>Przenieś podstawowy zasób>klastra Wybierz węzeł, a następnie wybierz inny węzeł klastra. Przenieś zasób klastra podstawowego do każdego węzła klastra, a następnie przenieś go z powrotem do węzła podstawowego. Jeśli możesz pomyślnie przenieść klaster do każdego węzła, możesz zainstalować program SQL Server.

Testowanie trybu failover klastra przez przeniesienie podstawowego zasobu do innych węzłów

Tworzenie wystąpienia klastra trybu failover programu SQL Server

Po skonfigurowaniu klastra trybu failover i wszystkich składników klastra, w tym magazynu, można utworzyć wystąpienie klastra trybu failover programu SQL Server.

  1. Połączenie do pierwszej maszyny wirtualnej przy użyciu protokołu RDP.

  2. W Menedżerze klastra trybu failover upewnij się, że wszystkie podstawowe zasoby klastra znajdują się na pierwszej maszynie wirtualnej. W razie potrzeby przenieś wszystkie zasoby do tej maszyny wirtualnej.

  3. Jeśli wersja systemu operacyjnego to Windows Server 2019, a klaster systemu Windows został utworzony przy użyciu domyślnej nazwy rozproszonej sieci (DNN), instalacja wystąpienia klastra trybu failover dla programu SQL Server 2017 i poniżej zakończy się niepowodzeniem z powodu błędu The given key was not present in the dictionary.

    Podczas instalacji program SQL Server konfiguruje zapytania dotyczące istniejącej nazwy sieci wirtualnej (VNN) i nie rozpoznaje nazwy sieci rozproszonej klastra systemu Windows. Problem został rozwiązany w konfiguracji programu SQL Server 2019. W przypadku programu SQL Server 2017 i poniżej wykonaj następujące kroki, aby uniknąć błędu instalacji:

    • W Menedżerze klastra trybu failover połącz się z klastrem, kliknij prawym przyciskiem myszy pozycję Role i wybierz pozycję Utwórz pustą rolę.
    • Kliknij prawym przyciskiem myszy nowo utworzoną pustą rolę, wybierz pozycję Dodaj zasób i wybierz pozycję Punkt dostępu klienta.
    • Wprowadź dowolną nazwę i ukończ pracę kreatora, aby utworzyć punkt dostępu klienta.
    • Po zakończeniu instalacji wystąpienia klastra trybu failover programu SQL Server można usunąć rolę zawierającą tymczasowy punkt dostępu klienta.
  4. Znajdź nośnik instalacyjny. Jeśli maszyna wirtualna używa jednego z obrazów witryny Azure Marketplace, nośnik znajduje się w lokalizacji C:\SQLServer_<version number>_Full. Wybierz pozycję Konfiguracja.

  5. W Centrum instalacji programu SQL Server wybierz pozycję Instalacja.

  6. Wybierz pozycję Nowa instalacja klastra trybu failover programu SQL Server. Postępuj zgodnie z instrukcjami kreatora, aby zainstalować wystąpienie klastra trybu failover programu SQL Server.

  7. Na stronie Konfiguracja sieci klastra adres IP, który podajesz, różni się w zależności od tego, czy maszyny wirtualne programu SQL Server zostały wdrożone w jednej podsieci lub w wielu podsieciach.

    1. W przypadku środowiska pojedynczej podsieci podaj adres IP, który chcesz dodać do usługi Azure Load Balancer
    2. W przypadku środowiska z wieloma podsieciami podaj pomocniczy adres IP w podsieci pierwszej maszyny wirtualnej programu SQL Server, która została wcześniej wyznaczona jako adres IP nazwy sieci wystąpienia klastra trybu failover:

    podaj pomocniczy adres IP w podsieci pierwszej maszyny wirtualnej programu SQL Server, która została wcześniej wyznaczona jako adres IP nazwy sieciowej wystąpienia klastra trybu failover

  8. W konfiguracji aparatu bazy danych katalogi danych wystąpienia klastra muszą znajdować się w magazynie klastra. W przypadku Miejsca do magazynowania Direct nie jest to dysk udostępniony, ale punkt instalacji woluminu na każdym serwerze. Miejsca do magazynowania Direct synchronizuje wolumin między obydwoma węzłami. Wolumin jest przedstawiany klastrowi jako wolumin CSV. Użyj punktu instalacji CSV dla katalogów danych.

    Katalogi danych

  9. Po wykonaniu instrukcji w kreatorze instalator zainstaluje wystąpienie klastra trybu failover programu SQL Server w pierwszym węźle.

  10. Po pomyślnym zakończeniu instalacji wystąpienia klastra trybu failover w pierwszym węźle połącz się z drugim węzłem przy użyciu protokołu RDP.

  11. Otwórz Centrum instalacji programu SQL Server. Wybierz pozycję Instalacja.

  12. Wybierz pozycję Dodaj węzeł do klastra trybu failover programu SQL Server. Postępuj zgodnie z instrukcjami kreatora, aby zainstalować program SQL Server i dodać węzeł do wystąpienia klastra trybu failover.

  13. W przypadku scenariusza z wieloma podsieciami w konfiguracji sieci klastra wprowadź pomocniczy adres IP w podsieci drugiej maszyny wirtualnej programu SQL Server, która została wcześniej wyznaczona jako adres IP nazwy sieciowej wystąpienia klastra trybu failover

    Wprowadź pomocniczy adres IP w podsieci drugiej podsieci maszyny wirtualnej programu SQL Server, która została wcześniej wyznaczona jako adres IP nazwy sieci wystąpienia klastra trybu failover

    Po wybraniu pozycji Dalej w konfiguracji sieci klastra zostanie wyświetlone okno dialogowe wskazujące, że instalator programu SQL Server wykrył wiele podsieci, jak na przykładowym obrazie. Wybierz Tak, aby potwierdzić.

    Potwierdzenie wielu podsieci

  14. Po wykonaniu instrukcji w kreatorze instalator dodaje drugi węzeł wystąpienia klastra trybu failover programu SQL Server.

  15. Powtórz te kroki we wszystkich innych węzłach, które chcesz dodać do wystąpienia klastra trybu failover programu SQL Server.

Uwaga

Obrazy galerii witryny Azure Marketplace są dostarczane z zainstalowanym programem SQL Server Management Studio. Jeśli nie użyto obrazu z witryny Marketplace Pobierz program SQL Server Management Studio (SSMS).

Rejestrowanie przy użyciu rozszerzenia agenta IaaS sql

Aby zarządzać maszyną wirtualną z programem SQL Server z poziomu portalu, zarejestruj ją w rozszerzeniu agenta IaaS SQL. Należy pamiętać, że tylko ograniczone funkcje będą dostępne na maszynach wirtualnych SQL, które mają wystąpienia klastra trybu failover programu SQL Server (FCI).

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, musisz wyrejestrować maszynę wirtualną z programu SQL Server z rozszerzenia i zarejestrować ją ponownie po zainstalowaniu wystąpienia klastra trybu failover.

Rejestrowanie maszyny wirtualnej z programem SQL Server przy użyciu programu PowerShell (typ licencji może mieć wartość PAYG lub AHUB):

# Get the existing compute VM
$vm = Get-AzVM -Name <vm_name> -ResourceGroupName <resource_group_name>
         
# Register SQL VM with SQL IaaS Agent extension
New-AzSqlVM -Name $vm.Name -ResourceGroupName $vm.ResourceGroupName -Location $vm.Location `
   -LicenseType <license_type>

Konfigurowanie łączności

Jeśli maszyny wirtualne programu SQL Server zostały wdrożone w wielu podsieciach, pomiń ten krok. Jeśli maszyny wirtualne programu SQL Server zostały wdrożone w jednej podsieci, należy skonfigurować dodatkowy składnik do kierowania ruchu do wystąpienia klastra trybu failover. Nazwę sieci wirtualnej (VNN) można skonfigurować przy użyciu usługi Azure Load Balancer lub nazwy sieci rozproszonej dla wystąpienia klastra trybu failover. Przejrzyj różnice między nimi , a następnie wdróż nazwę sieci rozproszonej lub nazwę sieci wirtualnej oraz usługę Azure Load Balancer dla wystąpienia klastra trybu failover.

Ograniczenia

  • Maszyny wirtualne platformy Azure obsługują program Microsoft Distributed Transaction Coordinator (MSDTC) w systemie Windows Server 2019 z magazynem na woluminach CSV i standardowym modułem równoważenia obciążenia. Usługa MSDTC nie jest obsługiwana w systemie Windows Server 2016 i starszych wersjach.
  • Dyski, które zostały dołączone jako dyski sformatowane ntfs, mogą być używane z Miejsca do magazynowania Direct tylko wtedy, gdy opcja uprawnień dysku jest niezaznaczona lub czyszczona, gdy magazyn jest dodawany do klastra.
  • Wystąpienia klastrów trybu failover programu SQL Server zarejestrowane w rozszerzeniu agenta IaaS sql nie obsługują funkcji wymagających agenta, takich jak automatyczne tworzenie kopii zapasowych, stosowanie poprawek, uwierzytelnianie Microsoft Entra i zaawansowane zarządzanie portalem. Aby uzyskać więcej informacji, zobacz tabelę korzyści .
  • Wystąpienia klastra trybu failover korzystające z usługi Miejsca do magazynowania Direct, ponieważ magazyn udostępniony nie obsługuje używania monitora dysku dla kworum klastra. Zamiast tego użyj monitora w chmurze.

Następne kroki

Jeśli Miejsca do magazynowania Direct nie jest odpowiednim rozwiązaniem magazynu wystąpienia klastra trybu failover, rozważ utworzenie wystąpienia klastra trybu failover przy użyciu dysków udostępnionych platformy Azure lub udziałów plików w warstwie Premium.

Aby dowiedzieć się więcej, zobacz: