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

Este artigo mostra como implantar, atualizar, atualizar e desinstalar extensões de VM, suportadas por servidores habilitados para Azure Arc, em uma máquina híbrida Linux ou Windows usando a CLI do Azure.

Nota

Os servidores habilitados para Azure Arc não oferecem suporte à implantação e ao gerenciamento de extensões de VM em máquinas virtuais do Azure. Para VMs do Azure, consulte o seguinte artigo de visão geral da extensão de VM.

Pré-requisitos

  • Use o ambiente Bash no Azure Cloud Shell. Para obter mais informações, consulte Guia de início rápido para Bash no Azure Cloud Shell.

  • Se preferir executar comandos de referência da CLI localmente, instale a CLI do Azure. Se estiver a utilizar o Windows ou macOS, considere executar a CLI do Azure num contentor Docker. Para obter mais informações, consulte Como executar a CLI do Azure em um contêiner do Docker.

    • Se estiver a utilizar uma instalação local, inicie sessão no CLI do Azure ao utilizar o comando az login. Para concluir o processo de autenticação, siga os passos apresentados no seu terminal. Para outras opções de entrada, consulte Entrar com a CLI do Azure.

    • Quando solicitado, instale a extensão da CLI do Azure na primeira utilização. Para obter mais informações sobre as extensões, veja Utilizar extensões com o CLI do Azure.

    • Execute o comando az version para localizar a versão e as bibliotecas dependentes instaladas. Para atualizar para a versão mais recente, execute o comando az upgrade.

Instalar a extensão da CLI do Azure

Os comandos ConnectedMachine não são fornecidos 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 extensão ConnectedMachine. Essas operações de gerenciamento podem ser executadas em sua estação de trabalho, você não precisa executá-las no servidor habilitado para Azure Arc.

Execute o seguinte comando para obtê-lo:

az extension add --name connectedmachine

Ativar extensão

Para habilitar uma extensão de VM em seu servidor habilitado para Azure Arc, use az connectedmachine extension create com os --machine-nameparâmetros , , --location--extension-name, , , --typesettingse --publisher .

O exemplo a seguir habilita a extensão de VM do Log Analytics em um servidor habilitado para Azure Arc:

az connectedmachine extension create --machine-name "myMachineName" --name "OmsAgentForLinux or MicrosoftMonitoringAgent" --location "regionName" --settings '{\"workspaceId\":\"myWorkspaceId\"}' --protected-settings '{\"workspaceKey\":\"myWorkspaceKey\"}' --resource-group "myResourceGroup" --type-handler-version "1.13" --type "OmsAgentForLinux or MicrosoftMonitoringAgent" --publisher "Microsoft.EnterpriseCloud.Monitoring" 

O exemplo a seguir habilita a Extensão de Script Personalizada 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"

O exemplo a seguir habilita a extensão de VM do Cofre da Chave 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" }}'

O exemplo a seguir habilita a extensão 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\"}"'

O exemplo a seguir 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" }'

Listar extensões instaladas

Para obter uma lista das extensões de VM em seu servidor habilitado para Arco do Azure, use az connectedmachine extension list com os --machine-name parâmetros e --resource-group .

Exemplo:

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

Por padrão, a saída dos comandos da CLI do Azure está 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 uma alteração única no formato de saída.

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

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

Atualizar configuração da extensão

Algumas extensões de VM exigem definições de configuração para instalá-las no servidor habilitado para Arc, como a Extensão de Script Personalizada e a extensão de VM do agente do Log Analytics. 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"

Extensões de atualização

Quando uma nova versão de uma extensão de VM suportada é lançada, você pode atualizá-la para essa versão mais recente. Para atualizar uma extensão de VM, use az connectedmachine upgrade-extension com os --machine-nameparâmetros , --resource-groupe --extension-targets .

Para o --extension-targets parâmetro, você precisa especificar a extensão e a versão mais recente disponível. Para descobrir qual é a versão mais recente disponível, você pode obter essas informações na página Extensões para o servidor habilitado para Arc selecionado no portal do Azure ou executando a lista de imagens de extensão az vm. Você pode especificar várias extensões em uma única solicitação de atualização fornecendo uma lista separada por vírgulas de extensões, definida por seu editor e tipo (separados por um ponto) e a versão de destino para cada extensão, conforme mostrado no exemplo abaixo.

Para atualizar a extensão do agente do Log Analytics para Windows que tem uma versão mais recente disponível, execute o seguinte comando:

az connectedmachine upgrade-extension --machine-name "myMachineName" --resource-group "myResourceGroup" --extension-targets '{\"Microsoft.EnterpriseCloud.Monitoring.MicrosoftMonitoringAgent\":{\"targetVersion\":\"1.0.18053.0\"}}'

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

Remover extensões

Para remover uma extensão de VM instalada em seu servidor habilitado para Azure Arc, use az connectedmachine extension delete com os --extension-nameparâmetros , --machine-namee --resource-group .

Por exemplo, para remover a extensão de VM do Log Analytics para Linux, execute o seguinte comando:

az connectedmachine extension delete --machine-name "myMachineName" --name "OmsAgentForLinux" --resource-group "myResourceGroup"

Próximos passos