Set-OPS-Public/roles/serveur_grafana
Daniel Allaire 0778979b89 une source vide n est pas « tout le monde »
Les journaux de la fabric, et le defaut de classe que leur mise en place a
revele. 10 hotes dans Loki (7 VM du site + 3 hyperviseurs), site a 67
services tous OK contre 51 avant.

METRIQUES TIREES, JOURNAUX POUSSES. Un scrape part du collecteur et doit
REVENIR : il exige un chemin symetrique, que la route par defaut gelee
interdit. Un push part de la source et n attend qu un accuse.

Trois trous dans les generateurs. Le devis de la frontiere ne connaissait
fabric qu en DESTINATION - un flux entrant tombait dans « rien d autre n
entre » sans rien dire. La regle etait posee sur la patte de la destination
alors que D-61 raisonne en ARRIVEE, et opt7 manquait a la table des zones.

Et le plus grave : fabric etait un mot RECONNU mais NON RESOLU. Source
vide, donc regle sans saddr - tcp dport 3100 accept, ouvert a tous. Un mot
reconnu mais non resolu est pire qu un mot inconnu : celui-ci serait refuse
a la validation, celui-la produit une porte grande ouverte qui a l air d un
flux precis.

LA CLASSE ENTIERE EST REFERMEE. Le defaut n etait pas propre a fabric :
toute paire nommant un ensemble et ne resolvant rien ouvrait le port.
Trouve en lisant les fichiers generes, l API de supervision d un tenant
etait ouverte a tous parce que pair: serveur_backup ne resout rien - cet
ecosysteme depose chez le site. expositions et externe, eux, veulent bien
dire tout le monde : c est une intention. Ailleurs, pas de source, pas de
regle, et le generateur le DIT.

Trois regles se referment, chacune verifiee AVANT d appliquer. Deux etaient
sans effet ; la troisieme portait Grafana, qui ecoute bien sur 3000. Sa
declaration disait pair: edge - juste chez un tenant, faux au site qui n a
pas d edge. Ajout de admin : ce qui etait accidentel devient explicite.

Et la mesure a montre autre chose : Grafana etait DEJA injoignable depuis
le poste, la frontiere ne laissant pas passer le 3000. Le site a une
console deployee et sans chemin d acces. Ce n est pas corrige ici, mais
c est dit.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Crgis8CxCWkAGFA1ecBz3q
2026-09-10 19:14:23 -04:00
..
defaults les depots tiers passent par le cache, et le tenant n a plus le sien 2026-09-10 14:53:48 -04:00
files/dashboards Grafana : dashboard provisionné « Journaux de la flotte » (Loki, Viewer-friendly) 2026-07-04 16:10:59 -04:00
handlers Rendre le dry-run (--check) fiable sur les rôles applicatifs 2026-07-01 21:01:53 -04:00
meta une source vide n est pas « tout le monde » 2026-09-10 19:14:23 -04:00
tasks un fichier vide existe, et une sonde pour les correctifs 2026-09-10 17:26:35 -04:00
templates observabilite : le site cesse de ne rien voir de lui-meme 2026-09-10 04:43:01 -04:00
README.md Set-OPS — moteur d'ecosystemes numeriques souverains (Alliance Boreale) 2026-06-24 20:17:46 -04:00

serveur_grafana

Tableaux de bord Grafana (dépôt apt officiel Grafana). Interface d'observabilité au-dessus de Prometheus (métriques) et Loki (journaux).

Rôle

  • Ajoute le dépôt apt Grafana et installe grafana.
  • Provisionne les datasources Prometheus + Loki (/etc/grafana/provisioning/datasources/) — Grafana les câble au démarrage.
  • Domaine, root_url et mot de passe admin (Vault) via un drop-in systemd (non destructif, ne touche pas grafana.ini du paquet).
  • Inscriptions publiques désactivées.

Publication

  • Derrière serveur_nginx (TLS à l'edge) ; GF_SERVER_ROOT_URL=https://grafana.exemple.internal/.
  • Le site nginx se déclare côté serveur_nginx.

Secret requis (Vault)

serveur_grafana_admin_password: "{{ vault_grafana_admin }}"

Variables principales

Variable Défaut Rôle
serveur_grafana_hostname grafana.exemple.internal Domaine
serveur_grafana_prometheus_url http://localhost:9090 Datasource Prometheus
serveur_grafana_loki_url http://localhost:3100 Datasource Loki

Notes

  • Prometheus, Loki et Grafana sont co-localisés sur obs-01 → datasources en localhost.
  • Dépendance serveur_grafana requiert serveur_prometheus + serveur_loki actifs (déjà dans docs/dependances-groupes.yml).

Hors périmètre

  • Dashboards provisionnés (à ajouter ensuite), alerting Grafana, authentification OIDC via Keycloak (intégration ultérieure).