Vous voulez surveiller vos applications Kubernetes mais vous ne savez pas par où commencer ? Cette formation vous guide pas à pas pour construire une plateforme d’observabilité complète — de l’installation de Minikube jusqu’à une stack production-ready avec métriques, logs, traces et alertes.
En 9 modules pratiques, vous déployez une application microservices, puis vous ajoutez brique par brique : Prometheus pour les métriques, Grafana pour la visualisation, Alertmanager pour les notifications, Loki pour les logs centralisés, et Tempo pour les traces distribuées.
À qui s’adresse cette formation ?
Section intitulée « À qui s’adresse cette formation ? »Cette formation est conçue pour les développeurs, ops et SRE qui veulent :
- Comprendre les fondamentaux de l’observabilité (métriques, logs, traces)
- Savoir déployer et configurer les outils standards de l’industrie
- Créer des dashboards et des alertes pertinentes - Diagnostiquer des problèmes en production grâce à la corrélation des signaux
Prérequis
Section intitulée « Prérequis »| Prérequis | Niveau requis | Notes |
|---|---|---|
| Linux / Terminal | Basique | Savoir naviguer, éditer des fichiers, lire des logs |
| Docker | Basique | Comprendre ce qu’est un conteneur |
| Kubernetes | Notions | Savoir ce qu’est un pod, un service, un namespace |
| YAML | Basique | Savoir lire et modifier des fichiers YAML |
Configuration matérielle requise
Section intitulée « Configuration matérielle requise »| Ressource | Minimum | Recommandé |
|---|---|---|
| RAM | 8 Go | 16 Go |
| CPU | 4 cœurs | 6+ cœurs |
| Disque | 20 Go libres | 40 Go libres |
| OS | Linux, macOS, Windows (WSL2) | Linux |
Ce que vous allez apprendre
Section intitulée « Ce que vous allez apprendre »À la fin de cette formation, vous saurez :
- Déployer une application microservices instrumentée avec OpenTelemetry
- Installer et configurer Prometheus pour collecter les métriques
- Écrire des requêtes PromQL pour extraire des insights
- Créer des dashboards Grafana avec variables et provisioning as code
- Configurer Alertmanager pour envoyer des notifications (Slack, email, webhook)
- Centraliser les logs avec Loki et interroger avec LogQL
- Collecter les traces distribuées avec OpenTelemetry et Tempo
- Corréler les 3 signaux pour un diagnostic efficace
- Appliquer les bonnes pratiques production (HA, rétention, RBAC)
Architecture de la stack
Section intitulée « Architecture de la stack »Vous allez construire cette architecture complète :
Stack technologique
Section intitulée « Stack technologique »| Signal | Collecte | Stockage | Requêtage | Visualisation |
|---|---|---|---|---|
| Métriques | OTel Collector | Prometheus TSDB | PromQL | Grafana |
| Logs | Promtail | Loki | LogQL | Grafana |
| Traces | OTel Collector | Tempo | TraceQL | Grafana |
| Alertes | Prometheus Rules | Alertmanager | — | Grafana |
Parcours de formation
Section intitulée « Parcours de formation »La formation est organisée en 9 modules progressifs. Chaque module s’appuie sur les précédents.
Vue d’ensemble
Section intitulée « Vue d’ensemble »| Module | Durée | Difficulté | Ce que vous construisez |
|---|---|---|---|
| 00 — Setup | 30 min | ⭐ | Minikube + Helm + kubectl |
| 01 — Application démo | 30 min | ⭐ | OpenTelemetry Demo (23 pods) + Collector |
| 02 — Prometheus | 90 min | ⭐⭐ | Prometheus + PromQL |
| 03 — Grafana | 60 min | ⭐⭐ | Dashboards + Variables + Provisioning |
| 04 — Alerting | 45 min | ⭐⭐ | Alertmanager + Règles + Routing |
| 05 — Loki | 60 min | ⭐⭐ | Loki + Promtail + LogQL |
| 06 — Tempo | 60 min | ⭐⭐⭐ | Tempo + Traces distribuées |
| 07 — Corrélation | 45 min | ⭐⭐⭐ | Exemplars + Liens Logs↔Traces |
| 08 — Production | 60 min | ⭐⭐⭐ | HA + Rétention + RBAC + GitOps |
Durée totale : ~7h30 (pauses incluses)
Modules disponibles
Section intitulée « Modules disponibles »Modules à venir
Section intitulée « Modules à venir »Les modules suivants sont en cours de finalisation :
| Module | Contenu prévu | Statut |
|---|---|---|
| 06 — Tempo | Traces distribuées, spans, instrumentation | 🚧 En cours |
| 07 — Corrélation | Exemplars, liens logs↔traces, Explore | 🚧 En cours |
| 08 — Production | HA, rétention longue durée, RBAC multi-tenant, GitOps | 🚧 En cours |
L’application de démonstration
Section intitulée « L’application de démonstration »Vous travaillerez avec OpenTelemetry Demo, l’application de référence de la CNCF pour l’observabilité. C’est une application e-commerce complète avec 23 microservices.
Pourquoi cette application ?
Section intitulée « Pourquoi cette application ? »| Critère | Avantage |
|---|---|
| Multi-langage | Go, Java, .NET, Python, Node.js, Rust — représentatif du monde réel |
| Instrumentation native | Métriques et traces OpenTelemetry intégrées |
| Générateur de charge | Trafic réaliste automatique avec Locust |
| Scénarios d’erreur | Feature flags pour simuler des pannes |
| Open source | Maintenu par la CNCF, bien documenté |
Architecture de l’application
Section intitulée « Architecture de l’application »Dépôt Git du lab
Section intitulée « Dépôt Git du lab »Tous les fichiers de configuration Helm sont disponibles dans ce dépôt :
git clone https://github.com/stephrobert/lab-observability.gitcd lab-observabilityStructure du dépôt
Section intitulée « Structure du dépôt »lab-observability/├── 00-setup/ # Scripts de vérification├── 01-demo-app/│ ├── values.yaml # Helm values pour OTel Demo│ └── otel-collector-values.yaml # Config du Collector├── 02-prometheus/│ └── helm-values/│ └── prometheus-minimal.yaml├── 03-grafana/│ └── helm-values/│ └── grafana.yaml├── 04-alerting/│ ├── helm-values/│ │ └── alertmanager.yaml│ └── rules/ # Règles d'alerte├── 05-loki/│ └── helm-values/│ └── loki-stack.yaml├── 06-tempo/ # (à venir)├── 07-correlation/ # (à venir)├── 08-production/ # (à venir)└── README.mdAccès aux interfaces
Section intitulée « Accès aux interfaces »Une fois la formation terminée, vous accéderez aux interfaces via NodePort :
| Service | URL | Credentials |
|---|---|---|
| OTel Demo | http://<MINIKUBE_IP>:30080 | — |
| Prometheus | http://<MINIKUBE_IP>:30090 | — |
| Grafana | http://<MINIKUBE_IP>:30030 | admin / admin |
| Alertmanager | http://<MINIKUBE_IP>:30093 | — |
Pour obtenir l’IP de Minikube :
minikube ipCompétences acquises par module
Section intitulée « Compétences acquises par module »Module 00 — Setup
Section intitulée « Module 00 — Setup »- Installer Minikube avec les bonnes ressources
- Configurer kubectl et Helm
- Ajouter les repos Helm nécessaires
Module 01 — Application démo
Section intitulée « Module 01 — Application démo »- Déployer une application microservices avec Helm
- Comprendre le protocole OTLP (OpenTelemetry Protocol)
- Configurer un OpenTelemetry Collector
Module 02 — Prometheus
Section intitulée « Module 02 — Prometheus »- Expliquer le modèle pull de Prometheus
- Configurer le scraping automatique
- Écrire des requêtes PromQL (rate, sum, histogram_quantile)
- Créer des recording rules
Module 03 — Grafana
Section intitulée « Module 03 — Grafana »- Créer des dashboards avec différents types de panels
- Utiliser les variables pour des dashboards dynamiques
- Provisionner dashboards et datasources as code
- Importer des dashboards communautaires
Module 04 — Alerting
Section intitulée « Module 04 — Alerting »- Écrire des règles d’alerte efficaces
- Configurer le routing dans Alertmanager
- Gérer les silences et les inhibitions
- Intégrer Slack, email ou webhook
Module 05 — Loki
Section intitulée « Module 05 — Loki »- Déployer Loki en mode single binary
- Configurer Promtail pour collecter les logs Kubernetes
- Écrire des requêtes LogQL
- Parser les logs JSON et extraire des labels
Conseils pour réussir
Section intitulée « Conseils pour réussir »-
Suivez l’ordre des modules
Chaque module installe des composants utilisés par les suivants. Sauter un module causera des erreurs.
-
Exécutez chaque commande
Ne vous contentez pas de lire. Tapez chaque commande et observez le résultat.
-
Validez avant de passer au module suivant
Chaque module se termine par une section “Validation”. Assurez-vous que tout fonctionne avant de continuer.
-
En cas de problème, consultez le dépannage
Chaque module contient une section “Dépannage” avec les erreurs courantes.
-
Prenez des notes
Notez les commandes utiles et les concepts que vous voulez approfondir.
Ressources complémentaires
Section intitulée « Ressources complémentaires »Documentation officielle
Section intitulée « Documentation officielle »Guides connexes sur ce site
Section intitulée « Guides connexes sur ce site »À retenir
Section intitulée « À retenir »- L’observabilité repose sur 3 piliers : métriques, logs, traces
- Prometheus collecte les métriques en mode pull et stocke dans une TSDB
- PromQL est le langage de requête pour extraire des insights des métriques
- Grafana centralise la visualisation de tous les signaux
- Alertmanager gère le routing et la déduplication des alertes
- Loki stocke les logs de façon économique en indexant uniquement les labels
- OpenTelemetry est le standard pour l’instrumentation des applications
- La corrélation entre signaux est la clé du diagnostic efficace
Commencer la formation
Section intitulée « Commencer la formation »Prêt à construire votre plateforme d’observabilité ? Commencez par le setup de l’environnement :
Chaque dossier (00-setup/, 01-demo-app/, etc.) correspond à un module.
Durée estimée
Section intitulée « Durée estimée »| Module | Durée |
|---|---|
| 00 — Setup | 20 min |
| 01 — Application démo | 30 min |
| 02 — Prometheus | 90 min |
| 03 — Grafana | 60 min |
| 04 — Alerting | 45 min |
| 05 — Loki | 60 min |
| 06 — Tempo | 45 min |
| 07 — Corrélation | 30 min |
| 08 — Production | 60 min |
| Total | ~7h30 |