Set-OPS-Public/roles/serveur_prometheus
Daniel Allaire ffb515cf3c idempotence : Prometheus trie ses cibles, Forgejo conserve son secret JWT
Prometheus : intersect rend un ENSEMBLE, dont l'ordre d'iteration n'est pas
stable d'un processus a l'autre. Le fichier se rendait differemment a chaque
passage — memes cibles, ordre different — et le service redemarrait pour rien.
Trie sur les hotes.

Forgejo : JWT_SECRET est genere par le service et ajoute par lui a la fin
d'app.ini. Le gabarit ne le portait pas, donc chaque rendu l'EFFACAIT et
Forgejo en generait un nouveau. Ce n'etait pas du bruit : chaque deploiement
invalidait les jetons OAuth2 emis par la forge. Le role le relit et le repose ;
meme empreinte avant/apres, changed=0 aux 2e et 3e passages.

Trois erreurs de methode de ma part dans cette enquete :
- conclu « diff vide donc contenu identique » alors que no_log masquait le diff
- applique un replace sur le gabarit SANS verifier qu'il avait pris (la section
  [oauth2] n'existait pas), affiche un succes, et interprete trois passages sur
  cette base
- garde une expression Jinja indiagnosticable en place a cause de no_log

Verifier l'effet, pas l'intention — un replace qui ne trouve rien reussit
silencieusement, exactement comme kcadm -s sur une map.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-09 14:44:03 -04:00
..
defaults Zéro-confiance : flux Métriques chiffré (node_exporter TLS + scrape https) 2026-07-04 21:04:40 -04:00
handlers Rendre le dry-run (--check) fiable sur les rôles applicatifs 2026-07-01 21:01:53 -04:00
meta authentification : chaque rôle déclare sa position, gardé par P29 2026-08-03 17:05:43 -04:00
tasks Rendre le dry-run (--check) fiable sur les rôles applicatifs 2026-07-01 21:01:53 -04:00
templates idempotence : Prometheus trie ses cibles, Forgejo conserve son secret JWT 2026-08-09 14:44:03 -04:00
README.md Set-OPS — moteur d'ecosystemes numeriques souverains (Alliance Boreale) 2026-06-24 20:17:46 -04:00

serveur_prometheus

Collecte de métriques Prometheus (paquet Debian), plateforme d'observabilité.

Rôle

  • Installe prometheus.
  • Déploie /etc/prometheus/prometheus.yml : job prometheus (soi-même) + job node dont les cibles sont dérivées de l'inventaire (hôtes actifs de client_metriquenode_exporter sur :9100).
  • Rétention via /etc/default/prometheus (--storage.tsdb.retention.time).
  • promtool check config avant rechargement (handler Valider et recharger prometheus).

Cibles dérivées de l'inventaire

Comme la zone DNS, la liste de scrape se construit toute seule : ajouter un hôte au groupe client_metrique et l'activer suffit à le faire scraper. Aucun edit manuel.

Variables principales

Variable Défaut Rôle
serveur_prometheus_intervalle 15s scrape_interval
serveur_prometheus_retention 15d Rétention TSDB
serveur_prometheus_groupe_metriques client_metrique Groupe source des cibles
serveur_prometheus_port_node 9100 Port node_exporter
serveur_prometheus_cibles_supplementaires [] Jobs additionnels libres

Intégration

  • Côté VM : node_exporter est installé par le futur rôle client_metrique.
  • serveur_grafana consommera Prometheus comme datasource.

Hors périmètre

  • Alerting (Alertmanager), règles d'alerte, fédération — phases dédiées.