Cet article fournit des détails sur l’activation de VM Insights dans Azure Monitor à l’aide de différentes méthodes, notamment le portail Azure, les modèles ARM et le script PowerShell.
Prérequis
Vous devez disposer d’un espace de travail Log Analytics pour stocker les données collectées par VM Insights. Vous pouvez créer un espace de travail s’il est activé via le portail Azure.
Vous avez besoin d’autorisations pour créer une règle de collecte de données (DCR) et l’associer à l’agent Azure Monitor. Pour plus d’informations, consultez Autorisations de règle de collecte de données.
Consultez Configuration requise de Dependency Agent pour vérifier que votre système d’exploitation est pris en charge par Dependency Agent et pour connaître la configuration réseau requise pour l’agent Dependency Agent.
Agents
Quand vous activez les insights de machine virtuelle sur une machine, les deux agents suivants sont installés.
Agent Azure Monitor : collecte les données de la machine et les remet à un espace de travail Log Analytics.
Dependency Agent : collecte les données découvertes concernant les processus exécutés sur la machine virtuelle et les dépendances de processus externes pour prendre en charge la fonctionnalité de mappage dans VM Insights. Cet agent n’est pas nécessaire pour d’autres fonctionnalités VM Insights. Vous n’avez donc pas besoin d’installer l’agent Dependency Agent si vous n’allez pas utiliser la fonctionnalité de mappage.
Règle de collecte de données d’Insights de machine virtuelle
Les règles de collecte de données (DCR) sont utilisées par l’agent Azure Monitor pour spécifier les données à collecter et la façon dont elles doivent être traitées. Lorsque vous activez VM Insights, vous créez une DCR spécifiquement pour VM Insights et l’associez à l’agent Azure Monitor sur toutes les machines à surveiller.
La seule configuration d’une DCR VM Insights est l’espace de travail Log Analytics. Elle indique s’il faut collecter ou non des processus et des données de dépendances. Au lieu de créer une DCR distincte pour chaque machine, vous devez utiliser une DCR unique pour chaque espace de travail Log Analytics que vous utilisez pour VM Insights et associer cette DCR à plusieurs machines. Vous pouvez créer des règles de collecte de données distinctes si vous souhaitez collecter des processus et des dépendances à partir de certaines machines, mais pas d’autres.
Vous ne devez pas modifier la DCR VM Insights. Si vous devez collecter des données supplémentaires à partir des machines surveillées, telles que les journaux d’événements et les journaux de sécurité, créez des contrôleurs de domaine supplémentaires et associez-les aux mêmes ordinateurs. Vous pouvez obtenir des conseils pour créer ces DCR à partir de Collecter des données avec l’agent Azure Monitor.
Créer une DCR VM Insights
Il existe deux méthodes pour créer une DCR VM Insights. Quelle que soit la méthode que vous choisissez, la DCR est identique et peut être utilisée avec n’importe quel processus pour activer VM Insights sur d’autres machines. Bien que ce ne soit pas obligatoire, il est recommandé de nommer la règle de collecte de données MSVMI-{WorkspaceName} pour qu’elle corresponde à la convention d’affectation de noms utilisée par le portail Azure.
Créez une DCR VM Insights dans le cadre du processus d’intégration à l’aide du portail Azure et du processus détaillé ci-dessous.
Activez à la fois les performances et l’expérience de mappage de VM Insights.
DeployDcr\ PerfOnlyDcr
DeployDcrTemplate DeployDcrParameters
Activez uniquement l’expérience de performances de VM Insights.
Activer l’isolement réseau à l’aide de Private Link
Par défaut, l’agent Azure Monitor se connecte à un point de terminaison public pour se connecter à votre environnement Azure Monitor. Pour activer l’isolation réseau pour les insights de machine virtuelle, associez votre DCR VM Insights à un point de terminaison de collecte de données (DCE) lié à une étendue de liaison privée Azure Monitor, comme décrit dans Activer l’isolation réseau pour l’agent Azure Monitor à l’aide de Private Link.
Activer les aperçus de machine virtuelle dans le Portail Azure
Utilisez la procédure suivante pour activer les aperçus de machine virtuelle sur un groupe de machines virtuelles identiques ou une machine virtuelle non monitorés. Ce processus ne vous oblige pas à déployer des agents ou à créer d’abord une DCR VM Insights, car ces tâches sont effectuées par le portail.
Remarque
Dans le cadre du processus d’installation de l’agent Azure Monitor, Azure attribue une identité managée affectée par le système à la machine si une telle identité n’existe pas déjà.
Dans le menu Superviser du portail Azure, sélectionnez Machines Virtuelles>Non supervisées. Cet onglet inclut toutes les machines pour lesquelles VM Insights n’est pas activé. Tous les ordinateurs ont installé l’agent Azure Monitor. Si l’agent Log Analytics est installé sur une machine virtuelle, mais pas l’agent Dependency, il est répertorié comme non surveillé.
Sélectionnez Activer à côté de toute machine que vous souhaitez activer. Si une machine n’est pas en cours d’exécution, vous devez la démarrer pour l’activer.
Dans la page Intégration d’Insights, sélectionnez Activer.
Dans la page Configuration du monitoring, sélectionnez Agent Azure Monitor, puis une Règle de collecte de données (DCR) dans la Règle de collecte de données. Seules les DCR configurées pour les aperçus de machine virtuelle sont répertoriées.
Si une DCR n’a pas déjà été créée pour VM Insights, Azure Monitor propose d’en créer une avec un espace de travail Log Analytics par défaut et les paramètres suivants. Vous pouvez accepter ces valeurs par défaut ou cliquer sur Créer pour créer une DCR avec différents paramètres. Cela vous permet de sélectionner un espace de travail et de spécifier s’il faut collecter des processus et des dépendances avec la fonctionnalité Carte de VM Insights.
Performances des invités activées.
Processus et dépendances désactivés.
Remarque
Si vous sélectionnez une règle de collecte de données avec la fonctionnalité Mappage activée et que votre machine virtuelle n’est pas prise en charge par Dependency Agent, ce dernier est installé et s’exécute en mode dégradé.
Sélectionnez Configurer pour démarrer le processus de configuration. L’installation de l’agent et le démarrage de la collecte des données prennent plusieurs minutes. Vous recevez des messages d’état à mesure que la configuration est effectuée.
Si vous utilisez un modèle de mise à niveau manuel pour votre groupe de machines virtuelles identiques, mettez à niveau les instances afin de terminer la configuration. Vous pouvez démarrer les mises à niveau depuis la page Instances de la section Paramètres.
Activer Insights de machine virtuelle en utilisant des modèles ARM
Il existe trois étapes pour activer VM Insights à l’aide de modèles ARM. Chacune de ces étapes est décrite en détail dans les sections suivantes.
Déployer des agents
Installez les agents requis sur vos machines en utilisant les instructions fournies dans les articles suivants. Dependency Agent est nécessaire seulement si vous voulez activer la fonctionnalité Carte.
Si vos groupes de machines virtuelles identiques ont un ensemble de stratégies de mise à niveau défini sur manuellement, VM Insights ne sera pas activé pour les instances par défaut après l’installation du modèle. Vous devez mettre à niveau les instances manuellement.
Créer une règle de collecte de données
Si vous n’avez pas encore de DCR pour VM Insights, créez-en une à l’aide des détails ci-dessus dans DCR VM Insights.
Associer la règle de collecte de données aux agents
La dernière étape de l’activation d’Insights de machine virtuelle consiste à associer la règle de collecte de données à l’agent Azure Monitor. Utilisez le modèle ci-dessous provenant de Créer et modifier des règles de collecte de données (DCR) et des associations dans Azure Monitor. Pour l’activer sur plusieurs machines, vous devez créer une association en utilisant ce modèle pour chacune d’elles. Consultez Déployer des modèles si vous n’êtes pas familiarisé avec les méthodes de déploiement de modèles ARM.
Remarque
Si vous associez une DCR (la fonctionnalité de carte étant activée) à une machine sur laquelle Dependency Agent n’est pas installé, le mode Carte n’est pas disponible. Pour activer le mode Carte, définissez enableAMA property = true dans l’extension Dependency Agent quand vous installez Dependency Agent.
Modèle 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>
Activer VM Insights pour plusieurs machines virtuelles à l’aide d’un script PowerShell
Cette section décrit comment activer VM Insights à l’aide d’un script PowerShell qui peut activer plusieurs machines virtuelles. Ce processus utilise un script qui installe les extensions de machine virtuelle pour AMA (Agent Azure Monitor) et, si nécessaire, l’agent Dependency Agent pour activer les insights de machine virtuelle.
Avant d’utiliser ce script, vous devez créer une DCR VM Insights à l’aide des détails ci-dessus dans DCR VM Insights.
Script PowerShell
Utilisez le script PowerShell Install-VMInsights.ps1 pour activer les insights de machine virtuelle pour plusieurs machines virtuelles ou groupes de machines virtuelles identiques. Ce script itère sur les machines en fonction des paramètres que vous spécifiez. Le script peut être utilisé afin d’activer VM Insights pour les éléments suivants. Chacun de ces paramètres accepte des caractères génériques.
Chaque machine virtuelle et groupe de machines virtuelles identiques dans votre abonnement.
Les groupes de ressources délimités par une étendue et spécifiés par -ResourceGroup.
Une machine virtuelle ou un groupe de machines virtuelles identiques spécifié par -Name.
Vérifiez que vous utilisez le module Az PowerShell version 1.0.0 ou ultérieure avec les alias de compatibilité Enable-AzureRM activés. Exécutez Get-Module -ListAvailable Az pour trouver la version. Pour effectuer la mise à niveau, consultez Installer le module Azure PowerShell. Si vous exécutez PowerShell en local, exécutez Connect-AzAccount pour créer une connexion avec Azure.
Pour obtenir la liste des détails relatifs aux arguments du script ainsi qu’un exemple d’utilisation, exécutez Get-Help.
Get-Help Install-VMInsights.ps1 -Detailed
Quand vous activez VM Insights à l’aide de l’agent Azure Monitor, le script associe une règle de collecte de données (DCR) et une identité managée affectée par l’utilisateur (UAMI) à la machine virtuelle/au groupe de machines virtuelles identiques. Les paramètres d’identité managée affectée par l’utilisateur sont passés à l’extension de l’agent Azure Monitor.
-DcrResourceId <String> Identificateur d’ID de ressource Azure de la règle de collecte de données. Vous pouvez appliquer des règles de collecte de données de différents abonnements aux machines virtuelles ou groupes de machines virtuelles identiques pour lesquels Vm-Insights est activé.
-UserAssignedManagedIdentityResourceGroup <String> Nom du groupe de ressources associé à l’identité managée affectée par l’utilisateur.
-UserAssignedManagedIdentityName <String> Nom de l’identité managée affectée par l’utilisateur.
Arguments facultatifs :
-ProcessAndDependencies Définissez cet indicateur pour intégrer Dependency Agent aux paramètres d’AMA (agent Azure Monitor). S’il n’est pas spécifié, seul AMA (agent Azure Monitor) est intégré.
-Name <String> Nom de la machine virtuelle ou du groupe de machines virtuelles identiques à intégrer. S’il n’est pas spécifié, toutes les machines virtuelles et tous les groupes de machines virtuelles identiques de l’abonnement ou du groupe de ressources sont intégrés. Utilisez des caractères génériques pour spécifier plusieurs machines virtuelles ou groupes de machines virtuelles identiques.
-ResourceGroup <String> Nom du groupe de ressources contenant la machine virtuelle ou le groupe de machines virtuelles identiques à intégrer. S’il n’est pas spécifié, toutes les machines virtuelles et tous les groupes de machines virtuelles identiques de l’abonnement sont intégrés. Utilisez des caractères génériques pour spécifier plusieurs groupes de ressources.
-PolicyAssignmentName <String> Incluez uniquement les machines virtuelles associées à cette stratégie. Quand le paramètre PolicyAssignmentName est spécifié, la partie relative aux machines virtuelles du paramètre SubscriptionId est prise en compte.
-TriggerVmssManualVMUpdate [<SwitchParameter>] Permet de déclencher la mise à jour des instances de machines virtuelles dans un groupe identique dont la stratégie de mise à niveau est de type Manuel.
-WhatIf [<SwitchParameter>] Permet d’obtenir des informations sur l’effet attendu des commandes dans le script.
-Confirm [<SwitchParameter>] Permet de confirmer chaque action dans le script.
-Approve [<SwitchParameter>] Permet d’octroyer l’approbation nécessaire au démarrage de l’installation sans invite de confirmation pour les machines virtuelles/groupes de machines virtuelles identiques listées.
Le script prend en charge les caractères génériques pour -Name et -ResourceGroup. Par exemple, -Name vm* active VM Insights pour l’ensemble des machines virtuelles et des groupes de machines virtuelles identiques commençant par « vm ». Pour plus d’informations, consultez Caractères génériques dans Windows PowerShell.