Extensão de máquina virtual de dependência do Azure Monitor para Linux
O recurso Mapa do Azure Monitor para VMs obtém seus dados do Microsoft Dependency Agent. 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 especifica as opções de plataformas, de configurações e de implantação com suporte para a extensão da máquina virtual do agente de dependência da VM do Azure.
Pré-requisitos
Sistema operacional
Como o agente de dependência da 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 Dependency Agent, o agente dá suporte a * kernels. A tabela a seguir lista a versão principal e secundária do sistema operacional Linux e as versões de kernel compatíveis com o Dependency Agent.
Observação
Com o Dependency Agent 9.10.15 e superior, a instalação não é bloqueada para versões do kernel sem suporte, mas o agente será executado no 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ão mínimos.
Distribuição | Versão do SO | Versão do 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 o kernel ajustado pelo 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.*-generic 4.4.*-generic |
|
SUSE Linux 12 Enterprise Server | 12 SP5 | 4.12.14-122.*-default, 4.12.14-16.*-azure |
12 SP4 | 4.12.* (inclui o kernel ajustado pelo Azure) | |
12 SP3 | 4.4.* | |
12 SP2 | 4.4.* | |
SUSE Linux 15 Enterprise Server | 15 SP1 | 4.12.14-197.*-default, 4.12.14-8.*-azure |
15 | 4.12.14-150.*-default | |
Debian | 9 | 4.9 |
Observação
Não há suporte para o agente de dependência em Máquinas Virtuais do Azure com processadores baseados em ARM do Ampere Altra.
Esquema de extensão
O JSON a seguir mostra o esquema da extensão do agente de dependência de VM do Azure em uma VM para 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 | 01-01-2015 |
publicador | Microsoft.Azure.Monitoring.DependencyAgent |
type | DependencyAgentLinux |
typeHandlerVersion | 9,5 |
settings | "enableAMA": "true" |
Importante
Adicione enableAMA
ao modelo se você estiver usando o Agente do Azure Monitor; caso contrário, o Dependency Agent tentará enviar dados para o agente herdado do Log Analytics.
Implantação de modelo
Você pode implantar extensões de VM do Azure com os 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 de uma extensão de máquina virtual pode ser aninhado no recurso de máquina virtual. Como alternativa, você pode colocá-lo no nível raiz ou superior de um modelo JSON do Resource Manager. O posicionamento do JSON afeta o valor do tipo e nome do recurso. Para obter mais informações, consulte Definir o nome e o tipo de recursos filho.
O exemplo a seguir pressupõe que a extensão do agente de dependência está aninhada no recurso de máquina virtual. Quando você 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": "DependencyAgentLinux",
"typeHandlerVersion": "9.5",
"autoUpgradeMinorVersion": true,
"settings": {
"enableAMA": "true"
}
}
}
Ao colocar 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"
}
}
}
Implantação da CLI do Azure
Você pode usar o 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 da extensão automática
Agora, está disponível um novo recurso para atualizar automaticamente as versões secundárias da extensão de Dependência.
Para habilitar a atualização da extensão automática para uma extensão, você deve garantir que a propriedade enableAutomaticUpgrade
esteja definida como true
e adicionada ao modelo de extensão. Essa propriedade deve ser habilitada individualmente em cada VM ou conjunto de dimensionamento de VM. Use um dos métodos descritos na seção habilitação para habilitar o recurso para sua VM ou conjunto de dimensionamento de VM.
Quando a atualização automática de extensão está habilitada em uma VM ou conjunto de dimensionamento de VM, ela é atualizada automaticamente sempre que o editor libera uma nova versão para a extensão. A atualização é aplicada com segurança de acordo com os princípios de disponibilidade, conforme descrito aqui.
A funcionalidade do atributo enableAutomaticUpgrade
é diferente da do autoUpgradeMinorVersion
. O atributo autoUpgradeMinorVersion
não dispara automaticamente uma atualização de versão secundária quando o editor de extensão lança uma nova versão. O atributo autoUpgradeMinorVersion
indica se a extensão deve usar uma versão secundária mais nova se houver uma disponível no momento da implantação. Após implantada, no entanto, a extensão não atualizará as versões secundárias, a menos que seja reimplantada, mesmo com essa propriedade definida como verdadeira.
Para manter a versão de extensão atualizada, recomendamos usar enableAutomaticUpgrade
com sua implantação de extensão.
Importante
Se você adicionar enableAutomaticUpgrade
ao modelo, use a versão 2019-12-01 da API ou superior.
Solução de problemas e suporte
Solucionar problemas
Dados sobre o estado das implantações de extensão podem ser recuperados do Portal do Azure usando a CLI do Azure. Para ver o estado da 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 é registrada no seguinte arquivo:
/var/opt/microsoft/dependency-agent/log/install.log
Suporte
Se você precisar de mais ajuda em qualquer ponto deste artigo, contate os especialistas do Azure nas Microsoft Q&A e fóruns do Stack Overflow. Como alternativa, você pode registrar um incidente de suporte do Azure. Vá para o site de suporte do Azure e selecione Obter suporte. Para saber mais sobre como usar o suporte do Azure, leia as Perguntas frequentes sobre o suporte do Microsoft Azure.