Prise en charge de l’extension de groupe de machines virtuelles identiques sur un ou des types de nœuds de cluster managé Service Fabric

Chaque type de nœud d’un cluster managé Service Fabric est adossé à un groupe de machines virtuelles identiques. Cela vous permet d’ajouter des extensions de groupe de machines virtuelles identiques à vos types de nœuds de cluster managé Service Fabric. Les extensions sont de petites applications qui proposent une configuration post-déploiement et une automatisation sur les machines virtuelles Azure. La plateforme Azure héberge de nombreuses extensions, notamment des applications de configuration, de surveillance, de sécurité et utilitaires de machine virtuelle. Les éditeurs prennent une application, l’enveloppent dans une extension et simplifient l’installation. Il vous suffit de définir les paramètres obligatoires.

Ajouter une extension de groupe de machines virtuelles identiques

Vous pouvez ajouter une extension de groupe de machines virtuelles identiques à un type de nœud de cluster managé Service Fabric à l’aide de la commande PowerShell Add-AzServiceFabricManagedNodeTypeVMExtension.

Vous pouvez également ajouter une extension de groupe de machines virtuelles identiques sur un type de nœud de cluster managé Service Fabric dans votre modèle Azure Resource Manager, par exemple :

{
  "type": "Microsoft.ServiceFabric/managedclusters/nodetypes",
  "apiVersion": "[variables('sfApiVersion')]",
  "name": "[concat(parameters('clusterName'), '/', parameters('nodeTypeName'))]",
  "dependsOn": [
    "[concat('Microsoft.ServiceFabric/managedclusters/', parameters('clusterName'))]"
  ],
  "location": "[resourceGroup().location]",
  "properties": {
    "isPrimary": true,
    ...
    "vmExtensions": [
      {
        "name": "KvExtension",
        "properties": {
          "publisher": "Microsoft.Azure.KeyVault",
          "type": "KeyVaultForWindows",
          "typeHandlerVersion": "3.0",
          "autoUpgradeMinorVersion": true,
          "settings": {
            "secretsManagementSettings": {
              "observedCertificates": [
                ...
              ]
            }
          }
        }
      }
    ]
  }
}

Pour plus d’informations sur la configuration de types de nœuds de cluster managé Service Fabric, consultez Type de nœud de cluster managé.

Comment approvisionner avant le runtime Service Fabric

Pour approvisionner des extensions avant le démarrage du runtime Service Fabric, vous pouvez utiliser le paramètre setupOrder avec la valeur BeforeSFRuntime dans les propriétés d’extension pour chaque extension, si nécessaire. Cela vous permet de configurer l’environnement et les dépendances avant que le runtime et les applications ne commencent à s’exécuter sur le nœud. Consultez l’exemple ci-dessous pour obtenir des précisions :

Remarque

Il est essentiel de noter que si une extension marquée avec BeforeSFRuntime échoue, cela empêchera le démarrage du runtime Service Fabric. Par conséquent, le nœud sera arrêté du point de vue de Service Fabric. Par conséquent, il est essentiel de maintenir ces extensions avec des configurations correctes et de résoudre rapidement les problèmes susceptibles de survenir pour garantir l’intégrité des nœuds au sein du cluster.

Spécifications

Utilisez l’API Service Fabric version 2023-09-01-preview ou ultérieure.

Exemple de modèle ARM :

{
  "type": "Microsoft.ServiceFabric/managedclusters/nodetypes",
  "apiVersion": "2023-09-01-preview",
  "name": "[concat(parameters('clusterName'), '/', parameters('nodeTypeName'))]",
  "properties": {
    "isPrimary": true,
    ...
    "vmExtensions": [
        {
            "name": "KvExtension",
            "properties": {
                "setupOrder": [
                    "BeforeSFRuntime"
                ],
                "provisionAfterExtensions" [ "GenevaMonitoringExtension" ],
                "publisher": "Microsoft.Azure.KeyVault",
                "type": "KeyVaultForWindows",
                "typeHandlerVersion": "3.0",
                "autoUpgradeMinorVersion": true,
                "settings": {
                "secretsManagementSettings": {
                  "observedCertificates": [
                    ...
                  ]
                }
              }
            }
        },
        {
          "name": "GenevaMonitoringExtension",
          "properties": {
              "setupOrder": [
                    "BeforeSFRuntime"
                ],
              "autoUpgradeMinorVersion": true,
              "enableAutomaticUpgrade": true,
              "publisher": "Microsoft.Azure.Geneva",
              "type": "GenevaMonitoring",
              "typeHandlerVersion": "2.40",
              "settings": {
                "configurations": [
                  {
                    "ServiceArguments": {
                      ...
                    },
                    "UserArguments": {
                      ...
                    }
                  }
                ]
              }
          }
      }
    ]
  }
}

Remarque

Gestion spéciale de l’extension AzureDiskEncryption (ADE) : ADE doit s’exécuter avant le runtime Service Fabric pour s’assurer que le disque est déchiffré après une opération de reimageage, ce qui permet au runtime Service Fabric de commencer à l’utiliser. Même si l’extension n’est pas explicitement marquée avec BeforeSFRuntime, elle s’exécutera avant le runtime. Notez toutefois que l’activation du chiffrement sur l’hôte est recommandée, plutôt que l’extension ADE. Pour obtenir des instructions détaillées, reportez-vous à Activer le chiffrement sur l’hôte.

Étapes suivantes

Pour plus d’informations sur les clusters Service Fabric managé, consultez :