Monitorer des applications avec Prometheus et Grafana sur un Managed Kubernetes Service OVHcloud
Découvrez comment monitorer et visualiser des métriques avec Prometheus et Grafana sur un Managed Kubernetes Service OVHcloud
Objectif
Ce tutoriel vous montre comment monitorer vos applications/workloads sur un cluster Managed Kubernetes OVHcloud.
Avant de commencer
Ce tutoriel suppose que vous disposez déjà d'un cluster Managed Kubernetes OVHcloud fonctionnel, ainsi que de connaissances de base sur son fonctionnement. Pour en savoir plus sur ces sujets, consultez le guide de démarrage rapide du Managed Kubernetes Service OVHcloud.
Vous devez également avoir Helm installé sur votre poste de travail et sur votre cluster. Consultez le tutoriel Comment installer Helm sur un Managed Kubernetes Service OVHcloud.
En pratique
Dans ce guide, vous allez :
- installer l'opérateur Prometheus (qui installera Prometheus et Grafana)
- interroger Prometheus
- visualiser les métriques dans Grafana
Opérateur Prometheus
L'opérateur Prometheus permet un déploiement et une gestion natifs Kubernetes de Prometheus et des composants de monitoring associés.
L'objectif de ce projet est de simplifier et d'automatiser la configuration d'une stack de monitoring basée sur Prometheus pour les clusters Kubernetes. L'opérateur Prometheus déploie également Grafana et ses tableaux de bord, afin de visualiser vos métriques de manière conviviale.
Si l'opérateur vous intéresse, n'hésitez pas à consulter la documentation officielle de l'opérateur Prometheus.
Installer l'opérateur Prometheus
Pour ce tutoriel, nous utilisons le chart Helm de l'opérateur Prometheus disponible dans le dépôt de la communauté Prometheus.
Ajoutez le dépôt Helm de Prometheus :
Cette commande ajoute le dépôt Prometheus et met à jour l'ensemble de vos dépôts :
Pour installer le chart Helm de l'opérateur Prometheus sur votre cluster Managed Kubernetes OVHcloud, vous devez personnaliser certaines valeurs.
Pour cela, vous pouvez définir des paramètres sur la ligne de commande (--set param.name=value) ou créer un fichier local à partir des valeurs du chart et le transmettre en ligne de commande (--values /tmp/kube-prometheus-stack.values).
Pour ce tutoriel, nous choisissons la première méthode.
Pour installer Prometheus et Grafana :
Vous pouvez installer uniquement Prometheus sans Grafana en définissant la propriété suivante sur false : --set grafana.enabled=false
Comme vous pouvez le constater, un nouveau namespace prometheus sera créé, et nous avons précisé que nous souhaitons déployer un LoadBalancer afin d'accéder facilement à Prometheus et Grafana depuis l'extérieur.
Vous devriez obtenir un résultat de ce type :
Vous pouvez également vérifier en consultant les pods du nouveau namespace prometheus :
Vous pouvez également vérifier que Prometheus et Grafana disposent bien d'une IP externe :
Si ce n'est pas le cas, veuillez attendre que les Load Balancers soient correctement créés.
Visualiser les métriques
Vous pouvez maintenant récupérer les URL de Prometheus et Grafana avec les commandes suivantes :
Vous devriez obtenir le résultat suivant :
Ouvrez votre navigateur et accédez à l'interface Prometheus.
Sans aucune action de votre part, plusieurs métriques natives sont déjà disponibles. Vous pouvez les tester en saisissant sum(kube_pod_owner{job="kube-state-metrics"}) by (namespace) dans la barre de recherche.
Cliquez sur le bouton Execute pour vérifier que les métriques Kubernetes sont visibles :
Grâce à cette requête PromQL, vous pouvez lister le nombre de pods par namespace dans votre cluster Kubernetes.
Les composants Kubernetes émettent des métriques au format Prometheus. Vous trouverez plus d'informations dans la documentation officielle de Kubernetes.
Vous pouvez également accéder à l'interface Grafana. Ouvrez votre navigateur et accédez à la valeur http://$GRAFANA_URL en utilisant les identifiants ci-dessous :
- Identifiant :
admin - Mot de passe :
prom-operator(par défaut)
Là encore, grâce à l'opérateur Prometheus et sans aucune action de votre part, plusieurs tableaux de bord sont disponibles. Vous pouvez les afficher en cliquant sur l'icône Dashboards, dans la barre latérale de Grafana, puis sur browse :
Par exemple, vous pouvez cliquer sur le tableau de bord General/Kubernetes/Compute Resources/Cluster pour visualiser les métriques de votre cluster Kubernetes :
Suppression (nettoyage)
Exécutez d'abord la commande helm list dans tous les namespaces (avec l'option -A) de votre cluster Kubernetes pour voir ce que vous avez installé.
Vous pouvez maintenant supprimer ce que vous avez installé au cours de ce tutoriel, grâce aux commandes helm uninstall :
Vous devriez obtenir un résultat de ce type :
Aller plus loin
Prometheus et Grafana sont des outils de monitoring très puissants, qui disposent également de systèmes d'alerte. N'hésitez pas à approfondir le sujet, par exemple pour créer des alertes.
Pour en savoir plus sur l'utilisation pratique de votre cluster Kubernetes, nous vous invitons à consulter notre documentation OVHcloud Managed Kubernetes.
-
Pour une formation ou une assistance technique sur la mise en œuvre de nos solutions, contactez votre commercial ou consultez la page Professional Services pour obtenir un devis et faire analyser votre projet par nos experts.
-
Échangez avec notre communauté d'utilisateurs.