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

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 Linux instala o agente de dependência em máquinas virtuais do Azure. Este documento detalha as plataformas, configurações e opções de implantação suportadas para a extensão de máquina virtual do agente de dependência de VM do Azure para Linux.

Pré-requisitos

Sistema operativo

Como o agente de dependência de VM do Azure funciona no nível do kernel, o suporte ao sistema operacional também depende da versão do kernel. A partir da versão 9.10.* do agente de dependência, o agente suporta kernels *. A tabela a seguir lista a versão principal e secundária do sistema operacional Linux e as versões do kernel suportadas para o agente de dependência.

Nota

Com o agente de dependência 9.10.15 e superior, a instalação não é bloqueada para versões de kernel não suportadas, mas o agente será executado em modo degradado. Nesse modo, os dados de conexão e porta armazenados nas tabelas VMConnection e VMBoundport não são coletados. A tabela VMProcess pode ter alguns dados, mas será mínima.

Distribuição Versão do Sistema Operativo Versão de kernel
Red Hat Linux 8 8.6 4.18.0-372.*el8.x86_64, 4.18.0-372.*el8_6.x86_64
8.5 4.18.0-348.*el8_5.x86_644.18.0-348.*el8.x86_64
8,4 4.18.0-305.*el8.x86_64, 4.18.0-305.*el8_4.x86_64
8.3 4.18.0-240.*el8_3.x86_64
8.2 4.18.0-193.*el8_2.x86_64
8.1 4.18.0-147.*el8_1.x86_64
8.0 4.18.0-80.*el8.x86_64
4.18.0-80.*el8_0.x86_64
Red Hat Linux 7 7,9 3.10.0-1160
7.8 3.10.0-1136
7.7 3.10.0-1062
7.6 3.10.0-957
7.5 3.10.0-862
7.4 3.10.0-693
Red Hat Linux 6 6.10 2.6.32-754
6.9 2.6.32-696
CentOS Linux 8 8.6 4.18.0-372.*el8.x86_64, 4.18.0-372.*el8_6.x86_64
8.5 4.18.0-348.*el8_5.x86_644.18.0-348.*el8.x86_64
8,4 4.18.0-305.*el8.x86_64, 4.18.0-305.*el8_4.x86_64
8.3 4.18.0-240.*el8_3.x86_64
8.2 4.18.0-193.*el8_2.x86_64
8.1 4.18.0-147.*el8_1.x86_64
8.0 4.18.0-80.*el8.x86_64
4.18.0-80.*el8_0.x86_64
CentOS Linux 7 7,9 3.10.0-1160
7.8 3.10.0-1136
7.7 3.10.0-1062
CentOS Linux 6 6.10 2.6.32-754.3.5
2.6.32-696.30.1
6.9 2.6.32-696.30.1
2.6.32-696.18.7
Ubuntu Server 20.04 5.8
5.4*
18.04 5.3.0-1020
5.0 (inclui kernel ajustado ao Azure)
4.18*
4.15*
16.04.3 4.15.*
16.04 4.13.*
4.11.*
4.10.*
4.8.*
4.4.*
14.04 3.13.*-genérico
4.4.*-genérico
Servidor SUSE Linux 12 Enterprise 12 SP5 4.12.14-122.*-default, 4.12.14-16.*-azure
12 SP4 4.12.* (inclui kernel ajustado ao Azure)
12.º SP3 4.4.*
12 SP2 4.4.*
Servidor SUSE Linux 15 Enterprise 15 SP1 4.12.14-197.*-default, 4.12.14-8.*-azure
15 4.12.14-150.*-padrão
Debian 9 4,9

Nota

O agente de dependência não é suportado para Máquinas Virtuais do Azure com processadores baseados em ARM Ampere Altra.

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 Linux 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 Linux Azure VM."
      }
    }
  },
  "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": "DependencyAgentLinux",
          "typeHandlerVersion": "9.5",
          "autoUpgradeMinorVersion": true,
          "settings": {
              "enableAMA": "true"
        }
      }
    }
  ],
    "outputs": {
    }
}

Valores de propriedade

Nome Valor/Exemplo
apiVersion 2015-01-01
editora Microsoft.Azure.Monitoring.DependencyAgent
tipo DependencyAgentLinux
typeHandlerVersion 9.5
definições "enableAMA": "verdadeiro"

Importante

Certifique-se de adicionar enableAMA ao seu modelo se estiver usando o Azure Monitor Agent, caso contrário, o agente de dependência tentará enviar dados para o agente herdado do Log Analytics.

Implementação de modelos

Você pode implantar 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 filho.

O exemplo a seguir pressupõe que a extensão do agente de dependência esteja aninhada dentro do recurso de máquina virtual. Quando você aninha o recurso de extensão, o JSON é colocado no "resources": [] objeto 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": "DependencyAgentLinux",
        "typeHandlerVersion": "9.5",
        "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": "DependencyAgentLinux",
        "typeHandlerVersion": "9.5",
        "autoUpgradeMinorVersion": true,
        "settings": {
            "enableAMA": "true"
        }
	}
}

Implementação da CLI do Azure

Você pode usar a CLI do Azure para implantar a extensão de VM do agente de dependência em uma máquina virtual existente.


az vm extension set \
    --resource-group myResourceGroup \
    --vm-name myVM \
    --name DependencyAgentLinux \
    --publisher Microsoft.Azure.Monitoring.DependencyAgent \
    --version 9.5

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 habilitar a atualização automática de extensão para uma extensão, você deve garantir que a propriedade enableAutomaticUpgrade esteja definida e adicionada ao true 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 habilitação, habilite o recurso para sua VM ou conjunto de escala 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 enableAutomaticUpgrade funcionalidade do atributo é diferente da autoUpgradeMinorVersiondo . O autoUpgradeMinorVersion atributo não aciona automaticamente uma atualização de versão secundária 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 a CLI do Azure. Para ver o estado de implantação das extensões de uma determinada VM, execute o seguinte comando usando a CLI do Azure:

az vm extension list --resource-group myResourceGroup --vm-name myVM -o table

A saída de execução da extensão está registada no seguinte ficheiro:

/var/opt/microsoft/dependency-agent/log/install.log

Suporte

Se precisar de mais ajuda em qualquer ponto deste artigo, entre 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.