Types de nœuds de cluster managés Service Fabric

Chaque type de nœud d’un cluster managé Service Fabric est adossé à un groupe de machines virtuelles identiques. Avec les clusters managés, vous apportez toutes les modifications requises par le biais du fournisseur de ressources de cluster managé Service Fabric. Toutes les ressources sous-jacentes pour le cluster sont créées et abstraites par le fournisseur de cluster managé en votre nom. Le fait que le fournisseur de ressources gère les ressources permet de simplifier le déploiement et la gestion du type de nœud de cluster, d’éviter des erreurs d’opération telles que la suppression d’un nœud de départ, et l’application de meilleures pratiques, telles que la validation d’une référence SKU de machine virtuelle, peut être utilisée en toute sécurité.

Le reste de ce document explique comment ajuster différents paramètres lors de la création d’un type de nœud, de l’ajustement du nombre d’instances du type de nœud, de l’activation des mises à niveau automatiques de l’image du système d’exploitation, de la modification de l’image du système d’exploitation et de la configuration des propriétés de sélection élective. Ce document se concentre également sur l’utilisation du Portail Azure ou de modèles Azure Resource Manager pour apporter des modifications.

Important

À ce stade, les clusters managés Service Fabric ne prennent pas en charge les images de système d’exploitation personnalisées.

Notes

Vous n’êtes pas en mesure de modifier le type de nœud lorsqu’une modification est en cours. Il est recommandé de laisser toutes les modifications demandées se terminer avant d’en apporter d’autres.

Ajouter un type de nœud

Vous pouvez ajouter un type de nœud à un cluster managé Service Fabric à l’aide du portail, d’un modèle Azure Resource Manager ou de PowerShell.

Ajouter avec le portail

Notes

Vous pouvez ajouter uniquement des types de nœuds secondaires à l’aide du portail

  1. Connectez-vous au portail Azure.

  2. Accédez à la page Vue d’ensemble de votre ressource de cluster. Exemple de page Vue d’ensemble

  3. Sélectionnez Node types dans la section SettingsAffichage Types de nœuds

  4. Cliquez sur Add en haut, renseignez les informations requises, puis cliquez sur Ajouter en bas et c’est tout !

  5. Attendez la fin de l’ajout du nouveau type de nœud.

Ajouter avec un modèle ARM

Ajoutez un autre type de ressource Microsoft.ServiceFabric/managedclusters/nodetypes avec les valeurs requises et effectuez un déploiement de cluster pour que le paramètre prenne effet.

  • L’apiVersion de la ressource de cluster managé Service Fabric doit être 2021-05-01 ou ultérieure.
  • Veillez à affecter la valeur true à isPrimary si vous envisagez de remplacer un type de nœud principal existant.
{
    "apiVersion": "[variables('sfApiVersion')]",
    "type": "Microsoft.ServiceFabric/managedclusters/nodetypes",
    "name": "[concat(parameters('clusterName'), '/', parameters('nodeType2Name'))]",
    "location": "[resourcegroup().location]",
    "dependsOn": [
        "[concat('Microsoft.ServiceFabric/managedclusters/', parameters('clusterName'))]"
    ],
    "properties": {
        "isPrimary": false,
        "vmImagePublisher": "[parameters('vmImagePublisher')]",
        "vmImageOffer": "[parameters('vmImageOffer')]",
        "vmImageSku": "[parameters('vmImageSku')]",
        "vmImageVersion": "[parameters('vmImageVersion')]",
        "vmSize": "[parameters('nodeType2VmSize')]",
        "vmInstanceCount": "[parameters('nodeType2VmInstanceCount')]",
        "dataDiskSizeGB": "[parameters('nodeType2DataDiskSizeGB')]",
        "dataDiskType": "[parameters('nodeType2managedDataDiskType')]"
    }
}

Pour obtenir un exemple de configuration à deux types de nœuds, consultez notre exemple de modèle ARM à deux types de nœuds.

Ajouter avec PowerShell

Pour créer un nouveau type de nœud, vous devez définir ces propriétés :

  • Groupe de ressources : groupe de ressources dans lequel le cluster se trouve.
  • Nom du cluster : nom du cluster managé.
  • Nom du type de nœud : Nom unique issu d’un des types de nœud existants du cluster.
  • Nombre d’instances : Nombre initial de nœuds du nouveau type de nœud.
  • Taille de la machine virtuelle : Référence SKU de machine virtuelle pour les nœuds. Si elle n’est pas spécifiée, la valeur par défaut Standard_D2 est utilisée.

Notes

Si vous ajoutez un type de nœud principal, vous devez utiliser la propriété -Primary.

