Partager via


Collecter des métriques personnalisées pour une machine virtuelle Linux avec l’agent InfluxData Telegraf

Cet article explique comment déployer et configurer l’agent InfluxData Telegraf sur une machine virtuelle Linux pour envoyer des métriques à Azure Monitor.

Remarque

InfluxData Telegraf est un agent open source qui n’est pas officiellement pris en charge par Azure Monitor. Pour connaître les problèmes liés au connecteur Telegraf, reportez-vous à la page GitHub Telegraf ici : InfluxData

Agent InfluxData Telegraf

Telegraf est un agent piloté par plug-in qui permet la collecte de métriques provenant de plus de 150 sources différentes. En fonction des charges de travail exécutées sur votre machine virtuelle, vous pouvez configurer l'agent pour qu'il utilise des plug-ins d'entrée spécialisés pour collecter des métriques. MySQL, NGINX et Apache en sont des exemples. À l’aide de plug-ins de sortie, l’agent peut ensuite écrire les données dans les destinations que vous choisissez. L’agent Telegraf s’intègre directement à l’API REST de métriques personnalisées Azure Monitor. Il prend en charge un plug-in de sortie Azure Monitor. À l'aide de ce plug-in, l'agent peut collecter des métriques spécifiques à la charge de travail sur votre machine virtuelle Linux et les soumettre en tant que métriques personnalisées à Azure Monitor.

Diagramme montrant la vue d’ensemble de l’agent télégraphique.

Connexion à la machine virtuelle

Créez une connexion SSH à la machine virtuelle sur laquelle vous souhaitez installer Telegraf. Sélectionnez le bouton Se connecter dans la page vue d’ensemble de votre machine virtuelle.

Capture d’écran de la page vue d’ensemble de la machine virtuelle avec le bouton Connexion mis en surbrillance.

Dans la page Se connecter à la machine virtuelle , conservez les options par défaut pour se connecter par nom DNS sur le port 22. Dans Connexion à l’aide d’un compte local de machine virtuelle, une commande de connexion s’affiche. Sélectionnez le bouton pour copier la commande. L’exemple suivant montre la commande de connexion SSH :

ssh azureuser@XXXX.XX.XXX

Collez la commande de connexion SSH dans un interpréteur de commandes, par exemple, Azure Cloud Shell ou Bash sur Ubuntu dans Windows, ou utilisez le client SSH de votre choix pour établir la connexion.

Installer et configurer Telegraf

Pour installer le package Debian Telegraf sur la machine virtuelle, exécutez les commandes suivantes à partir de votre session SSH :

Ajoutez le référentiel :

# download the package to the VM
curl -s https://repos.influxdata.com/influxdb.key | sudo apt-key add -
source /etc/lsb-release
sudo echo "deb https://repos.influxdata.com/${DISTRIB_ID,,} ${DISTRIB_CODENAME} stable" | sudo tee /etc/apt/sources.list.d/influxdb.list
sudo curl -fsSL https://repos.influxdata.com/influxdata-archive_compat.key | sudo apt-key --keyring /etc/apt/trusted.gpg.d/influxdata-archive_compat.gpg add

Installez le package :

sudo apt-get update
sudo apt-get install telegraf

Le fichier de configuration de Telegraf définit les opérations de Telegraf. Par défaut, un exemple de fichier de configuration est installé sur le chemin /etc/telegraf/telegraf.conf. L’exemple de fichier de configuration répertorie tous les plug-ins d’entrée et de sortie possibles. Toutefois, nous allons créer un fichier de configuration personnalisé, que l’agent utilisera en exécutant les commandes suivantes :

# generate the new Telegraf config file in the current directory
telegraf --input-filter cpu:mem --output-filter azure_monitor config > azm-telegraf.conf

# replace the example config with the new generated config
sudo cp azm-telegraf.conf /etc/telegraf/telegraf.conf

Remarque

Le code précédent active uniquement deux plug-ins d’entrée : processeur et mem. Vous pouvez ajouter davantage de plug-ins d’entrée, selon la charge de travail exécutée sur votre ordinateur. Il peut s’agir, par exemple, d’une charge de travail Docker, MySQL ou NGINX. Pour obtenir la liste complète des plug-ins d’entrée, consultez la section Configuration supplémentaire .

Enfin, pour que l’agent démarre avec la nouvelle configuration, nous forçons l’arrêt et le redémarrage de l’agent en exécutant les commandes suivantes :

# stop the telegraf agent on the VM
sudo systemctl stop telegraf
# start and enable the telegraf agent on the VM to ensure it picks up the latest configuration
sudo systemctl enable --now telegraf

Désormais, l'agent collecte les métriques de chacun des plug-ins d'entrée spécifiés et les transmet à Azure Monitor.

Tracer vos métriques Telegraf dans le portail Azure

  1. Ouvrez le portail Azure.

  2. Accédez à l’onglet Nouveau Moniteur . Sélectionnez Ensuite Métriques.

  3. Sélectionnez votre machine virtuelle dans le sélecteur de ressources.

  4. Sélectionnez l’espace de noms Telegraf/CPU , puis sélectionnez la métrique usage_system . Vous pouvez choisir de filtrer selon les dimensions de cette métrique, ou de les fractionner.

    Capture d’écran montrant un graphique de métriques avec des métriques télégraphiques sélectionnées.

Configuration supplémentaire

La procédure pas à pas précédente explique comment configurer l’agent Telegraf pour collecter les métriques à partir de plusieurs plug-ins d’entrée de base. L’agent Telegraf prend en charge plus de 150 plug-ins d’entrée, dont certains prennent en charge des options de configuration supplémentaires. InfluxData a publié une liste de plug-ins pris en charge et des instructions sur la façon de les configurer.

De plus, dans cette procédure pas à pas, vous avez utilisé un agent Telegraf pour envoyer des métriques concernant la machine virtuelle sur laquelle l’agent est déployé. L’agent Telegraf peut également servir de collecteur et de redirecteur de métriques pour d’autres ressources. Pour savoir comment configurer l’agent pour émettre des métriques pour d’autres ressources Azure, consultez Sortie de métrique personnalisée Azure Monitor pour Telegraf.

Nettoyer les ressources

Dès que vous n’en avez plus besoin, vous pouvez supprimer le groupe de ressources, la machine virtuelle et toutes les ressources associées. Pour ce faire, sélectionnez le groupe de ressources de la machine virtuelle, puis sélectionnez Supprimer. Ensuite, confirmez le nom du groupe de ressources à supprimer.

Étapes suivantes