En este artículo se proporcionan detalles sobre cómo habilitar VM Insights en Azure Monitor mediante distintos métodos, como Azure Portal, plantillas de ARM y script de PowerShell.
Requisitos previos
Debe tener un Área de trabajo de Log Analytics para almacenar los datos recopilados por la información de la máquina virtual. Puede crear una nueva área de trabajo si habilita mediante Azure Portal.
Necesita permisos para crear una regla de recopilación de datos (DCR) y asociarla al agente de Azure Monitor. Consulte Permisos de regla de recopilación de datos para obtener más información.
Consulte Requisitos de Dependency Agent para comprobar que el sistema operativo es compatible con Dependency Agent y para conocer los requisitos de red de Dependency Agent.
Agentes
Al habilitar VM Insights para una máquina, se instalan los agentes siguientes.
Agente de Azure Monitor: recopila datos de la máquina y los entrega a un área de trabajo de Log Analytics.
Dependency Agent: recopila datos detectados sobre los procesos que se ejecutan en la máquina virtual y las dependencias de procesos externos para admitir la Característica de asignación de en VM Insights. Este agente no es necesario para otras funcionalidades de VM Insights, por lo que no es necesario instalar el agente de dependencias si no va a usar la característica De asignación.
VM insights DCR
El agente de Azure Monitor usa las reglas de recopilación de datos (DCR) para especificar qué datos recopilar y cómo se deben procesar. Al habilitar las VM Insights, usted crea un DCR específico para las VM Insights y lo asocia con el agente Azure Monitor en cualquier máquina que desee supervisar.
La única configuración en un DCR de VM Insights es el área de trabajo de Log Analytics y si se van a recopilar o no datos de procesos y dependencias. Además, en lugar de crear un DCR independiente para cada máquina, debe usar un único DCR para cada área de trabajo de Log Analytics que vaya a usar para obtener información de las máquinas virtuales y asociar ese DCR a múltiples máquinas. Es posible que quiera crear DCR independientes si desea recopilar procesos y dependencias de algunas máquinas, pero no de otras.
No debería modificar el DCR de VM Insights. Si necesita recopilar datos adicionales de las máquinas supervisadas, como los registros de eventos y los registros de seguridad, cree DCR adicionales y asócielos a las mismas máquinas. Puede obtener instrucciones para crear estos DCR desde Recopilar datos con el agente de Azure Monitor.
Creación de un DCR de VM Insights
Hay dos métodos para crear un DCR de VM Insights. Independientemente del método que elija, el DCR es idéntico y se puede usar con cualquier proceso para habilitar VM Insights en otras máquinas. Aunque no es necesario, debe asignar un nombre al MSVMI-{WorkspaceName} DCR para que coincida con la convención de nomenclatura que usa Azure Portal.
Habilita la experiencia de rendimiento y asignación de VM Insights.
DeployDcr\ PerfOnlyDcr
DeployDcrTemplate DeployDcrParameters
Habilita solo la experiencia de rendimiento de VM Insights.
Habilitar el aislamiento de red mediante Private Link
De manera predeterminada, el agente de Azure Monitor se conectará a un punto de conexión público para conectarse a su entorno de Azure Monitor. Para habilitar el aislamiento de red para VM Insights, asocie el DCR de VM Insights a un punto de conexión de recopilación de datos (DCE) vinculado a un ámbito de Private Link de Azure Monitor, tal como se describe en Habilitación del aislamiento de red para el agente de Azure Monitor mediante Private Link.
Utilice el siguiente procedimiento para activar VM insights en una máquina virtual o Conjunto de escalado de máquinas virtuales no supervisados. Este proceso no requiere que implemente agentes ni cree primero una DCR de VM Insights, ya que el portal realiza estas tareas.
En el menú Monitor de Azure Portal, seleccione Virtual Machines>No supervisado. Esta pestaña incluye todas las máquinas que no tienen VM Insights habilitado. Todas las máquinas tienen instalado el agente de Azure Monitor. Si una máquina virtual tiene instalado el agente de Log Analytics, pero no Dependency Agent, aparecerá como no supervisado.
Seleccione Habilitar junto a cualquier máquina que quiera habilitar. Si una máquina no se está ejecutando, debe iniciarla para habilitarla.
En la página Incorporación a Insights, seleccione Habilitar.
En la página Configuración de supervisión, seleccione Agente de Azure Monitor y seleccione un DCR en la lista desplegable Regla de recopilación de datos. Solo se muestran las DCR configuradas para VM Insights.
Si aún no se ha creado un DCR para VM Insights, Azure Monitor ofrece crear uno con un área de trabajo de Log Analytics predeterminada y la siguiente configuración. Puede aceptar estos valores predeterminados o hacer clic en Crear nuevo para crear un nuevo DCR con una configuración diferente. Esto le permite seleccionar un área de trabajo y especificar si se recopilan procesos y dependencias mediante la característica Asignación de VM Insights.
Rendimiento de invitado habilitado.
Procesos y dependencias deshabilitados.
Nota:
Si selecciona un DCR con Mapa activado y su máquina virtual no es compatible con el Dependency Agent, el Dependency Agent se instalará y se ejecutará en modo degradado.
Seleccione Configurar para iniciar el proceso de configuración. El agente tarda varios minutos en instalarse y empezar a recopilar datos. Recibirá mensajes de estado según se lleve a cabo la configuración.
Si usa un modelo de actualización manual para el conjunto de escalado de máquinas virtuales, actualice las instancias para completar la configuración. Puede iniciar las actualizaciones desde la página Instancias, en la sección Configuración.
Habilitación de VM Insights mediante plantillas de ARM
Hay tres pasos para habilitar VM Insights mediante plantillas de ARM. En las siguientes secciones se describen estos pasos.
Implementación de agentes
Instale los agentes necesarios en las máquinas mediante instrucciones en los artículos siguientes. Dependency Agent solo es necesario si desea habilitar la característica de asignación.
Si los conjuntos de escalado de máquinas virtuales tienen una directiva de actualización establecida en manual, VM Insights no se habilitará para las instancias de forma predeterminada después de instalar la plantilla. Deberá actualizar las instancias manualmente.
Creación de una regla de recopilación de datos (DCR)
Si aún no tiene un DCR para VM Insights, cree uno con los detalles anteriores en DCR de MV Insights.
Si asocia un DCR con la característica de asignación habilitada a una máquina en la que no está instalado Dependency Agent, la vista de asignación no estará disponible. Para habilitarla, establezca enableAMA property = true en la extensión de Dependency Agent al Instalar Dependency Agent.
Plantilla ARM
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"vmName": {
"type": "string",
"metadata": {
"description": "Name of the virtual machine."
}
},
"associationName": {
"type": "string",
"metadata": {
"description": "Name of the association."
}
},
"dataCollectionRuleId": {
"type": "string",
"metadata": {
"description": "Resource ID of the data collection rule."
}
}
},
"resources": [
{
"type": "Microsoft.Insights/dataCollectionRuleAssociations",
"apiVersion": "2021-09-01-preview",
"scope": "[format('Microsoft.Compute/virtualMachines/{0}', parameters('vmName'))]",
"name": "[parameters('associationName')]",
"properties": {
"description": "Association of data collection rule. Deleting this association will break the data collection for this virtual machine.",
"dataCollectionRuleId": "[parameters('dataCollectionRuleId')]"
}
}
]
}
az deployment group create --resource-group <ResourceGroupName> --template-file <Template.json> --parameters <Parameters.json>
Habilitación de VM Insights para varias máquinas virtuales mediante el script de PowerShell
En esta sección se describe cómo habilitar VM Insights mediante un script de PowerShell que puede habilitar varias máquinas virtuales (VMs). Este proceso usa un script que instala extensiones de máquina virtual para el agente de supervisión de Azure (AMA) y, si es necesario, Dependency Agent para habilitar VM Insights.
Antes de usar este script, debe crear una DCR de VM Insights con los detalles anteriores en DCR de VM Insights.
Script de PowerShell
Use el script de PowerShell Install-VMInsights.ps1 para habilitar VM Insights para varias máquinas virtuales o conjuntos de escalado de máquinas virtuales. Este script recorre en iteración las máquinas según los parámetros que especifique. El script se puede usar para habilitar VM Insights para lo siguiente. Cada uno de estos parámetros acepta caracteres comodín.
Cada máquina virtual y conjunto de escalado de máquinas virtuales de su suscripción.
Los grupos de recursos con ámbito especificados por -ResourceGroup.
Una máquina virtual o un conjunto de escalado de máquinas virtuales especificado por -Name.
Compruebe que usa la versión 1.0.0 o posterior del módulo Az PowerShell con Enable-AzureRM alias de compatibilidad habilitados. Ejecute Get-Module -ListAvailable Az para encontrar la versión. Para actualizar, consulte Instalar módulo de Azure PowerShell. Si PowerShell se ejecuta localmente, ejecute Connect-AzAccount para crear una conexión con Azure.
Para obtener una lista de los detalles del argumento del script y el uso de ejemplo, ejecute Get-Help.
Get-Help Install-VMInsights.ps1 -Detailed
Al habilitar VM Insights mediante el agente de Azure Monitor, el script asocia una regla de recopilación de datos (DCR) y una identidad administrada asignada por el usuario (UAMI) al conjunto de escalado de máquinas virtuales o máquinas virtuales. La configuración de UAMI se pasa a la extensión del agente de Azure Monitor.
-SubscriptionId <String>Id. de suscripción a Azure.
-DcrResourceId <String> Id. de identificador de recurso de Azure de la regla de recopilación de datos (DCR). Puede especificar DCR de distintas suscripciones a las máquinas virtuales o conjuntos de escalado de máquinas virtuales que se habilitan con Vm-Insights.
-UserAssignedManagedIdentityResourceGroup <String> Nombre del grupo de recursos de identidad administrada asignada por el usuario (UAMI).
-UserAssignedManagedIdentityName <String> Nombre de la identidad administrada asignada por el usuario (UAMI).
Argumentos opcionales:
-ProcessAndDependencies Establezca esta marca para incorporar Dependency Agent con la configuración de Azure Monitoring Agent (AMA). Si no se especifica, solo se incorpora el Agente de supervisión de Azure (AMA).
-Name <String> Nombre de la máquina virtual o del conjunto de escalado de máquinas virtuales que se va a incorporar. Si no se especifica, se incorporan todas las máquinas virtuales y el conjunto de escalado de máquinas virtuales de la suscripción o el grupo de recursos. Use caracteres comodín para especificar varias máquinas virtuales o Microsoft Azure Virtual Machine Scale Sets.
-ResourceGroup <String> Nombre del grupo de recursos que contiene la máquina virtual o el conjunto de escalado de máquinas virtuales que se van a incorporar. Si no se especifica, se incorporan todas las máquinas virtuales y el conjunto de escalado de máquinas virtuales de la suscripción. Use caracteres comodín para especificar varios grupos de recursos.
-PolicyAssignmentName <String> Incluya solo las máquinas virtuales asociadas a esta directiva. Cuando se especifica el parámetro PolicyAssignmentName, se tienen en cuenta las máquinas virtuales del parámetro SubscriptionId.
-TriggerVmssManualVMUpdate [<SwitchParameter>] Desencadene la actualización de instancias de máquina virtual en un conjunto de escalado cuya directiva de actualización esté establecida en Manual.
-WhatIf [<SwitchParameter>] Obtenga información sobre el efecto esperado de los comandos en el script.
-Confirm [<SwitchParameter>] Confirme cada acción en el script.
-Approve [<SwitchParameter>] Proporcione la aprobación para que la instalación se inicie sin petición de confirmación para Microsoft Azure Virtual Machine Scale Sets o máquinas virtuales enumerados.
El script admite caracteres comodín para -Name y -ResourceGroup. Por ejemplo, -Name vm* habilita VM Insights para todas las máquinas virtuales y los conjuntos de escalado de máquinas virtuales que comienzan por "vm". Para obtener más información, consulte Caracteres comodín en Windows PowerShell.