$resourceGroup = "myResourceGroup"
$clusterName = "mysfcluster"
$nodeTypeName = "nt2"
$vmSize = "Standard_D2_v2"

New-AzServiceFabricManagedNodeType -ResourceGroupName $resourceGroup -ClusterName $clusterName -Name $nodeTypeName -InstanceCount 3 -vmSize $vmSize

Supprimer un type de nœud

Vous pouvez supprimer un type de nœud de cluster managé Service Fabric à l’aide du portal ou de PowerShell.

Notes

Pour supprimer un type de nœud principal d’un cluster managé Service Fabric, vous devez utiliser PowerShell et il doit y avoir plusieurs types de nœud principal à disposition.

Supprimer avec le portail

  1. Connectez-vous au portail Azure.

  2. Accédez à la page Vue d’ensemble de votre ressource de cluster. Exemple de page Vue d’ensemble

  3. Sélectionnez Node types dans la section SettingsAffichage Types de nœuds

  4. Sélectionnez le Node Type que vous souhaitez supprimer et cliquez sur Delete en haut.

Supprimer avec PowerShell

Notes

La suppression d’un type de nœud principal pour des scénarios tels que la mise à niveau de la référence SKU prend plusieurs heures, et l’avancement peut être contrôlé à l’aide de SFX. Les nœuds initiaux migrent un nœud par domaine de mise à niveau à la fois.

Pour supprimer un type de nœud, vous devez définir ces propriétés :

  • Groupe de ressources : groupe de ressources dans lequel le cluster se trouve.
  • Nom du cluster : nom du cluster managé.
  • Nom du type de nœud : Nom unique issu d’un des types de nœud existants du cluster.
$resourceGroup = "myResourceGroup"
$clusterName = "myCluster"
$nodeTypeName = "nt2"

Remove-AzServiceFabricManagedNodeType -ResourceGroupName $resourceGroup -ClusterName $clusterName  -Name $nodeTypeName

Mettre à l’échelle un type de nœud

Vous pouvez mettre à l’échelle un type de nœud de cluster managé Service Fabric avec le portail, un modèle ARM ou PowerShell. Vous pouvez également configurer la mise à l’échelle automatique pour un type de nœud secondaire si vous souhaitez obtenir une solution entièrement automatisée.

Notes

  • Un type de nœud principal ne peut pas être défini sur la mise à l’échelle automatique. Vous pouvez uniquement le définir sur une mise à l’échelle manuelle.
  • Pour le type de nœud Principal, vous ne pouvez pas descendre en dessous de 3 nœuds pour un cluster avec la référence SKU De base et de 5 nœuds pour un cluster avec la référence SKU Standard.

Mettre à l’échelle à l’aide du portail

Dans cette procédure pas à pas, vous allez apprendre à modifier le nombre de nœuds pour un type de nœud à l’aide du portail.

  1. Connectez-vous au portail Azure.

  2. Accédez à la page Vue d’ensemble de votre ressource de cluster. Exemple de page Vue d’ensemble

  3. Dans la section Node Types, sous la section Settings

  4. Sélectionnez le Node type name que vous souhaitez modifier.

  5. Passez en revue les propriétés de type de nœud et mettez-les à jour si nécessaire.

Exemple montrant un nombre de nœuds en augmentation

  1. Sélectionnez Manage node type scaling pour configurer les paramètres de mise à l’échelle et choisir entre la mise à l’échelle automatique personnalisée et la mise à l’échelle manuelle. La mise à l’échelle automatique est une fonctionnalité intégrée qui aide les applications à donner le meilleur d’elles-mêmes lorsque la demande change. Vous pouvez choisir de mettre à l’échelle votre ressource manuellement vers un nombre d’instances spécifique ou via une stratégie de mise à l’échelle automatique personnalisée qui effectue la mise à l’échelle en fonction des seuils de métriques. Vous pouvez également planifier un nombre d’instances qui sera mis à l’échelle pendant les fenêtres de temps désignées. Découvrez la mise à l’échelle automatique Azure ou regardez la vidéo explicative.

    • Mise à l’échelle automatique personnalisée : sélectionnez le scale mode approprié pour définir la stratégie de mise à l’échelle automatique personnalisée : Scale to a specific instance count ou Scale based on a metric. Cette dernière est basée sur des règles de déclenchement relatives aux métriques, par exemple, le fait d’augmenter le nombre d’instances de 1 lorsque le pourcentage processeur est supérieur à 70 %. Une fois que vous avez défini la stratégie, sélectionnez Save en haut.

      Exemple montrant le paramètre de mise à l’échelle automatique

    • Mise à l’échelle manuelle : ajustez le Node count sur la nouvelle valeur voulue et sélectionnez Save en haut. Dans cette capture d’écran, la valeur était 3 et a été ajustée sur 5.

      Exemple montrant le paramètre de mise à l’échelle manuelle

    Sélectionnez Apply en bas pour configurer ces paramètres enregistrés sur le type de nœud.

  2. Le Provisioning state affiche à présent l’état Updating jusqu’à ce que l’achèvement. À l’achèvement, il affiche Succeeded à nouveau. Exemple montrant la mise à jour d’un type de nœud

