Extensão de máquina virtual do Azure Monitor Dependency para Windows

O recurso Mapa do Azure Monitor para VMs obtém seus dados do agente de dependência da Microsoft. A extensão de máquina virtual do agente de dependência de VM do Azure para Windows instala o agente em máquinas virtuais do Azure. Este documento detalha as plataformas, configurações e opções de implantação com suporte para a extensão de máquina virtual do agente de dependência de VM do Azure para Windows.

Observação

Experimenta o VM assist para diagnósticos mais rápidos. Recomendamos que execute o VM assist para Windows ou o VM assist para Linux. Essas ferramentas de diagnóstico baseadas em script ajudam você a identificar problemas comuns que afetam o Agente Convidado da VM do Azure e a integridade geral da VM.

Se estiver a experienciar problemas de desempenho com máquinas virtuais, antes de contactar o suporte, execute estas ferramentas.

Sistema operativo

A extensão do agente de dependência de VM do Azure para Windows pode ser executada nos sistemas operacionais com suporte listados na tabela a seguir. Todos os sistemas operacionais na tabela a seguir são considerados x64. x86 não é suportado para nenhum sistema operacional.

Sistema operativo Agente de dependência de VM do Azure
Windows Server 2025
Windows Server 2022 ✓
Windows Server 2019 ✓
Núcleo do Windows Server 2019
Windows Server 2016 ✓
Núcleo do Windows Server 2016
Windows Server 2012 R2 ✓
Windows Server 2012 ✓
Windows 11 Client e Pro ✓
Windows 11 Enterprise
(incluindo várias sessões)
✓
Windows 10 1803 (RS4) e superior ✓
Windows 10 Empresarial
(incluindo várias sessões) e Pro
(Somente cenários de servidor)
✓
Windows 8 Enterprise e Pro
(Somente cenários de servidor)
Windows 7 SP1
(Somente cenários de servidor)
Azure Stack HCI
Windows IoT Enterprise

Esquema de extensão

O JSON a seguir mostra o esquema para a extensão do agente de dependência de VM do Azure em uma VM do Windows do Azure.

{
  "$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
  "contentVersion": "1.0.0.0",
  "parameters": {
    "vmName": {
      "type": "string",
      "metadata": {
        "description": "The name of existing Azure VM. Supported Windows Server versions:  2008 R2 and above (x64)."
      }
    }
  },
  "variables": {
    "vmExtensionsApiVersion": "2017-03-30"
  },
  "resources": [
    {
      "type": "Microsoft.Compute/virtualMachines/extensions",
      "name": "[concat(parameters('vmName'),'/DAExtension')]",
      "apiVersion": "[variables('vmExtensionsApiVersion')]",
      "location": "[resourceGroup().location]",
      "dependsOn": [],
      "properties": {
          "publisher": "Microsoft.Azure.Monitoring.DependencyAgent",
          "type": "DependencyAgentWindows",
          "typeHandlerVersion": "9.10",
          "autoUpgradeMinorVersion": true,
          "settings": {
                "enableAMA": "true"
		    }
      }
    }
  ],
    "outputs": {
    }
}

Valores de propriedade

Nome Valor/Exemplo
apiVersion 2015-01-01
editor Microsoft.Azure.Monitoring.DependencyAgent
tipo DependencyAgentWindows
typeHandlerVersion 9.10
actualizaçãoAutomáticaDeVersãoMenor verdadeiro
definições "enableAMA": "verdadeiro"

Importante

Certifique-se de adicionar enableAMA ao seu modelo se estiver a usar o Agente do Azure Monitor; caso contrário, o Agente de Dependência tentará enviar dados para o agente legado do Log Analytics.

Implementação de modelos

Você pode implantar as extensões de VM do Azure com modelos do Azure Resource Manager. Você pode usar o esquema JSON detalhado na seção anterior em um modelo do Azure Resource Manager para executar a extensão do agente de dependência de VM do Azure durante uma implantação de modelo do Azure Resource Manager.

O JSON para uma extensão de máquina virtual pode ser aninhado dentro do recurso de máquina virtual. Ou, você pode colocá-lo no nível raiz ou superior de um modelo JSON do Gerenciador de Recursos. O posicionamento do JSON afeta o valor do nome e do tipo de recurso. Para obter mais informações, consulte Definir nome e tipo para recursos filhos.

O exemplo a seguir assume que a extensão do agente de dependência está nesteada dentro do recurso de máquina virtual. Quando se aninha o recurso de extensão, o JSON é colocado no objeto "resources": [] da máquina virtual.

{
	"type": "extensions",
	"name": "DAExtension",
	"apiVersion": "[variables('apiVersion')]",
	"location": "[resourceGroup().location]",
	"dependsOn": [
		"[concat('Microsoft.Compute/virtualMachines/', variables('vmName'))]"
	],
	"properties": {
      "publisher": "Microsoft.Azure.Monitoring.DependencyAgent",
      "type": "DependencyAgentWindows",
      "typeHandlerVersion": "9.10",
      "autoUpgradeMinorVersion": true,
      "settings": {
            "enableAMA": "true"
    		    }
    }
}

