1. Fleet Management et remotecfg #
Configurer à distance.
Le principe #
Mettre à jour la configuration de 300 Alloy un par un ne tient pas. Avec Fleet Management (Grafana Cloud, ou en auto-hébergé pour les offres entreprise), vous créez des pipelines associés à des attributs ; chaque Alloy interroge le service grâce au bloc remotecfg et applique les pipelines qui correspondent à ses attributs. L'inventaire montre la santé, la version et les attributs de chaque collecteur.
config.alloy #
remotecfg {
url = sys.env("GCLOUD_FLEET_URL")
id = constants.hostname
attributes = {"env" = "production", "team" = "payments"}
poll_frequency = "1m"
basic_auth {
username = sys.env("GCLOUD_FLEET_USER")
password = sys.env("GCLOUD_RW_API_KEY")
}
}Configuration validée avec alloy validate (Alloy v1.21.3, novembre 2026).
id: identifiant du collecteur ; sans lui, Alloy génère un UUID conservé dansalloy_seed.json.attributes: servent à choisir les pipelines ; le préfixecollector.est réservé (collector.osetcollector.versionsont ajoutés automatiquement).poll_frequency: 1 min par défaut, 10 s minimum.- Le protocole alloy-remote-config est libre (Apache 2.0) : vous pouvez implémenter votre propre serveur.
Gardez une configuration locale minimale (le bloc remotecfg et l'auto-supervision) : si le service est injoignable, Alloy continue avec la dernière configuration reçue.2. Kubernetes Monitoring #
Le chart Helm k8s-monitoring.
Plusieurs Alloy spécialisés #
Le chart Helm k8s-monitoring (version 4 et suivantes) déploie, via l'Alloy Operator, plusieurs Alloy aux rôles distincts. En v4, vous nommez vous-même les collecteurs (collectors) et leur appliquez des presets ; chaque fonctionnalité (clusterMetrics, podLogs, applicationObservability, autoInstrumentation…) est rattachée à un collecteur, et les destinations sont typées par protocole (prometheus, loki, otlp, pyroscope).
| Collecteur | Presets | Rôle |
|---|---|---|
| Métriques | clustered, statefulset | kubelet, cAdvisor, kube-state-metrics, ServiceMonitor |
| Événements | singleton | Événements du cluster (une seule instance) |
| Logs | filesystem-log-reader, daemonset | Logs des pods et des nœuds |
| Réception | daemonset | OTLP poussé par les applications |
| Profils | privileged, daemonset | Profilage continu |
helm repo add grafana https://grafana.github.io/helm-charts
helm upgrade --install k8s-monitoring grafana/k8s-monitoring \
--namespace monitoring --create-namespace -f values.yamlL'option autoInstrumentation déploie aussi Beyla en DaemonSet. Le format de values.yaml a changé entre les versions majeures : partez de l'assistant de Grafana Cloud ou des exemples du dépôt du chart.
3. Le moteur OpenTelemetry #
Une configuration Collector dans Alloy.
alloy otel #
Vous avez déjà des configurations YAML de l'OpenTelemetry Collector ? Le moteur OTel d'Alloy (en préversion publique) les exécute telles quelles, sans les traduire en syntaxe Alloy. Avec alloy otel-supervisor, un superviseur OpAMP intégré laisse Fleet Management piloter cette configuration à distance.
alloy otel --config otelcol.yaml
alloy convert --source-format=otelcol --output=config.alloy otelcol.yaml # ou convertir vers la syntaxe Alloy| Besoin | Choix |
|---|---|
| Nouvelle configuration, composants Grafana (faro, beyla, clustering) | Moteur par défaut (syntaxe Alloy) |
| Reprendre un parc d’OpenTelemetry Collector existant | Moteur OTel + OpAMP |
