Dodawanie węzłów do autonomicznego klastra usługi Service Fabric uruchomionego na serwerze Windows Server lub usuwanie go

Po utworzeniu autonomicznego klastra usługi Service Fabric na maszynach z systemem Windows Server twoje (biznesowe) potrzeby mogą ulec zmianie i konieczne będzie dodanie lub usunięcie węzłów do klastra zgodnie z opisem w tym artykule.

Uwaga

Funkcje dodawania i usuwania węzłów nie są obsługiwane w lokalnych klastrach deweloperskich.

Dodawanie węzłów do klastra

  1. Przygotuj maszynę wirtualną/maszynę, którą chcesz dodać do klastra, wykonując kroki opisane w temacie Planowanie i przygotowywanie wdrożenia klastra usługi Service Fabric.

  2. Określ domenę błędów i domenę uaktualnienia, do której chcesz dodać tę maszynę wirtualną/maszynę.

    Jeśli używasz certyfikatów do zabezpieczenia klastra, certyfikaty powinny być instalowane w lokalnych magazynach certyfikatów w ramach przygotowań do przyłączenia węzła do klastra. Analogia ma zastosowanie w przypadku korzystania z innych form zabezpieczeń.

  3. Pulpit zdalny (RDP) do maszyny wirtualnej/maszyny, którą chcesz dodać do klastra.

  4. Skopiuj lub pobierz pakiet autonomiczny dla usługi Service Fabric dla systemu Windows Server do maszyny wirtualnej/maszyny i rozpakuj pakiet.

  5. Uruchom program PowerShell z podwyższonym poziomem uprawnień i przejdź do lokalizacji rozpakowanego pakietu.

  6. Uruchom skrypt AddNode.ps1 z parametrami opisującym nowy węzeł, aby dodać. W poniższym przykładzie dodano nowy węzeł o nazwie VM5 z typem NodeType0 i adresem IP 182.17.34.52 do ud1 i fd:/dc1/r0. ExistingClusterConnectionEndPoint jest punktem końcowym połączenia dla węzła już w istniejącym klastrze, który może być adresem IP dowolnego węzła w klastrze.

    Niezabezpieczone (prototypowanie):

    .\AddNode.ps1 -NodeName VM5 -NodeType NodeType0 -NodeIPAddressorFQDN 182.17.34.52 -ExistingClientConnectionEndpoint 182.17.34.50:19000 -UpgradeDomain UD1 -FaultDomain fd:/dc1/r0 -AcceptEULA
    

    Bezpieczny (oparty na certyfikatach):

    $CertThumbprint= "***********************"
    
    .\AddNode.ps1 -NodeName VM5 -NodeType NodeType0 -NodeIPAddressorFQDN 182.17.34.52 -ExistingClientConnectionEndpoint 182.17.34.50:19000 -UpgradeDomain UD1 -FaultDomain fd:/dc1/r0 -X509Credential -ServerCertThumbprint $CertThumbprint  -AcceptEULA
    

    Po zakończeniu działania skryptu można sprawdzić, czy nowy węzeł został dodany, uruchamiając polecenie cmdlet Get-ServiceFabricNode .

  7. Aby zapewnić spójność między różnymi węzłami w klastrze, należy zainicjować uaktualnienie konfiguracji. Uruchom polecenie Get-ServiceFabricClusterConfiguration , aby pobrać najnowszy plik konfiguracji i dodać nowo dodany węzeł do sekcji "Węzły". Zaleca się również, aby zawsze mieć najnowszą konfigurację klastra dostępną w przypadku konieczności ponownego wdrożenia klastra, który ma tę samą konfigurację.

    {
        "nodeName": "vm5",
        "iPAddress": "182.17.34.52",
        "nodeTypeRef": "NodeType0",
        "faultDomain": "fd:/dc1/r0",
        "upgradeDomain": "UD1"
    }
    
  8. Uruchom polecenie Start-ServiceFabricClusterConfigurationUpgrade , aby rozpocząć uaktualnianie.

    Start-ServiceFabricClusterConfigurationUpgrade -ClusterConfigPath <Path to Configuration File>
    

    Postęp uaktualniania można monitorować w Service Fabric Explorer. Alternatywnie można uruchomić polecenie Get-ServiceFabricClusterUpgrade.

Dodawanie węzłów do klastrów skonfigurowanych przy użyciu Zabezpieczenia Windows przy użyciu usługi gMSA