Mettre à l’échelle un type de nœud avec un modèle

Pour ajuster le nombre de nœuds pour un type de nœud à l’aide d’un modèle ARM, ajustez la propriété vmInstanceCount avec la nouvelle valeur et effectuez un déploiement de cluster pour que le paramètre prenne effet. Le cluster commence la mise à niveau automatiquement ; vous verrez les nœuds supplémentaires une fois terminé.

  • L’apiVersion de la ressource de cluster managé Service Fabric doit être 2021-05-01 ou ultérieure.

Notes

Le fournisseur de cluster managé bloquera les ajustements de mise à l’échelle et renverra une erreur si la demande de mise à l’échelle ne respecte pas les conditions minimales requises.

{
  "apiVersion": "[variables('sfApiVersion')]",
  "type": "Microsoft.ServiceFabric/managedclusters/nodetypes",
  "name": "[concat(parameters('clusterName'), '/', parameters('nodeTypeName'))]",
  "location": "[resourcegroup().location]",
  "properties": {
    ...
    "vmInstanceCount": "[parameters('nodeTypeVmInstanceCount')]",
    ...
  }
}

Mettre à l’échelle un type de nœud avec PowerShell

Modifiez le nombre d’instances pour augmenter ou diminuer le nombre de nœuds sur le type de nœud que vous souhaitez mettre à l’échelle. Vous pouvez trouver les noms des types de nœuds dans le modèle Azure Resource Manager (modèle ARM) à partir de votre déploiement de cluster ou dans Service Fabric Explorer.

$resourceGroup = "myResourceGroup"
$clusterName = "mysfcluster"
$nodeTypeName = "FE"
$instanceCount = "7"

Set-AzServiceFabricManagedNodeType -ResourceGroupName $resourceGroup -ClusterName $clusterName -name $nodeTypeName -InstanceCount $instanceCount -Verbose

Le cluster commence la mise à niveau automatiquement ; vous verrez les nœuds supplémentaires une fois terminé.

Activer les mises à niveau de l’image du système d’exploitation

Vous pouvez choisir d’activer les mises à niveau automatiques de l’image du système d’exploitation vers les machines virtuelles exécutant vos nœuds de cluster managés. Bien que les ressources du groupe de machines virtuelles identiques soient managées en votre nom avec des clusters managés Service Fabric, vous avez le choix d’activer les mises à niveau automatiques de l’image du système d’exploitation pour vos nœuds de cluster. Comme avec les clusters Service Fabric classiques, les nœuds de cluster managés ne sont pas mis à niveau par défaut, afin d’éviter toute interruption involontaire de votre cluster.

Pour activer les mises à niveau automatiques du système d’exploitation :

  • Utilisez apiVersion 2021-05-01 ou une version ultérieure des ressources Microsoft.ServiceFabric/managedclusters et Microsoft.ServiceFabric/managedclusters/nodetypes
  • Définir la propriété enableAutoOSUpgrade du cluster sur true
  • Définir la propriété vmImageVersion de la ressource nodeTypes du cluster sur latest

Par exemple :

    {
      "apiVersion": "[variables('sfApiVersion')]",
      "type": "Microsoft.ServiceFabric/managedclusters",
      ...
      "properties": {
        ...
        "enableAutoOSUpgrade": true
      },
    },
    {
      "apiVersion": "[variables('sfApiVersion')]",
      "type": "Microsoft.ServiceFabric/managedclusters/nodetypes",
       ...
      "properties": {
        ...
        "vmImageVersion": "latest",
        ...
      }
    }
}

Une fois activé, Service Fabric commence l’interrogation et le suivi des versions d’image du système d’exploitation dans le cluster managé. Si une nouvelle version du système d’exploitation est disponible, les types de nœuds de cluster (groupes de machines virtuelles identiques) sont mis à niveau successivement. Les mises à niveau du runtime Service Fabric sont effectuées uniquement après la confirmation qu’aucune mise à niveau d’une image de système d’exploitation de nœud de cluster n’est en cours.

