Envoyer des métriques Prometheus depuis des machines virtuelles, des groupes de machines virtuelles identiques ou des clusters Kubernetes à un espace de travail Azure Monitor
Prometheus n'est pas limité à l'analyse des clusters Kubernetes. Utilisez Prometheus pour analyser les applications et les services exécutés sur vos serveurs, partout où ils fonctionnent. Par exemple, vous pouvez surveiller les applications s'exécutant sur des machines virtuelles, des groupes de machines virtuelles identiques ou même des serveurs locaux. Vous pouvez également envoyer des métriques Prometheus à un espace de travail Azure Monitor depuis votre cluster automanagé et de votre serveur Prometheus.
Cet article explique comment configurer l'écriture à distance pour envoyer des données d'une instance Prometheus autogérée à un espace de travail Azure Monitor.
Options d’écriture à distance
Prometheus autogéré peut s'exécuter sur des environnements Azure et non Azure. Voici les options d’authentification pour l’écriture à distance dans l’espace de travail Azure Monitor, en fonction de l’environnement dans lequel Prometheus s’exécute.
Machines virtuelles gérées par Azure, groupes de machines virtuelles identiques et clusters Kubernetes
Utilisez l'authentification d'identité managée affectée par l'utilisateur pour les services exécutant Prometheus autogéré dans un environnement Azure. Les services managés par Azure incluent :
- Machines virtuelles Azure
- Groupes de machines virtuelles identiques Azure
- Azure Kubernetes Service (AKS)
Pour configurer l’écriture à distance pour les ressources gérées par Azure, consultez Écriture à distance à l’aide de l’authentification d’identité managée affectée par l’utilisateur plus loin dans cet article.
Machines virtuelles et clusters Kubernetes s’exécutant sur des environnements non-Azure
Si vous avez des machines virtuelles ou un cluster Kubernetes dans des environnements non-Azure, ou que vous avez une intégration à Azure Arc, installez Prometheus autogéré et configurez l’écriture à distance en utilisant l’authentification d’application Microsoft Entra. Pour plus d’informations, consultez Écriture à distance à l’aide de l’authentification d’application Microsoft Entra plus loin dans cet article.
L’intégration aux services avec Azure Arc vous permet de gérer et de configurer des machines virtuelles non-Azure dans Azure. Pour plus d’informations, consultez Serveurs avec Azure Arc et Kubernetes avec Azure Arc. Les serveurs avec Azure Arc prennent uniquement en charge l’authentification Microsoft Entra.
Remarque
Les identités managées affectées par le système ne sont pas prises en charge pour l’écriture à distance sur les espaces de travail Azure Monitor. Utilisez une identité managée affectée par l’utilisateur ou l’authentification d’application Microsoft Entra.
Prérequis
Versions prises en charge
- Les versions de Prometheus ultérieures à la version 2.45 sont requises pour l’authentification avec une identité managée.
- Les versions de Prometheus ultérieures à la version 2.48 sont requises pour l’authentification d’application Microsoft Entra.
Espace de travail Azure Monitor
Cet article traite de l'envoi de métriques Prometheus à un espace de travail Azure Monitor. Pour créer un espace de travail Azure Monitor, consultez Gérer un espace de travail Azure Monitor.
Autorisations
Les autorisations d'administrateur pour le cluster ou la ressource sont nécessaires pour effectuer les étapes de cet article.
Configurer l’authentification pour l’écriture à distance
En fonction de l’environnement dans lequel Prometheus s’exécute, vous pouvez configurer l’écriture à distance pour utiliser une identité managée affectée par l’utilisateur ou l’authentification d’application Microsoft Entra pour envoyer des données à un espace de travail Azure Monitor.
Utilisez le Portail Azure ou Azure CLI pour créer une identité managée affectée par l’utilisateur ou une application Microsoft Entra.
- Écriture à distance à l'aide d’une identité managée affectée par l’utilisateur
- Application Microsoft Entra ID
- Azure CLI
Écriture à distance à l'aide de l’authentification d’identité managée affectée par l’utilisateur
L’authentification des identités managées affectées par l’utilisateur peut être utilisée dans n’importe quel environnement géré par Azure. Si votre service Prometheus s’exécute dans un environnement non-Azure, vous pouvez utiliser l’authentification d’application Microsoft Entra.
Pour configurer une identité managée affectée par l’utilisateur pour l’écriture à distance dans un espace de travail Azure Monitor, procédez comme suit.
Créer une identité managée attribuée par l’utilisateur
Pour créer une identité managée par l’utilisateur à utiliser dans votre configuration d’écriture à distance, consultez Gérer les identités managées affectées par l’utilisateur.
Notez la valeur de clientId
pour l’identité managée que vous avez créée. Cet ID est utilisé dans la configuration d'écriture à distance Prometheus.
Attribuer le rôle d'éditeur de métriques d'analyse à l'application
Sur la règle de collecte de données de l’espace de travail, attribuez à l’identité managée le rôle Éditeur des métriques de surveillance :
Sur le volet de présentation de l’espace de travail Azure Monitor, sélectionnez le lien Règle de collecte de données.
Sur la page de la règle de collecte de données, sélectionnez Contrôle d’accès (IAM).
Sélectionnez Ajouter>Ajouter une attribution de rôle.
Recherchez et sélectionnez Éditeur de métriques de surveillance, puis sélectionnez Suivant.
Sélectionnez Identité managée.
Choisissez Sélectionner des membres.
Dans la liste déroulante Identité managée, sélectionnez Identité managée affectée par l’utilisateur.
Sélectionnez l’identité affectée par l’utilisateur que vous souhaitez utiliser, puis choisissez Sélectionner.
Sélectionnez Vérifier + attribuer pour terminer l’attribution de rôle.
Affecter l’identité managée à une machine virtuelle ou à un groupe de machines virtuelles identiques
Important
Pour effectuer les étapes de cette section, vous devez disposer d’autorisations Propriétaire ou Administrateur de l’accès utilisateur pour la machine virtuelle ou le groupe de machines virtuelles identiques.
Sur le Portail Azure, accédez à la page du cluster, de la machine virtuelle ou du groupe de machines virtuelles identiques.
Sélectionnez Identité.
Sélectionnez Utilisateur attribué.
Sélectionnez Ajouter.
Sélectionnez l’identité managée affectée par l’utilisateur que vous avez créée, puis sélectionnez Ajouter.
Affecter l’identité managée pour Azure Kubernetes Service
Pour Azure Kubernetes Service, l’identité managée doit être affectée aux groupes de machines virtuelles identiques.
AKS crée un groupe de ressources contenant les groupes de machines virtuelles identiques. Le nom du groupe de ressources est au format MC_<resource group name>_<AKS cluster name>_<region>
.
Pour chaque groupe de machines virtuelles identiques du groupe de ressources, affectez l’identité managée conformément aux étapes décrites dans la section précédente, Affecter l’identité managée à une machine virtuelle ou à un groupe de machines virtuelles identiques.
Configurer l’écriture à distance
L’écriture à distance est configurée dans le fichier de configuration de Prometheus prometheus.yml
ou dans l’opérateur Prometheus.
Pour plus d’informations sur la configuration de l’écriture à distance, consultez l’article Prometheus.io : Configuration. Pour en savoir plus sur le réglage de la configuration de l’écriture à distance, consultez Réglage de l’écriture à distance.
- Configurer l’écriture à distance pour Prometheus fonctionnant sur des machines virtuelles
- Configurer l’écriture à distance sur Kubernetes pour l’opérateur Prometheus
Pour envoyer des données à votre espace de travail Azure Monitor, ajoutez la section suivante au fichier de configuration (prometheus.yml
) de votre instance Prometheus autogérée :
remote_write:
- url: "<metrics ingestion endpoint for your Azure Monitor workspace>"
# Microsoft Entra ID configuration.
# The Azure cloud. Options are 'AzurePublic', 'AzureChina', or 'AzureGovernment'.
azuread:
cloud: 'AzurePublic'
managed_identity:
client_id: "<client-id of the managed identity>"
oauth:
client_id: "<client-id from the Entra app>"
client_secret: "<client secret from the Entra app>"
tenant_id: "<Azure subscription tenant Id>"
Le paramètre url
spécifie le point de terminaison d'ingestion des métriques de l'espace de travail Azure Monitor. Vous pouvez le trouver dans le volet de présentation de votre espace de travail Azure Monitor sur le Portail Azure.
Utilisez managed_identity
ou oauth
pour l’authentification d’application Microsoft Entra, en fonction de votre implémentation. Supprimez l'objet que vous n'utilisez pas.
Recherchez votre ID client pour l’identité managée à l’aide de la commande Azure CLI suivante :
az identity list --resource-group <resource group name>
Pour plus d'informations, consultez liste d'identité az.
Pour rechercher votre client pour l’authentification d’identité managée sur le portail, accédez à la page Identités managées sur le Portail Azure et sélectionnez le nom d’identité approprié. Copiez la valeur de l’ID client dans le volet Vue d’ensemble de l’identité managée.
Pour rechercher l’ID client de l’application Microsoft Entra ID, utilisez la commande Azure CLI suivante (ou consultez la première étape de la section précédente, Écriture à distance à l’aide de l’authentification d’application Microsoft Entra) :
$ az ad app list --display-name < application name>
Pour plus d'informations, consultez liste d'application az ad.
Remarque
Après avoir modifié le fichier de configuration, redémarrez Prometheus pour appliquer les modifications.
Vérifier que les données d'écriture à distance circulent
Utilisez les méthodes suivantes pour vérifier que les données Prometheus sont envoyées à votre espace de travail Azure Monitor.
Explorateur de métriques Azure Monitor avec PromQL
Pour vérifier si les métriques circulent vers l'espace de travail Azure Monitor, à partir de votre espace de travail Azure Monitor dans le portail Azure, sélectionnez Métriques. Utilisez l’explorateur de métriques avec Prometheus Query Language (PromQL) pour interroger les métriques que vous attendez de l’environnement Prometheus autogéré. Pour obtenir plus d’informations, consultez Explorateur de métriques Azure Monitor avec PromQL.
Explorateur Prometheus dans l’espace de travail Azure Monitor
L’explorateur Prometheus offre un moyen pratique d’interagir avec les métriques Prometheus au sein de votre environnement Azure, rendant ainsi la surveillance et la résolution des problèmes plus efficaces. Pour utiliser l’explorateur Prometheus, accédez à votre espace de travail Azure Monitor sur le Portail Azure et sélectionnez Explorateur Prometheus. Vous pouvez alors interroger les métriques que vous attendez de l’environnement Prometheus autogéré.
Pour plus d’informations, consultez Interroger les métriques Prometheus avec les classeurs Azure.
Grafana
Utilisez les requêtes PromQL dans Grafana pour vérifier que les résultats retournent les données attendues. Pour configurer Grafana, consultez l’article sur la configuration de Grafana avec Prometheus géré.
Résoudre les problèmes d’écriture à distance
Si les données distantes n’apparaissent pas dans votre espace de travail Azure Monitor, consultez l’article Résoudre les problèmes d’écriture à distance pour connaître les problèmes courants et les solutions.