From 2bd761b85f6247a8bd84c17384bbde1302a157ef Mon Sep 17 00:00:00 2001 From: Daniel Allaire Date: Mon, 28 Sep 2026 12:48:29 -0400 Subject: [PATCH] exportateur postgresql : la promesse dit ce que fait Prometheus Vide, le secret ne pose pas l exportateur, mais Prometheus derive quand meme sa cible : la collecte rougit, et c est voulu. La phrase promettait l inverse. Co-Authored-By: Claude Opus 5.5 --- CHANGELOG.md | 11 +++++++---- docs/metriques-conception.md | 7 +++++-- exemples/vault.exemple.yml | 9 ++++++--- 3 files changed, 18 insertions(+), 9 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index dcffa59..0c6eeb5 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -9,10 +9,13 @@ selon la procédure (copie, lecture par un tube et comptage : 32 clés, chiffrem fichier neuf relu : 33 clés, les 32 d'origine identiques, puis remplacement). Rôle redéployé : exportateur actif, `pg_up 1`. Chezlepro n'a plus aucun critique. -**Écart restant.** `vault.yml.example` promet « VIDE = … Prometheus ne dérive aucune -cible » ; le gabarit de Prometheus dérive pourtant la cible de tout hôte du groupe, secret -ou pas. Un écosystème sans exportateur verra donc sa collecte rouge — le signal est juste, -la promesse ne l'est pas. +**La promesse alignée sur Prometheus (même jour).** `vault.yml.example` promettait +« VIDE = … Prometheus ne dérive aucune cible » ; le gabarit dérive pourtant la cible de +tout hôte de `serveur_postgresql`, secret ou pas. Le comportement est gardé — une base sans +métriques doit se voir — et la phrase dit désormais ce qui arrive : sans le secret, la +collecte d'`obs-01` rougit, et renseigner le secret l'éteint. Corrigé dans les quatre +exemplaires : `exemples/vault.exemple.yml`, `docs/metriques-conception.md`, et les +`vault.yml.example` de Chezlepro et de Technolibre. **Où vivent les voûtes.** `sortir-les-cles-du-poste.md` et `exporter_cles.py` disaient les voûtes chiffrées répliquées sur les forges. Elles sont gitignorées : chacune vit sur le diff --git a/docs/metriques-conception.md b/docs/metriques-conception.md index ef82ba5..3b28de5 100644 --- a/docs/metriques-conception.md +++ b/docs/metriques-conception.md @@ -108,8 +108,11 @@ qui donne accès aux vues de statistiques **et à elles seules**. Faire tourner exportateur sous `postgres` serait donner les clés de la base pour lire des compteurs. **Le mot de passe vient de la voûte.** Vide, l'exportateur n'est pas posé du tout : le rôle -ne l'installe pas, ne crée pas le compte, et Prometheus ne dérive aucune cible. Dégrader, -jamais deviner — et surtout jamais un mot de passe par défaut. +ne l'installe pas et ne crée pas le compte — jamais un mot de passe par défaut. **Prometheus, +lui, dérive quand même la cible** (`:9187`) de tout hôte de `serveur_postgresql` : sans le +secret, la collecte d'`obs-01` passe au rouge. C'est voulu — une base sans métriques doit se +voir, et renseigner le secret est la façon de l'éteindre. *(Cette page promettait l'inverse +jusqu'au 2026-09-28.)* **La chaîne de connexion ne passe pas par la ligne de commande.** Un `DATA_SOURCE_NAME` en argument serait lisible dans `ps` par tout le monde sur la machine ; dans un fichier à diff --git a/exemples/vault.exemple.yml b/exemples/vault.exemple.yml index 989452b..97f6658 100644 --- a/exemples/vault.exemple.yml +++ b/exemples/vault.exemple.yml @@ -75,7 +75,10 @@ vault_setops_console_oidc: "" # tourner l'exportateur en `postgres` serait donner les cles de la base pour lire des # compteurs. # -# VIDE = PAS D'EXPORTATEUR DU TOUT. Le role ne le pose pas, ne cree pas le compte, et -# Prometheus ne derive aucune cible. Degrader, jamais deviner — et surtout jamais un mot -# de passe par defaut. +# VIDE = PAS D'EXPORTATEUR DU TOUT. Le role ne le pose pas et ne cree pas le compte — +# jamais un mot de passe par defaut. MAIS PROMETHEUS DERIVE QUAND MEME SA CIBLE (`:9187`) +# pour tout hote de `serveur_postgresql`, secret ou pas : sans lui, la sonde `collecte` +# d'obs-01 passe au rouge (« muettes : ...:9187 »). C'est voulu — une base sans metriques +# se voit ; renseigner ce secret est la facon de l'eteindre. (Cette ligne promettait +# l'inverse jusqu'au 2026-09-28 ; Chezlepro l'a vecu.) vault_pg_exportateur: ""