Vérification des sauvegardes
Une tâche de sauvegarde qui annonce « réussi » mais n’écrit plus rien depuis trois semaines passe inaperçue jusqu’au jour où vous en avez besoin. Avec une surveillance de sauvegarde (backup watch) vous indiquez à monsys où la sauvegarde atterrit ; l’agent vérifie ensuite lui-même qu’il y a bien quelque chose de récent.
Fonctionnement
Section intitulée « Fonctionnement »- Vous enregistrez un chemin par agent : un dossier (p. ex.
/var/backups/borg) ou un fichier (p. ex./srv/dumps/db.sql.gz). - Le hub joint la liste des surveillances à la prochaine réponse d’ingestion ; aucune configuration séparée de l’agent n’est nécessaire.
- Toutes les 30 minutes, l’agent fait un
statdu chemin et cherche le fichier le plus récent (jusqu’à 8 niveaux, max. 200 000 entrées). Il n’ouvre jamais les fichiers : une surveillance sur un dépôt borg ou restic chiffré fonctionne sans aucun droit de lecture sur le contenu. - L’agent rapporte
newest_mtime, la taille et le nom du fichier dans une charge utilebackup_status. - Le hub compare l’âge au max_age_hours configuré et alerte lorsque la sauvegarde est périmée.
Créer une surveillance
Section intitulée « Créer une surveillance »Page de détail de l’agent → section Sauvegardes → + Surveillance :
| Champ | Signification |
|---|---|
| Chemin | chemin absolu sur l’hôte |
| Libellé | nom libre, affiché dans les alertes (vide = le chemin) |
| Âge max. (heures) | 1 à 8760 ; par défaut 26 — juste plus qu’une tâche quotidienne |
Rôle Editor requis ; chaque mutation est inscrite dans le journal
d’audit. L’API est GET/POST /api/v1/backup-watches,
PUT/DELETE /api/v1/backup-watches/<id>.
Le worker du hub parcourt toutes les surveillances chaque heure :
| Situation | Alerte |
|---|---|
| âge > max_age | warning — Backup stale: <libellé> |
| âge > 2 × max_age | critical — même titre, sévérité supérieure |
| chemin inaccessible / erreur côté agent | warning — Backup check failed: <libellé> |
Les alertes sont dédupliquées par titre : une seule alerte ouverte par surveillance, pas de répétition horaire. Elles suivent le pipeline d’alertes habituel (ntfy, mail, webhook, astreinte).
Preuve de conformité
Section intitulée « Preuve de conformité »La migration 133 ajoute le contrôle ISO27001-A.8.13-backup. Sa requête de preuve compte les surveillances dont la dernière sauvegarde est dans l’âge maximal ; ce chiffre alimente automatiquement les audit packs et la vue conformité. Pas de surveillance = pas de preuve.
- La vérification repose sur le mtime : une tâche qui écrit un fichier vide ou corrompu compte comme « fraîche ». Combinez avec des tests de restauration.
- Les partages réseau doivent être montés sur l’hôte où tourne l’agent.
- Les agents antérieurs à la version de la session 18 ignorent la liste ;
le hub affiche alors un
last_checked_atvide.