Purge des fichiers de Backup PITR

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)

Purge à partir du serveur PostgreSQL

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:

  1. 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/ )

  2. 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.

Application de la Configuration

Purge à partir de Muppy (via une Muppy Task)

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.

Mise en oeuvre

Créez un Task Run avec les paramètres suivants (Cf. figure suivante) :

  1. La Muppy Task walg_backup_delete

  2. Le Host qui héberge le Cluster PostgreSQL dont vous souhaitez purger les backups

  3. Le PostgreSQL Database Cluster dont vous souhaitez purger les backups

  4. Le nombre de Cluster Backups (WAL-G) (et WAL Segments) à conserver (La valeur par défaut est 20).

  5. 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 !

Last updated