Compartilhar via


Habilitar as extensões de VM do Azure usando a CLI do Azure

Este artigo explica como implantar, atualizar, atualizar e desinstalar extensões de VM (máquina virtual) em servidores habilitados para Azure Arc usando a CLI do Azure.

Pré-requisitos

Instale a extensão da CLI do Azure

Os ConnectedMachine comandos não são enviados como parte da CLI do Azure. Antes de usar a CLI do Azure para se conectar ao Azure e gerenciar extensões de VM em seu servidor híbrido gerenciado por servidores habilitados para Azure Arc, você precisa carregar a ConnectedMachine extensão.

Você pode executar essas operações de gerenciamento em sua estação de trabalho, em vez de no servidor habilitado para Azure Arc.

Execute o seguinte comando para instalar a extensão da CLI ConnectedMachine do Azure:

az extension add --name connectedmachine

Habilitar uma extensão

Para habilitar uma extensão de VM no seu servidor habilitado para Azure Arc, use az connectedmachine extension create com os parâmetros --machine-name, --extension-name, --location, --type, settings e --publisher.

Este exemplo habilita a Extensão de Script Personalizado em um servidor habilitado para Azure Arc:

az connectedmachine extension create --machine-name "myMachineName" --name "CustomScriptExtension" --location "regionName" --type "CustomScriptExtension" --publisher "Microsoft.Compute" --settings "{\"commandToExecute\":\"powershell.exe -c \\\"Get-Process | Where-Object { $_.CPU -gt 10000 }\\\"\"}" --type-handler-version "1.10" --resource-group "myResourceGroup"

Este exemplo habilita a extensão de VM do Azure Key Vault em um servidor habilitado para Azure Arc:

az connectedmachine extension create --resource-group "resourceGroupName" --machine-name "myMachineName" --location "regionName" --publisher "Microsoft.Azure.KeyVault" --type "KeyVaultForLinux or KeyVaultForWindows" --name "KeyVaultForLinux or KeyVaultForWindows" --settings '{"secretsManagementSettings": { "pollingIntervalInS": "60", "observedCertificates": ["observedCert1"] }, "authenticationSettings": { "msiEndpoint": "http://localhost:40342/metadata/identity" }}'

Este exemplo habilita a extensão Do Microsoft Antimalware em um servidor Windows habilitado para Azure Arc:

az connectedmachine extension create --resource-group "resourceGroupName" --machine-name "myMachineName" --location "regionName" --publisher "Microsoft.Azure.Security" --type "IaaSAntimalware" --name "IaaSAntimalware" --settings '"{\"AntimalwareEnabled\": \"true\"}"'

Este exemplo habilita a extensão Datadog em um servidor Windows habilitado para Azure Arc:

az connectedmachine extension create --resource-group "resourceGroupName" --machine-name "myMachineName" --location "regionName" --publisher "Datadog.Agent" --type "DatadogWindowsAgent" --settings '{"site": "us3.datadoghq.com"}' --protected-settings '{"api_key": "YourDatadogAPIKey" }'

Dica

Há suporte para muitas outras extensões em servidores habilitados para Arc. Para obter detalhes, consulte Gerenciamento de extensão de máquina virtual com servidores habilitados para Azure Arc.

Listar extensões instaladas

Para obter uma lista das extensões de VM no servidor habilitado para Azure Arc, use az connectedmachine extension list com os parâmetros --machine-name e --resource-group:

az connectedmachine extension list --machine-name "myMachineName" --resource-group "myResourceGroup"

Por padrão, a saída de comandos da CLI do Azure é em JSON (JavaScript Object Notation). Para alterar a saída padrão para uma lista ou tabela, por exemplo, use az config set core.output=table. Você também pode adicionar --output a qualquer comando para realizar uma alteração apenas uma vez no formato da saída.

O exemplo a seguir mostra a saída JSON parcial do comando az connectedmachine extension -list:

[
  {
    "autoUpgradingMinorVersion": "false",
    "forceUpdateTag": null,
    "id": "/subscriptions/subscriptionId/resourceGroups/resourceGroupName/providers/Microsoft.HybridCompute/machines/SVR01/extensions/DependencyAgentWindows",
    "location": "regionName",
    "name": "DependencyAgentWindows",
    "namePropertiesInstanceViewName": "DependencyAgentWindows",

Atualizar uma configuração de extensão

Algumas extensões de VM exigem configurações para que seja possível instalá-las em um servidor habilitado para Azure Arc (como a Extensão de Script Personalizado). Para atualizar a configuração de uma extensão, use az connectedmachine extension update.

O exemplo a seguir mostra como configurar a extensão de script personalizado:

az connectedmachine extension update --name "CustomScriptExtension" --type "CustomScriptExtension" --publisher "Microsoft.HybridCompute" --settings "{\"commandToExecute\":\"powershell.exe -c \\\"Get-Process | Where-Object { $_.CPU -lt 100 }\\\"\"}" --type-handler-version "1.10" --machine-name "myMachine" --resource-group "myResourceGroup"

Atualizar extensões

Quando uma nova versão de uma extensão de VM com suporte for lançada, você poderá atualizá-la para a versão mais recente. Para atualizar uma extensão de VM, use az connectedmachine upgrade-extension com os parâmetros --machine-name, --resource-group e --extension-targets.

Para o parâmetro --extension-targets, você precisa especificar a extensão e a versão mais recente disponível. Para determinar a versão mais recente disponível para uma extensão, acesse a página Extensões para o servidor habilitado para Azure Arc selecionado no portal do Azure ou execute lista de imagens de extensão az vm. Você pode especificar várias extensões em uma única solicitação de atualização fornecendo ambos:

  • Uma lista de extensões separadas por vírgula, definidas por seu fornecedor e tipo (separadas por ponto)
  • A versão de destino para cada extensão

Você pode revisar a versão das extensões de VM instaladas a qualquer momento executando o comando az connectedmachine extension list. O valor da propriedade typeHandlerVersion representa a versão da extensão.

Dica

Muitas extensões de VM podem ser configuradas para atualizações automáticas.

Remover extensões

Para remover uma extensão de VM instalada do servidor habilitado para Azure Arc, use az connectedmachine extension delete com os parâmetros --extension-name, --machine-name e --resource-group.