Guide · Sauvegarde
Surveiller ses sauvegardes avec un interrupteur « homme mort »
Un job de sauvegarde qui plante bruyamment est facile à repérer. Un job qui cesse simplement de tourner, parce qu'une ligne cron a été supprimée, qu'un identifiant a expiré, ou qu'une machine a été reconstruite sans lui, reste invisible jusqu'au jour où il faut restaurer. Un simple check-in comble ce trou.
1. Créez un check
Créez un check dans Mortemain avec le planning et la fenêtre de tolérance de votre sauvegarde, puis copiez son URL de ping unique :
https://ping.mortemain.com/votre-uuid-de-check
2. Faites le check-in quand la sauvegarde se termine
Ajoutez une requête à la fin du job, atteinte seulement si tout ce qui précède a réussi. Un simple GET ou POST sur l'URL de base suffit :
#!/bin/sh CHECK_URL="https://ping.mortemain.com/votre-uuid-de-check" # ... vos commandes de sauvegarde ici ... /usr/local/bin/run-backup.sh && \ curl -fsS -o /dev/null "$CHECK_URL"
3. Alertez immédiatement sur échec
N'attendez pas simplement que le check-in manque, dites à Mortemain dès que le job échoue pour être alerté tout de suite, plutôt qu'à la fin de la fenêtre de tolérance :
if /usr/local/bin/run-backup.sh; then curl -fsS -o /dev/null "$CHECK_URL" else curl -fsS -o /dev/null "$CHECK_URL/fail" fi
4. Optionnel : suivez la durée
Pinguez /start juste avant que la sauvegarde ne démarre, puis l'URL de base à la fin. Mortemain mesure alors la durée de l'exécution, ainsi une sauvegarde qui démarre à l'heure mais se bloque en silence est aussi détectée :
curl -fsS -o /dev/null "$CHECK_URL/start" /usr/local/bin/run-backup.sh && curl -fsS -o /dev/null "$CHECK_URL" \ || curl -fsS -o /dev/null "$CHECK_URL/fail"
5. Choisissez votre outil de sauvegarde
Le principe ci-dessus est le même partout : check-in sur succès, ping /fail sur erreur. Voici l'intégration exacte pour les outils les plus demandés :
PostgreSQL (pg_dump)
Encapsulez pg_dump et faites le check-in sur un code de sortie propre.
rsync
Faites le check-in seulement quand la synchro elle-même se termine sans erreur.
BorgBackup
Pinguez après la sauvegarde et le prune, pas seulement la première étape.
Restic
Check-in sur la sauvegarde, et sur forget/prune aussi.
Duplicati
Utilisez ses hooks run-script pour faire le check-in sans toucher au job.
Synology Hyper Backup
Un outil tout en interface graphique, câblé via son hook de script de notification.
TrueNAS
Hooks post-script sur les tâches Cloud Sync et de réplication.
Veeam
Un script post-job qui prouve que la sauvegarde s'est vraiment terminée.
Testez
Lancez la sauvegarde une fois : le check passe actif en une seconde ou deux. Désactivez ensuite le job (ou commentez la ligne cron) et attendez au-delà de la fenêtre de tolérance, vous devriez recevoir une alerte de panne sans rien faire d'autre. C'est tout l'intérêt : l'alerte se déclenche parce qu'il ne s'est rien passé, pas parce que quelque chose a planté.