Quando você coloca a extensão JSON na raiz do modelo, o nome do recurso inclui uma referência à máquina virtual pai. O tipo reflete a configuração aninhada.

{
	"type": "Microsoft.Compute/virtualMachines/extensions",
	"name": "<parentVmResource>/DAExtension",
	"apiVersion": "[variables('apiVersion')]",
	"location": "[resourceGroup().location]",
	"dependsOn": [
		"[concat('Microsoft.Compute/virtualMachines/', variables('vmName'))]"
	],
	"properties": {
      "publisher": "Microsoft.Azure.Monitoring.DependencyAgent",
      "type": "DependencyAgentWindows",
      "typeHandlerVersion": "9.10",
      "autoUpgradeMinorVersion": true,
      "settings": {
            "enableAMA": "true"
    		    }
	}
}

Implementação do PowerShell

Você pode usar o Set-AzVMExtension comando para implantar a extensão de máquina virtual do agente de dependência em uma máquina virtual existente. Antes de executar o comando, as configurações públicas e privadas têm de ser armazenadas numa tabela hash do PowerShell.

Set-AzVMExtension -ExtensionName "Microsoft.Azure.Monitoring.DependencyAgent" `
    -ResourceGroupName "myResourceGroup" `
    -VMName "myVM" `
    -Publisher "Microsoft.Azure.Monitoring.DependencyAgent" `
    -ExtensionType "DependencyAgentWindows" `
    -TypeHandlerVersion 9.10 `
    -Settings @{"enableAMA" = "true"}

Implantação do PowerShell para o Azure Monitor Agent

Se você estiver usando o Azure Monitor Agent, deverá usar a enableAMA configuração. Caso contrário, o agente de dependência tentará enviar dados para o agente herdado do Log Analytics. Por exemplo:


Set-AzVMExtension -ExtensionName "Microsoft.Azure.Monitoring.DependencyAgent" `
    -ResourceGroupName "myResourceGroup" `
    -VMName "myVM" `
    -Publisher "Microsoft.Azure.Monitoring.DependencyAgent" `
    -ExtensionType "DependencyAgentWindows" `
    -TypeHandlerVersion 9.10 `
    -Location WestUS `
    -Settings @{"enableAMA" = "true"}

Atualização automática de extensão

Um novo recurso para atualizar automaticamente versões secundárias da extensão de dependência já está disponível.

Para activar a atualização automática de uma extensão, deve-se garantir que a propriedade enableAutomaticUpgrade esteja definida como true e adicionada ao modelo de extensão. Essa propriedade deve ser habilitada em cada VM ou escala de VM definida individualmente. Use um dos métodos descritos na seção de ativação para ativar o recurso para a sua VM ou conjunto de dimensionamento de VM.

Quando a atualização automática de extensão é habilitada em uma VM ou conjunto de escala de VM, a extensão é atualizada automaticamente sempre que o editor de extensão lança uma nova versão para essa extensão. A atualização é aplicada com segurança seguindo os princípios de disponibilidade em primeiro lugar, conforme descrito aqui.

A funcionalidade do atributo enableAutomaticUpgrade é diferente da do autoUpgradeMinorVersion. O atributo autoUpgradeMinorVersion não aciona automaticamente uma atualização de versão menor quando o editor da extensão lança uma nova versão. O autoUpgradeMinorVersion atributo indica se a extensão deve usar uma versão secundária mais recente, se uma estiver disponível no momento da implantação. Uma vez implantada, no entanto, a extensão não atualizará versões secundárias, a menos que seja reimplantada, mesmo com essa propriedade definida como true.

Para manter sua versão de extensão atualizada, recomendamos usar enableAutomaticUpgrade com sua implantação de extensão.

Importante

Se você adicionar o enableAutomaticUpgrade ao seu modelo, certifique-se de usar na API versão 2019-12-01 ou superior.

Solução de problemas e suporte

Resolver problemas

Os dados sobre o estado das implantações de extensão podem ser recuperados do portal do Azure e usando o módulo do Azure PowerShell. Para ver o estado de implementação das extensões de uma determinada VM, execute o seguinte comando com o módulo do Azure PowerShell:

Get-AzVMExtension -ResourceGroupName myResourceGroup -VMName myVM -Name myExtensionName

A saída de execução das extensões é registada em ficheiros que pode encontrar no seguinte diretório:

C:\WindowsAzure\Logs\Plugins\Microsoft.Azure.Monitoring.DependencyAgent\

Suporte

Se precisar de mais ajuda em qualquer ponto deste artigo, você pode entrar em contato com os especialistas do Azure nos fóruns Microsoft Q & A e Stack Overflow. Ou, você pode registrar um incidente de suporte do Azure. Vá para o site de suporte do Azure e selecione Obter suporte. Para obter informações sobre como usar o Suporte do Azure, leia as Perguntas frequentes de suporte do Microsoft Azure.