Anomalie #3819
Absence des logs d'erreur de borg durant les backups
Statut:
Fermé
Priorité:
Normale
Assigné à:
Christian P. Momon
Catégorie:
-
Version cible:
-
Début:
17/07/2019
Echéance:
% réalisé:
0%
Temps estimé:
Description
Actuellement, dans /srv/bin/backup.sh :
$borg_bin create --stats $backup_dest::$backup_name / \ --exclude /proc \ --exclude /dev \ --exclude /sys \ --exclude /var/lib/libvirt/coon \ --exclude /var/lib/libvirt/maine \ --exclude /var/lib/libvirt/images/ \ --exclude '/srv/backups/*.chapril.org' \ 2>&1 >> $loggerLe 2>&1 >> $logger se lit :
- faire pointer la sortie erreur vers le descripteur de fichier pointé par la sortie standard ;
- puis faire pointer la sortie standard vers le descripteur de fichier de $logger.
La deuxième étape ne met pas à jour le descripteur de fichier de la sortie erreur et donc celle-ci pointe par défaut dans celle du cron qui n'est pas configurée et donc les logs sont perdues.
Propositions d'améliorations du script /srv/bin/backup.sh :- remplacer tous les « >> $logger » par un seul « >> /var/log/backup.log » dans la ligne de cron :
- facilité d'écriture du script /srv/bin/backup.sh,
- meilleure lisibilité,
- évitement des pièges de 2>&1
- dans le borg create, ajout du paramètre --info pour que le --stats affiche quelque chose ;
- transformation du test de code de retour de borg create de « if then fi » en « if then else fi » :
- permet d'avoir un affichage prévenant que le backup est interrompu.
Ci-joint une proposition de nouvelle version du script. Testable dans icinga2:/srv/bin/backup2.sh.
Fichiers
Historique
Mis à jour par Christian P. Momon il y a presque 5 ans
- Statut changé de Nouveau à En cours de traitement
Ce qui donne à l'exécution quand ça se passe bien :
=(^-^)=root@icinga2:/srv/bin# ./backup2.sh > out =(^-^)=root@icinga2:/srv/bin# more out ======================================================================== New backup ======================================================================== mercredi 17 juillet 2019, 18:42:35 (UTC+0200) == Executing package selection: mercredi 17 juillet 2019, 18:42:35 (UTC+0200) == Backup pre-hook mercredi 17 juillet 2019, 18:42:35 (UTC+0200) Executing /etc/borg/scripts/pre-hooks/dump-mysql... Executing /etc/borg/scripts/pre-hooks/dump-pgsql... Executing /etc/borg/scripts/pre-hooks/dump-selections... == Backup launch mercredi 17 juillet 2019, 18:42:35 (UTC+0200) ------------------------------------------------------------------------------ Archive name: 2019-07-17-test Archive fingerprint: 862a48ff46f824bc36e05a3161ce6341ce772bade04542e0121df4a0f0783fe1 Time (start): Wed, 2019-07-17 18:42:36 Time (end): Wed, 2019-07-17 18:42:47 Duration: 10.91 seconds Number of files: 42579 ------------------------------------------------------------------------------ Original size Compressed size Deduplicated size This archive: 1.79 GB 1.79 GB 87.89 MB All archives: 21.49 GB 21.51 GB 2.80 GB Unique chunks Total chunks Chunk index: 46009 509881 ------------------------------------------------------------------------------ == Backup info mercredi 17 juillet 2019, 18:42:48 (UTC+0200) Name: 2019-07-17-test Fingerprint: 862a48ff46f824bc36e05a3161ce6341ce772bade04542e0121df4a0f0783fe1 Hostname: icinga2.cluster.chapril.org Username: root Time (start): Wed, 2019-07-17 18:42:36 Time (end): Wed, 2019-07-17 18:42:47 Command line: /usr/bin/borg create --info --stats backup@backup.chapril.org:/srv/backups/icinga2.cluster.chapril.org::2019-07-17-test / --exclude /proc --exclude /dev --exclude /sys --exclude /var/lib/libvirt/coon --exclude /var/lib/libvirt/maine --exclude /var/lib/libvirt/ima ges/ --exclude /srv/backups/*.chapril.org Number of files: 42579 Original size Compressed size Deduplicated size This archive: 1.79 GB 1.79 GB 87.89 MB All archives: 21.49 GB 21.51 GB 2.80 GB Unique chunks Total chunks Chunk index: 46009 509881 == Backup pruning mercredi 17 juillet 2019, 18:42:50 (UTC+0200) == Backup post-hook mercredi 17 juillet 2019, 18:42:51 (UTC+0200) mercredi 17 juillet 2019, 18:42:51 (UTC+0200) Returned 0 ========================================================================
Et quand ça se passe pas bien :
=(^-^)=root@icinga2:/srv/bin# ./backup2.sh ======================================================================== New backup ======================================================================== mercredi 17 juillet 2019, 18:33:20 (UTC+0200) == Executing package selection: mercredi 17 juillet 2019, 18:33:20 (UTC+0200) == Backup pre-hook mercredi 17 juillet 2019, 18:33:20 (UTC+0200) Executing /etc/borg/scripts/pre-hooks/dump-mysql... Executing /etc/borg/scripts/pre-hooks/dump-pgsql... Executing /etc/borg/scripts/pre-hooks/dump-selections... == Backup launch mercredi 17 juillet 2019, 18:33:20 (UTC+0200) Warning: The repository at location ssh://backup@backup.chapril.org/srv/backups/icinga2.cluster.chapril.org was previously located at /srv/backups/icinga2.cluster.chapril.org Do you want to continue? [yN] n Aborting. Repository access aborted Error in borg create action. Stopping backup. Returned 2 ========================================================================
Mis à jour par Christian P. Momon il y a presque 5 ans
Sur IRC:freenode#april-chapril le 18/02/2019 :
12:10 < cpm_screen> PoluX________: si tu peux jeter un oeil sur https://agir.april.org/issues/3819, je voudrais ta validation avant déploiement :D 12:20 < PoluX________> ok 12:21 < PoluX________> cpm_screen: tu peux déployer pour au moins 3 raisons 12:22 < PoluX________> 1) ce script était *biiiiiip* *améliorable* (bon en même temps c'est du sh) 12:22 < PoluX________> 2) ça a l'air de fonctionner 12:22 < PoluX________> 3) j'ai 100% confiance dans le monitoring :) 12:22 < PoluX________> bref, aucune raison de te retarder 12:28 < cpm_screen> haha, ça marche, je tente ce soir
Décision de modifier directement le paquet backup-chapril :
13:11 < cpm_screen> QGuLL: pour le déploiement du backup.sh, on peut faire ça en (solution A) 2 temps : 1) déploiement manuel sur 2 vm pour vérifier que ça se passe bien, 2) déploiemen\ t via apt. Ou (solution B) directement via apt directement. 13:11 < cpm_screen> tu préfères A ou B ? 13:17 < QGuLL> 2/ 13:17 < QGuLL> c'est pas long de déployerActions menées :
- paquet backup-chapril modifié/commité/buildé/duploadé ;
- apt-get update && apt-get dist-upgrade sur les machines du cluster Chapril.
En attente de voir comment ça se passe la prochaine nuit.
Mis à jour par Christian P. Momon il y a presque 5 ans
- Statut changé de En cours de traitement à Résolu
Backups ok cette nuit. Plus qu'à attendre un incident pour profiter des logs.
Mis à jour par Christian P. Momon il y a plus de 4 ans
- Projet changé de Chapril à Infra Chapril
- Statut changé de Résolu à Fermé