En cas d’échec d’une mise à niveau, Service Fabric effectue une nouvelle tentative après 24 heures, pour un maximum de trois tentatives. Comme lors des mises à niveau de Service Fabric classiques (non managées), les applications ou les nœuds non sains peuvent bloquer la mise à niveau de l’image du système d’exploitation.

Pour plus d’informations sur les mises à niveau d’images, consultez Mises à niveau automatiques d’images de système d’exploitation avec des groupes de machines virtuelles identiques Azure.

Modifier la référence SKU du système d’exploitation pour un type de nœud

Les clusters managés Service Fabric vous permettent de modifier la référence SKU du système d’exploitation pour un type de nœud sur place. Cela est utile pour des scénarios tels que la migration de Windows 2019 vers Windows 2022, ou si vous voulez basculer vers une référence SKU Serveur (Core) à partir d’une référence SKU Serveur avec Expérience utilisateur.

Modifier la référence SKU du système d’exploitation avec le portail

Dans cette procédure pas à pas, vous allez apprendre à modifier l’image de système d’exploitation pour un type de nœud à l’aide du portail.

  1. Connectez-vous au portail Azure.

  2. Accédez à la page Vue d’ensemble de votre ressource de cluster. Exemple de page Vue d’ensemble

  3. Dans la section Node Types, sous la section Settings

  4. Sélectionnez le Node type name que vous souhaitez modifier.

  5. Ajustez le OS Image à la nouvelle valeur voulue et sélectionnez Apply en bas. ![Exemple qui illustre la modification de l’image du système d’exploitation] [change-os-image]

  6. L’Provisioning state affiche alors l’état Updating et poursuit un domaine de mise à niveau à la fois. À l’achèvement, il affiche Succeeded à nouveau. Exemple montrant la mise à jour d’un type de nœud

Modifier la référence SKU du système d’exploitation avec un modèle

Pour modifier l’image de système d’exploitation pour un type de nœud à l’aide d’un modèle ARM, ajustez la propriété vmImageSku avec la nouvelle valeur et effectuez un déploiement de cluster pour que le paramètre prenne effet. Le fournisseur de cluster managé réimagera chaque instance par domaine de mise à niveau.

  • L’apiVersion de la ressource de cluster managé Service Fabric doit être 2021-05-01 ou ultérieure.
{
  "apiVersion": "[variables('sfApiVersion')]",
  "type": "Microsoft.ServiceFabric/managedclusters/nodetypes",
  "name": "[concat(parameters('clusterName'), '/', parameters('nodeTypeName'))]",
  "location": "[resourcegroup().location]",
  "properties": {
    ...
    "vmImagePublisher": "[parameters('vmImagePublisher')]",
    "vmImageOffer": "[parameters('vmImageOffer')]",
    "vmImageSku": "[parameters('vmImageSku')]",
    "vmImageVersion": "[parameters('vmImageVersion')]",
    ...
  }
}

Configurer les propriétés de sélection élective d’un type de nœud

Les propriété de sélection élective servent à s’assurer que certaines charges de travail s’exécutent uniquement sur certains types de nœuds du cluster. Les clusters managés Service Fabric prennent en charge la configuration de ces propriétés par le biais du portail, d’un modèle ARM ou de PowerShell.

Configurer les propriétés de sélection élective avec le portail

Dans cette procédure pas à pas, vous allez apprendre à modifier la propriété de sélection élective pour un type de nœud à l’aide du portail.

  1. Connectez-vous au portail Azure.

  2. Accédez à la page Vue d’ensemble de votre ressource de cluster. Exemple de page Vue d’ensemble

  3. Dans la section Node Types, sous la section Settings

  4. Sélectionnez le Node type name que vous souhaitez modifier.

  5. Dans la section Placement properties, ajoutez le nom et la valeur souhaités, puis sélectionnez Apply en bas. Dans cette capture d’écran, le NameSSD_Premium a été utilisé avec Value défini sur true. Exemple illustrant l’ajout d’une propriété de sélection élective

  6. Le Provisioning state affiche à présent l’état Updating jusqu’à ce que l’achèvement. À l’achèvement, il affiche Succeeded à nouveau. Exemple montrant la mise à jour d’un type de nœud

Configurer les propriétés de sélection élective avec un modèle

