Compartilhar via


Suporte para extensão do conjunto de dimensionamento de máquinas virtuais em tipos de nós de cluster gerenciados pelo Service Fabric

Cada tipo de nó em um cluster gerenciado do Service Fabric conta com um conjunto de dimensionamento de máquinas virtuais. Isso permite que você adicione extensões de conjunto de dimensionamento de máquinas virtuais aos tipos de nó de cluster gerenciados do Service Fabric. As extensões são pequenos aplicativos que fornecem tarefas de configuração e automação pós-implantação e tarefas de automação nas VMs do Azure. A plataforma do Azure hospeda várias extensões que incluem configuração de VM, monitoramento, segurança e aplicativos de utilidade. Os publicadores pegam um aplicativo, envolvem-no em uma extensão e simplificam a instalação. Tudo o que você precisa fazer é fornecer parâmetros obrigatórios.

Adicionar uma extensão do conjunto de dimensionamento de máquinas virtuais

Você pode adicionar uma extensão do conjunto de dimensionamento de máquinas virtuais a um tipo de nó de cluster gerenciado pelo Service Fabric usando o comando Add-AzServiceFabricManagedNodeTypeVMExtension do PowerShell.

Como alternativa, você pode adicionar uma extensão do conjunto de dimensionamento de máquinas virtuais em um tipo de nó de cluster gerenciado do Service Fabric no modelo do Azure Resource Manager, por exemplo:

{
  "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": [
                ...
              ]
            }
          }
        }
      }
    ]
  }
}

Para obter mais informações de como configurar tipos de nó de cluster gerenciado do Service Fabric, confira tipo de nó de cluster gerenciado.

Como provisionar antes do runtime do Service Fabric

Para provisionar extensões antes do início do runtime do Service Fabric, você poderá usar o parâmetro setupOrder com o valor BeforeSFRuntime nas propriedades de extensão para cada extensão, conforme necessário. Isso permitirá configurar o ambiente e as dependências antes que o runtime e os aplicativos comecem a executar no nó. Veja o exemplo abaixo para obter mais esclarecimentos:

Observação

É essencial observar que se uma extensão marcada com BeforeSFRuntime falhar, isso impedirá que o runtime do Service Fabric inicie. Consequentemente, o nó ficará inoperante na perspectiva do Service Fabric. Portanto, é fundamental manter essas extensões com as configurações corretas e resolver prontamente todos os problemas que possam surgir para garantir a integridade dos nós no cluster.

Requisitos

Use a versão 2023-09-01-preview da API do Service Fabric ou posterior.

Exemplo de modelo do 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": {
                      ...
                    }
                  }
                ]
              }
          }
      }
    ]
  }
}

Observação

Tratamento especial para extensão ADE (AzureDiskEncryption): é necessário executar o ADE antes do runtime do Service Fabric para garantir que o disco seja descriptografado após uma operação para refazer imagem, permitindo que o runtime do Service Fabric comece a usá-lo. Mesmo se a extensão não estiver explicitamente marcada com BeforeSFRuntime, ela executará antes do runtime. No entanto, é recomendável habilitar a criptografia no host usando a extensão de ADE. Para obter as instruções detalhadas, consulte Habilitar criptografia no host.

Próximas etapas

Para saber mais sobre os clusters gerenciados do Service Fabric, confira: