Ajouter ou supprimer des nœuds d’un cluster Service Fabric autonome sous Windows Server

Une fois que vous avez créé votre cluster Service Fabric autonome sur des ordinateurs Windows Server, les besoins de votre entreprise peuvent évoluer et vous obliger à ajouter ou supprimer des nœuds dans votre cluster, comme décrit dans cet article.

Notes

La fonctionnalité d’ajout et de suppression de nœud n’est pas prise en charge dans les clusters de développement locaux.

Ajouter des nœuds à votre cluster

  1. Préparez l’ordinateur ou la machine virtuelle que vous souhaitez ajouter à votre cluster en suivant les étapes décrites dans Planifier et préparer votre déploiement de cluster Service Fabric.

  2. Identifiez le domaine d’erreur et le domaine de mise à niveau auxquels vous allez ajouter cette machine virtuelle ou cet ordinateur.

    Si vous utilisez des certificats pour sécuriser le cluster, ils sont censés être installés dans les magasins de certificats locaux pour préparer la jonction du nœud au cluster. La même chose s’applique quand vous utilisez d’autres formes de sécurité.

  3. Avec Bureau à distance (RDP), accédez à la machine virtuelle ou à l’ordinateur que vous souhaitez ajouter au cluster.

  4. Copiez ou téléchargez le package autonome Service Fabric pour Windows Server sur cette machine virtuelle ou cet ordinateur et décompressez le package.

  5. Exécutez PowerShell avec des privilèges élevés, puis accédez à l’emplacement du package décompressé.

  6. Exécutez le script AddNode.ps1 avec les paramètres qui décrivent le nouveau nœud à ajouter. L’exemple suivant ajoute un nouveau nœud nommé VM5, de type NodeType0, avec l’adresse IP 182.17.34.52, à UD1 et fd:/dc1/r0. ExistingClusterConnectionEndPoint est un point de terminaison de connexion pour un nœud déjà présent dans le cluster existant. Il peut s’agir de l’adresse IP de n’importe quel nœud du cluster.

    Non sécurisé (prototypage) :

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

    Sécurisé (basé sur un certificat) :

    $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
    

    Une fois le script exécuté, vous pouvez vérifier si le nouveau nœud a été ajouté en exécutant la cmdlet Get-ServiceFabricNode.

  7. Pour garantir la cohérence entre les différents nœuds du cluster, vous devez lancer une mise à niveau de la configuration. Exécutez Get-ServiceFabricClusterConfiguration pour obtenir le dernier fichier de configuration et ajoutez le nœud nouvellement ajouté à la section « Nodes ». Il est également recommandé de disposer en permanence de la dernière configuration de cluster disponible au cas où vous devriez redéployer un cluster de même configuration.

    {
        "nodeName": "vm5",
        "iPAddress": "182.17.34.52",
        "nodeTypeRef": "NodeType0",
        "faultDomain": "fd:/dc1/r0",
        "upgradeDomain": "UD1"
    }
    
  8. Exécutez Start-ServiceFabricClusterConfigurationUpgrade pour commencer la mise à niveau.

    Start-ServiceFabricClusterConfigurationUpgrade -ClusterConfigPath <Path to Configuration File>
    

    Vous pouvez surveiller la progression de la mise à niveau avec Service Fabric Explorer. Vous pouvez également exécuter Get-ServiceFabricClusterUpgrade.

Ajouter des nœuds aux clusters configurés avec la sécurité Windows à l’aide de gMSA

Pour les clusters configurés avec un compte de service géré de groupe (gMSA) (https://technet.microsoft.com/library/hh831782.aspx), un nouveau nœud peut être ajouté à l’aide d’une mise à niveau de la configuration :

  1. Exécutez Get-ServiceFabricClusterConfiguration sur l’un des nœuds existants pour obtenir le dernier fichier de configuration, et ajoutez des détails sur le nouveau nœud à ajouter dans la section « Nodes ». Assurez-vous que le nouveau nœud fait partie du même compte géré de groupe. Ce compte doit être un compte Administrateur sur tous les ordinateurs.

    {
        "nodeName": "vm5",
         "iPAddress": "182.17.34.52",
         "nodeTypeRef": "NodeType0",
         "faultDomain": "fd:/dc1/r0",
         "upgradeDomain": "UD1"
    }
    
  2. Exécutez Start-ServiceFabricClusterConfigurationUpgrade pour commencer la mise à niveau.

    Start-ServiceFabricClusterConfigurationUpgrade -ClusterConfigPath <Path to Configuration File>
    

    Vous pouvez surveiller la progression de la mise à niveau avec Service Fabric Explorer. Vous pouvez également exécuter Get-ServiceFabricClusterUpgrade pour cela.

Ajouter des types de nœuds à votre cluster

Pour ajouter un nouveau type de nœud, modifiez votre configuration afin de l’inclure dans la section « NodeTypes », sous « Properties », puis commencez une mise à niveau de la configuration à l’aide de Start-ServiceFabricClusterConfigurationUpgrade. Une fois la mise à niveau effectuée, vous pouvez ajouter de nouveaux nœuds à votre cluster avec ce type de nœud.

Supprimer des nœuds de votre cluster

Pour supprimer un nœud d’un cluster à l’aide d’une mise à niveau de la configuration, procédez comme suit :

  1. Exécutez Get-ServiceFabricClusterConfiguration pour obtenir le dernier fichier de configuration et supprimez le nœud de la section « Nodes ». Ajoutez le paramètre « NodesToBeRemoved » à la section « Setup », dans la section « FabricSettings ». La valeur indiquée sous « value » doit être une liste des noms des nœuds à supprimer, séparés par des virgules.

     "fabricSettings": [
         {
         "name": "Setup",
         "parameters": [
             {
             "name": "FabricDataRoot",
             "value": "C:\\ProgramData\\SF"
             },
             {
             "name": "FabricLogRoot",
             "value": "C:\\ProgramData\\SF\\Log"
             },
             {
             "name": "NodesToBeRemoved",
             "value": "vm0, vm1"
             }
         ]
         }
     ]
    
  2. Exécutez Start-ServiceFabricClusterConfigurationUpgrade pour commencer la mise à niveau.

    Start-ServiceFabricClusterConfigurationUpgrade -ClusterConfigPath <Path to Configuration File>
    

    Vous pouvez surveiller la progression de la mise à niveau avec Service Fabric Explorer. Vous pouvez également exécuter Get-ServiceFabricClusterUpgrade.

Notes

La suppression de nœuds peut entraîner plusieurs mises à niveau. Certains nœuds sont marqués avec la balise IsSeedNode=”true” et peuvent être identifiés en interrogeant le manifeste de cluster à l’aide de Get-ServiceFabricClusterManifest. La suppression de ces nœuds peut prendre plus de temps car, dans ce cas, les nœuds initiaux devront être déplacés. Le cluster doit conserver au moins 3 nœuds de type nœud principal.

Supprimer des types de nœuds de votre cluster

Avant de supprimer un type de nœud, vérifiez s’il existe des nœuds qui référencent le type de nœud concerné. Supprimez ces nœuds avant de supprimer le type de nœud correspondant. Une fois que tous les nœuds correspondants sont supprimés, vous pouvez supprimer le NodeType de la configuration du cluster et commencer une mise à niveau de la configuration à l’aide de Start-ServiceFabricClusterConfigurationUpgrade.

Remplacer les nœuds principaux de votre cluster

Le remplacement des nœuds principaux doit être effectué un nœud à la fois, au lieu de supprimer, puis d’ajouter des nœuds par lots.

Étapes suivantes