Purge des fichiers de Backup PITR
Last updated
Last updated
WAL-G dispose de commandes permettant de purger les Clusters Backups et WAL Segments liés.
Muppy permet de mettre en oeuvre la purge de 2 manières:
A partir du serveur qui héberge le Cluster PostgreSQL sur lequel le PITR est configuré.
A partir de Muppy, via une Muppy Task configurée avec un CRON (Préconisation Muppy)
La configuration de la purge est expliquée dans le paragraphe de la page Lancement des Clusters Backups.
Cette configuration de la purge pose le même problème que les backups. Muppy n'est pas informé des backups purgé et vous devez créer exécuter périodiquement une Task d'actualisation des Cluster Backups comme décrit dans .
Le groupe de paramètres Full Backups Configuration présent dans l'onglet Backup / WAL-G du formulaire des Database Clusters permet de planifier la Purge des fichiers de backup quand elle est exécutée à partir du Database Cluster.
Dans ce cas, les commandes de purge de WAL-G sont lancées via le CRONTAB du user postgres.
Lorsque vous cochez Activate WAL-G in CRONTAB, Muppy affiche les groupes de paramètres suivants:
Ces 4 paramètres permettent de:
Définir le nombre de Backups et fichiers WAL à conserver ou de désactiver la purge via le CRONTAB si la valeur est 0
Planifier l'exécution des Purges en indiquant les paramètres heures, minutes et "jour de la semaine" d'une ligne de CRON (Voir https://crontab.guru/ )
Le fichier CRONTAB avec son timestamp collecté à l'issue de la dernière reconfiguration par Muppy. Si la purge est activée, le CRONTAB contient une ligne avec la commande 'delete retain ...'
Muppy n'écrase pas le CRONTAB du user postgres mais injecte un bloc contenant les commandes nécessaires à la purge des Backups WAL-G (Cf. figure précédente).
Ce bloc est généré par un fichier Template Muppy qui est défini avec le paramètre CRONTAB Template.
Le template est utilisé pour planifier les backups et la purge.
Notre recommandation est d'utiliser une Muppy Task planifiée pour lancer la purge des fichiers de backups générés pas WAL-G.
L'utilisation d'une Muppy Task permet:
de pouvoir recevoir des notifications en cas d'erreur et/ou de succès de la purge
de disposer des logs d'exécution
d'avoir une liste des Cluster Backups (WAL-G) à jour
La Muppy Task walg_backup_delete purge les fichiers de backups et actualise la liste des Clusters Backups (WAL-G) à l'issue de la purge.
Créez un Task Run avec les paramètres suivants (Cf. figure suivante) :
La Muppy Task walg_backup_delete
Le Host qui héberge le Cluster PostgreSQL dont vous souhaitez purger les backups
Le PostgreSQL Database Cluster dont vous souhaitez purger les backups
Le nombre de Cluster Backups (WAL-G) (et WAL Segments) à conserver (La valeur par défaut est 20).
Par défaut (confirm non coché) la purge est exécutée en mode Dry Run et aucun fichier n'est effacé. Si vous cochez confirm, les fichiers seront effacés.
A l'issue de l'exécution, la Task renvoie un json (#7 sur le schéma suivant) qui contient:
data: les lignes renvoyées par la commande sur la console (stdout)
walg_backup_list_result: la liste des Cluster Backups actualisée à l'issue de la purge.
En mode Dry Run (confirm=False), le contenu de walg_backup_list_result contient toujours les fichiers de Backups qui n'ont pas été supprimés !
Une fois que vous avez configuré ou modifié la configuration des Full Backups, cliquez sur le bouton pour mettre à jour le CRONTAB afin d'activer et configurer ou désactiver la purge des fichiers de backups en fonction du paramètre Nb. of Cluster Backups to keep.
Lorsque la purge est réalisée directement via un CRON sur le serveur PostgreSQL, Muppy n'a pas connaissance des backups purgés. La liste des backups doit donc être mise à jour comme indiqué dans le paragraphe
Utilisez le bouton pour planifier l'exécution périodique de la purge