Ce que vous allez apprendre dans ce TP
- Installer Alloy avec Helm
- Découvrir des pods par annotation
- Externaliser la configuration
Introduction #
Ce que vous allez apprendre dans cette section
- Installer Alloy avec Helm
- Découvrir des pods par annotation
- Externaliser la configuration
Contexte. En production Alloy tourne sur Kubernetes. Vous le déployez avec le Helm Chart officiel, en StatefulSet clusterisé, puis vous sortez sa configuration dans une ConfigMap pour qu'elle soit versionnée dans Git et modifiable sans réinstaller le chart.
Prérequis : Un cluster local (kind, minikube ou k3d), kubectl et helm · Durée estimée : 45 min
Prérequis : un cluster Kubernetes local (kind, minikube ou k3d),kubectl et helm.Installation avec Helm #
Valeurs du chart et configuration River.
1. Écrire le fichier values.yaml
Pourquoi ? Un fichier values versionné décrit l'installation complète : c'est la base d'un déploiement reproductible plutôt que de commandes tapées à la main.
Configurez le chart pour déployer 3 réplicas enstatefulset, avec le clustering activé, et une configuration qui découvre les pods ayant l'annotationprometheus.io/scrape: "true".2. Installer le chart
Pourquoi ? Helm applique le chart et crée les ressources (StatefulSet, RBAC, Service) : on vérifie donc que tout est démarré avant d'aller plus loin.
Ajoutez le dépôt Helm de Grafana et installez la releasealloydans le namespacemonitoring.3. Contrôler le cluster
Pourquoi ? Le port-forward donne accès à l'UI sans l'exposer sur Internet ; vérifier les 3 membres confirme que le clustering fonctionne dans Kubernetes.
Faites unport-forwardsur un pod, ouvrez l'UI et vérifiez que le cluster compte 3 membres. Consultez les logs en cas d'erreur de configuration.
Externaliser la configuration #
Séparer le code du chart.
4. Utiliser une ConfigMap existante
Pourquoi ? Séparer la configuration du chart permet de la modifier par une simple mise à jour de ConfigMap et de la relire depuis Git, sans toucher aux valeurs d'infrastructure.
Sortez la configuration River duvalues.yaml: créez une ConfigMap à partir d'un fichierconfig.alloyversionné dans Git et demandez au chart de l'utiliser sans en créer une.
Niveau de difficulté : ●●●○○ (3/5)
Mon suivi
Connectez-vous pour suivre votre progression et prendre des notes. Se connecter
💬 Discussions récentes de la formation
- Alloy : recevoir de l'OTLP et l'envoyer vers Tempo et Mimir✓ résolu · 1 réponse(s)
Poser une question sur cette leçon →Voir toutes les discussions de la formation
Glossaire de la formation
Observabilité
La capacité à connaître l'état interne d'un système à partir des données qu'il émet.Ces données sont classées en 3 piliers : logsmétriquestracesprofil...
Traces distribuées
Technique (issue du pilier des Traces) permettant de suivre le cheminement complet d'une requête à travers de multiples micro-services pour identifier...
Métriques
Mesures numériques collectées à intervalles réguliers (ex: CPU, RAM, temps de réponse) utilisées pour évaluer l'état de santé global d'un système au f...
Profilage en continu (Continuous Profiling)
Analyse constante de l'exécution du code en production pour identifier avec précision quelles lignes de code ou fonctions consomment le plus de ressou...
Access Log
Fichier de journalisation enregistrant les requêtes traitées par un serveur web (Apache, Nginx, Lighttpd, etc.). Il permet de tracer l'activité du ser...
Client IP
L'adresse IP de l'utilisateur effectuant la requête vers le serveur web. Lorsqu'un utilisateur passe par un Load Balancer ou un proxy (ex: Cloudflare)...
Timestamp
La date et l'heure exactes auxquelles la requête a été reçue par le serveur.Configuration : %t dans Apache, $time_local ou $time_iso8601 dans Nginx.
Request
La ligne de requête initiale du client. Elle comprend généralement la méthode HTTP (ex: GET), l'URL demandée et la version du protocole HTTP.Configura...
Status Code
Le code de statut HTTP final renvoyé par le serveur au client (ex : 200 pour un succès, 404 pour ressource non trouvée).Configuration : %>s dans Apach...
Size
Le volume des données renvoyées au client, mesuré en octets (généralement sans les en-têtes HTTP).Configuration : %b ou %O dans Apache, $body_bytes_se...
Referrer
L'URL de la page web depuis laquelle le client a cliqué ou suivi un lien pour accéder à la ressource actuelle.Configuration : %{Referer}i dans Apache,...
User-Agent
Les informations d'identification fournies par le client concernant son navigateur, son système d'exploitation et son appareil. Sa structure standard ...
Response Time
La durée totale prise par le serveur pour traiter la requête et renvoyer la réponse au client.Configuration : %D (microsecondes) ou %T (secondes) dans...
Grafana Alloy
Collecteur de télémétrie open source et flexible, successeur de Grafana Agent. Il est conçu pour collecter, transformer et exporter des logs, métrique...
River
Langage de configuration déclaratif utilisé par Grafana Alloy, inspiré de HCL (Terraform). Il permet de définir des pipelines de télémétrie complexes ...
Grafana Loki
Système de journalisation (logs) multi-tenant, hautement disponible et inspiré de Prometheus. Il est conçu pour être très économe en ressources en n'i...
Articles recommandés
Grafana Alloy : Déploiement Avancé et Clustering
Maîtrisez le déploiement avancé de Grafana Alloy en mode clustering. Comprenez ses avantages pour...
Fleet Management, Kubernetes Monitoring et moteur OpenTelemetry : Alloy à grande échelle
Piloter des centaines d'Alloy avec remotecfg et Fleet Management, déployer le chart Helm k8s-moni...
Déployer et exploiter Pyroscope sur Kubernetes
Installer Pyroscope avec Helm, collecter les profils du cluster avec Alloy (annotations et eBPF),...
Déployer Thanos sur Kubernetes (kube-prometheus-stack, Helm et Operator)
Installer Thanos sur Kubernetes : sidecar via kube-prometheus-stack, secret objstore, Bitnami/kub...
Installer Grafana Loki (Docker Compose, binaire et Helm)
Installer et valider Grafana Loki : configuration minimale, Docker Compose avec Grafana et Alloy,...
Configuration de Grafana Alloy : syntaxe, ports et premiers composants
Dans le cadre d'une formation Grafana ou formation observabilité, maîtrisez la syntaxe déclarativ...
OpenTelemetry sur Kubernetes : Operator, auto-instrumentation et Collector
Déployer OpenTelemetry sur Kubernetes : modes de déploiement du Collector (DaemonSet, Deployment,...
Alloy et l'écosystème Grafana Labs : quel composant pour quel outil ?
La carte des intégrations d'Alloy avec Faro, Beyla, k6, Loki, Mimir, Tempo, Pyroscope, Database O...
Grafana Alloy : Guide complet pour collecter métriques, logs et traces
Tutoriel complet sur Grafana Alloy. Découvrez comment installer, configurer et utiliser ce collec...