Pour ajuster les propriétés de sélection élective pour un type de nœud à l’aide d’un modèle ARM, ajustez la propriété placementProperties avec la nouvelle valeur et effectuez un déploiement de cluster pour que le paramètre prenne effet. L’exemple ci-dessous montre trois valeurs qui sont définies pour un type de nœud.

  • L’apiVersion de la ressource de cluster managé Service Fabric doit être 2021-05-01 ou ultérieure.
{
  "apiVersion": "[variables('sfApiVersion')]",
  "type": "Microsoft.ServiceFabric/managedclusters/nodetypes",
  "name": "[concat(parameters('clusterName'), '/', parameters('nodeTypeName'))]",
  "location": "[resourcegroup().location]",
  "properties": {
    "placementProperties": {
      "PremiumSSD": "true",
      "NodeColor": "green",
      "SomeProperty": "5"
    }
  }
}

Configurer les propriétés de sélection élective avec PowerShell

L’exemple suivant met à jour et remplace toutes les propriétés de sélection élective existantes pour un type de nœud donné.

$rgName = "testRG"
$clusterName = "testCluster"
$NodeTypeName = "nt1"
Set-AzServiceFabricManagedNodeType -ResourceGroupName $rgName -ClusterName $clusterName -name $NodeTypeName -PlacementProperty @{NodeColor="Red";SomeProperty="6";} -Verbose

Modifier la référence SKU de machine virtuelle pour un type de nœud

Pour modifier la référence SKU de machine virtuelle pour un type de nœud à l’aide d’un modèle ARM, ajustez la propriété vmSize avec la nouvelle valeur et effectuez un déploiement de cluster pour que le paramètre prenne effet. Le fournisseur de cluster managé réimagera chaque instance par domaine de mise à niveau. Pour obtenir une liste des options de référence SKU, consultez le site Tailles de machine virtuelle - Machines virtuelles Azure | Microsoft Learn.

{
  "apiVersion": "[variables('sfApiVersion')]",
  "type": "Microsoft.ServiceFabric/managedclusters/nodetypes",
  "name": "[concat(parameters('clusterName'), '/', parameters('nodeTypeName'))]",
  "location": "[resourcegroup().location]",
  "properties": {
    ...
    "vmSize": "[parameters('vmImageVersion')]",
    ...
  }
}

Configurer plusieurs disques managés

Les clusters managés Service Fabric par défaut configurent un disque managé. En configurant la propriété et les valeurs facultatives suivantes, vous pouvez ajouter des disques managés supplémentaires aux types de nœuds au sein d’un cluster. Vous pouvez spécifier la lettre de lecteur, le type de disque et la taille par disque.

Configurez des disques managés supplémentaires en déclarant la propriété additionalDataDisks et les paramètres requis dans votre modèle Resource Manager comme suit :

Exigences concernant les fonctionnalités

  • Le numéro d’unité logique doit être unique par disque et ne peut pas utiliser le numéro d’unité logique réservé 0
  • La lettre de disque ne peut pas utiliser les lettres réservées C ou D et ne peut pas être modifiée une fois créée. S sera utilisé comme valeur par défaut s’il n’est pas spécifié.
  • Vous devez spécifier un type de disque pris en charge
  • L’apiVersion de la ressource de cluster managé Service Fabric doit être 2022-01-01 ou ultérieure.
{
  "apiVersion": "[variables('sfApiVersion')]",
  "type": "Microsoft.ServiceFabric/managedclusters/nodetypes",
  "name": "[concat(parameters('clusterName'), '/', parameters('nodeTypeName'))]",
  "location": "[resourcegroup().location]",
  "properties": {
    "additionalDataDisks": {
      "lun": "1",
      "diskSizeGB": "50",
      "diskType": "Standard_LRS",
      "diskLetter": "S" 
    }
  }
}

Voir la liste complète des paramètres disponibles

Configurer la lettre de lecteur de disque de données Service Fabric

Les clusters managés Service Fabric par défaut configurent un disque de données Service Fabric et configurent automatiquement la lettre de lecteur sur tous les nœuds d’un type de nœud. Si vous configurez cette propriété et cette valeur facultatives, vous pouvez spécifier et récupérer la lettre de disque de données Service Fabric si vous avez des exigences spécifiques pour le mappage des lettres de lecteur.

Exigences concernant les fonctionnalités

  • La lettre de disque ne peut pas utiliser les lettres réservées C ou D et ne peut pas être modifiée une fois créée. S sera utilisé comme valeur par défaut s’il n’est pas spécifié.
  • L’apiVersion de la ressource de cluster managé Service Fabric doit être 2022-01-01 ou ultérieure.
{
  {
    "apiVersion": "[variables('sfApiVersion')]",
    "type": "Microsoft.ServiceFabric/managedclusters/nodetypes",
    "name": "[concat(parameters('clusterName'), '/', parameters('nodeTypeName'))]",
    "location": "[resourcegroup().location]",
    "properties": {
      "dataDiskLetter": "S"
    }
  }
}

Étapes suivantes