[infra] Le dépôt quotidien dans le conteneur d'archive est supervisé #235
Labels
No labels
Compat/Breaking
EC01
EC02
EC03
EC04
EC05
EC06
Kind/BDD
Kind/Back
Kind/Bug
Kind/CICD
Kind/Cloud
Kind/Contenu
Kind/Data
Kind/Documentation
Kind/Enhancement
Kind/Feature
Kind/Front
Kind/IA
Kind/Infra
Kind/Monitoring
Kind/Security
Kind/Testing
Portée/Post-jury
Priority
Critical
Priority
High
Priority
Low
Priority
Medium
Reviewed
Confirmed
Reviewed
Duplicate
Reviewed
Invalid
Reviewed
Won't Fix
Status
Abandoned
Status
Blocked
Status
Need More Info
ops/alerte
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
g2/enervision#235
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Exigence couverte
ENF-08
Épreuve servie
EC04 · Cloud et sécurisation
Ce qu'on veut obtenir
La supervision couvre l'hôte, les conteneurs, PostgreSQL et le métier — quatre
tableaux de bord et cinq alertes. Pas un seul indicateur ne porte sur Azure. Le
jour où le #71 posera l'envoi quotidien de l'archive, il tournera sans que personne ne
sache s'il tourne : une sauvegarde hors site dont l'échec est silencieux ne vaut pas
mieux que pas de sauvegarde, et c'est exactement le défaut que le #92 a déjà rencontré
une fois — une copie planifiée à une heure où la machine était éteinte, qui n'existait
que sur le papier.
On veut une métrique, un panneau, une alerte : l'âge du dernier objet déposé dans le
conteneur
archive, visible sur le tableau de bordsocle, et une alerte quand ildépasse une journée et demie.
C'est aussi le seul des cinq critères d'évaluation qui, côté cloud, n'est pas
seulement à rendre visible : il est à créer.
Critères d'acceptation
conteneur
archive, exposée à Prometheus (collecteurtextfiledenode-exporter, ou sonde dédiée — le choix est libre, la métrique ne l'est pas).
la croissance du §6 du plan de migration se
constate au lieu d'être extrapolée.
clair : elle lit avec le jeton du #70, rendu comme les autres secrets sous
/etc/enervision/en0640 root:deploy.socleporte un panneau « Archive cloud — âge du dernierdépôt », provisionné au fichier et non créé à la main dans Grafana.
destinataire nommé et action écrite, dans
infra/compose/supervision/grafana/provisioning/alerting/rules.yaml.lire comme un dépôt sain. Métrique d'horodatage de dernière exécution, ou règle
sur l'absence de série.
tests/ci/test-supervision.shcompte six alertes au lieu de cinq et vérifie laprésence du panneau.
Comment on le vérifie
Preuve à joindre : la capture du panneau avec une série non vide, et la notification
d'alerte reçue lors du test de déclenchement. Une alerte qu'on n'a jamais vue partir
n'est pas une alerte.
Manuel d'exploitation à mettre à jour
docs/runbooks/supervision.md— la sixième alerte : ce qu'elle veut dire, quoiregarder en premier, et le fait qu'un jeton SAS expiré (#70) en est la cause la plus
probable avant la panne de réseau.
docs/runbooks/stockage-minio.mdou un nouveau runbook d'archive cloud, selon où le#71 aura posé la manœuvre d'envoi.
Risque et retour arrière
Le risque est l'alerte qui ment. Si la sonde échoue en silence — jeton expiré,
azabsent, réseau coupé — l'absence de métrique peut se lire comme « rien àsignaler ». C'est pourquoi le sixième critère ci-dessus n'est pas optionnel : il faut
une règle qui se déclenche sur l'absence de série, pas seulement sur une valeur
haute.
Second risque : la sonde interroge Azure à chaque intervalle de collecte. La garder
rare — une fois par heure suffit pour un dépôt quotidien — sinon on paie des
opérations de lecture pour rien et on ajoute une dépendance réseau à la supervision.
Retour arrière : retirer le fichier de règle et le panneau, rejouer
ansible-playbook site.yml --tags app. Le provisioning au fichier est idempotent,deleteDatasourceset le rechargement de Grafana font le reste.