W przypadku klastrów skonfigurowanych przy użyciu konta usługi zarządzanej przez grupę (gMSA)(https://technet.microsoft.com/library/hh831782.aspx) można dodać nowy węzeł przy użyciu uaktualnienia konfiguracji:

  1. Uruchom polecenie Get-ServiceFabricClusterConfiguration na dowolnym z istniejących węzłów, aby uzyskać najnowszy plik konfiguracji i dodać szczegółowe informacje o nowym węźle, który chcesz dodać w sekcji "Węzły". Upewnij się, że nowy węzeł jest częścią tego samego konta zarządzanego przez grupę. To konto powinno być administratorem na wszystkich maszynach.

    {
        "nodeName": "vm5",
         "iPAddress": "182.17.34.52",
         "nodeTypeRef": "NodeType0",
         "faultDomain": "fd:/dc1/r0",
         "upgradeDomain": "UD1"
    }
    
  2. Uruchom polecenie Start-ServiceFabricClusterConfigurationUpgrade , aby rozpocząć uaktualnianie.

    Start-ServiceFabricClusterConfigurationUpgrade -ClusterConfigPath <Path to Configuration File>
    

    Postęp uaktualniania można monitorować w Service Fabric Explorer. Alternatywnie można uruchomić polecenie Get-ServiceFabricClusterUpgrade

Dodawanie typów węzłów do klastra

Aby dodać nowy typ węzła, zmodyfikuj konfigurację tak, aby zawierała nowy typ węzła w sekcji "NodeTypes" w obszarze "Właściwości" i rozpocznij uaktualnianie konfiguracji przy użyciu polecenia Start-ServiceFabricClusterConfigurationUpgrade. Po zakończeniu uaktualniania można dodać nowe węzły do klastra przy użyciu tego typu węzła.

Usuwanie węzłów z klastra

Węzeł można usunąć z klastra przy użyciu uaktualnienia konfiguracji w następujący sposób:

  1. Uruchom polecenie Get-ServiceFabricClusterConfiguration , aby pobrać najnowszy plik konfiguracji i usunąć węzeł z sekcji "Węzły". Dodaj parametr "NodesToBeRemoved" do sekcji "Setup" w sekcji "FabricSettings". Wartość powinna być rozdzielaną przecinkami listą nazw węzłów węzłów, które należy usunąć.

     "fabricSettings": [
         {
         "name": "Setup",
         "parameters": [
             {
             "name": "FabricDataRoot",
             "value": "C:\\ProgramData\\SF"
             },
             {
             "name": "FabricLogRoot",
             "value": "C:\\ProgramData\\SF\\Log"
             },
             {
             "name": "NodesToBeRemoved",
             "value": "vm0, vm1"
             }
         ]
         }
     ]
    
  2. Uruchom polecenie Start-ServiceFabricClusterConfigurationUpgrade , aby rozpocząć uaktualnianie.

    Start-ServiceFabricClusterConfigurationUpgrade -ClusterConfigPath <Path to Configuration File>
    

    Postęp uaktualniania można monitorować w Service Fabric Explorer. Alternatywnie można uruchomić polecenie Get-ServiceFabricClusterUpgrade.

Uwaga

Usunięcie węzłów może zainicjować wiele uaktualnień. Niektóre węzły są oznaczone tagiem IsSeedNode=”true” i można je zidentyfikować, wysyłając zapytanie do manifestu klastra przy użyciu polecenia Get-ServiceFabricClusterManifest. Usunięcie takich węzłów może potrwać dłużej niż inne, ponieważ węzły początkowe będą musiały zostać przeniesione w takich scenariuszach. Klaster musi obsługiwać co najmniej 3 węzły typu węzła podstawowego.

Usuwanie typów węzłów z klastra

Przed usunięciem typu węzła sprawdź, czy istnieją jakieś węzły odwołujące się do typu węzła. Usuń te węzły przed usunięciem odpowiedniego typu węzła. Po usunięciu wszystkich odpowiednich węzłów można usunąć element NodeType z konfiguracji klastra i rozpocząć uaktualnienie konfiguracji przy użyciu polecenia Start-ServiceFabricClusterConfigurationUpgrade.

Zamień węzły podstawowe klastra

Zamiana węzłów podstawowych powinna być wykonywana po jednym węźle, zamiast usuwać, a następnie dodawać w partiach.

Następne kroki