Restauration PITR

Cette page décrit comment reconstruire un Cluster PostgreSQL à un point dans le temps avec le PITR

Prérequis sur le serveur cible

Pour restaurer un Cluster PostgreSQL avec le PITR, vous devez disposer d'un serveur "cible" sur lequel le Cluster PostgreSQL va être restauré.

Comme Muppy va reconstruire complètement le Cluster, vous n'avez pas besoin d'installer de paquets ou logiciels.

La seule contrainte porte sur la configuration système du serveur cible ; celle-ci doit être identique à celle du serveur. Les partitions disques notamment doivent être strictement identiques !

La Restauration PITR commence par la restauration d'un Cluster Backup (WAL-G). Les clusters backups sont des backups "binaires" du répertoire PostgreSQL du Cluster. Pour que la restauration réussisse l'architecture du stockage doit être identique.

Le serveur cible doit être disponible dans Muppy au statut Managed.

Lancement de la Restauration

Le point de départ de la restauration est un Cluster Backup (WAL-G). Sélectionnez et ouvrez le formulaire du Cluster Backup (WAL-G) qui va servir de point de départ à la restauration et sur lequel tous les WAL vont être restaurés.

Le wizard permet de définir les paramètres de restauration suivants:

  1. Le Cluster Backup (WAL-G) qui va servir de base à la restauration des WAL

  2. Le Host sur lequel le cluster va être restauré. Comme nous l'avons déjà expliqué, il suffit que le Host soit au statut Managed et il faut que son architecture système soit identique à celle du serveur qui héberge le cluster restauré.

  3. Le moment dans le temps dont vous voulez restaurer les données. C'est le fameux PITR ! Si vous le laissez vide, le cluster sera restauré dans l'état le plus récent.

  4. Définir si vous voulez restaurer le Cluster dans l'état où il était juste avant le PITR ou juste après.

  5. S'il y a déjà un Cluster (géré par Muppy) sur le serveur cible, le wizard vous l'indiquera avec un message et ne lancera pas la restauration. Ce flag vous permet de forcer la restauration et d'écraser le Cluster existant.

  6. Définir l'état du Cluster une fois que tous les WAL ont été restaurés. Les valeurs possibles sont:

    1. Promote (défaut)

    2. Pause ; actuellement, Pause est réservée à des utilisateurs expérimentés capable de terminer la restauration manuellement.

    3. Shutdown

Tous ces paramètres font l'objet d'une documentation contextuelle relativement détaillée. N'hésitez pas à vous y référer !

Déroulement de la Restauration

Muppy génère un Message walg_restore_cluster. Ouvrez le message pour suivre l'exécution de la restauration et accéder aux logs (pensez à aller à la dernière page des logs).

La restauration PITR a une particularité. Quand l'exécution de la Task walg_restore_cluster est terminée, le Database Cluster restauré est au statut "online,recovery". Mais la restauration n'est pas terminée !!!!

Au statut "online,recovery", le Cluster PostgreSQL est en train de télécharger et d'appliquer les WAL Segments. Le Cluster est déjà disponible en lecture, mais la restauration n'est pas terminée. Elle peut durer encore plusieurs minutes, voir plusieurs heures.

Le statut "online,recovery" est aussi le statut des Clusters Standby dans un RCS. Ils sont eux-aussi en train de récupérer et appliquer des WAL Segments. La différence est la source.

A l'issue du recovery, le Cluster passe automatiquement dans l'état défini par le paramètre Recovery Target Action (#6) du PostgreSQL WAL-G Restoration Wizard. La valeur par défaut Promote permet de créer un cluster autonome au statut online.

Last updated