muppy.io
  • ⛏️Qu'est ce que muppy.io ?
  • ⚒️Concepts Muppy
  • Quickstarts
    • ✏️Introduction
  • Guides
    • ⛏️Muppy Core
      • Hosts
        • Création et enrôlement d'un Host
          • ✏️Server Types
          • ✏️Configuration réseaux spécifiques
        • ⚒️Host's Users
        • ⚒️Host's Network information
        • ⚒️Host's Metrics
      • Tasks et Fact Collectors
        • ⚒️Exécution des Tasks (Task Runs)
          • ⚒️Exécution asynchrone des Tasks (Launch as Job)
        • ⚒️Synchronisation des Tasks et Scripts
        • ⚒️Liste des Scripts
        • ⚒️Liste des Tasks
        • ⚒️Création de Task "Shell Script"
        • ⚒️Liste des Fact Definitions
      • ⛏️Firewall UFW
        • Désactiver UFW globalement
        • ✏️Page 1
      • SSH Keys
        • Gestion des SSH Keys
        • Gestion des "authorized_keys"
        • Extraction Clef Privée d'un User User
      • ⚒️Systemd Service Units
        • ⚙️Liste des Systemd Units
        • ➕Création de Systemd Units
        • 📰Systemctl status et log
        • ✏️Edition des Systemd Units
    • 🐘PostgreSQL
      • PostgreSQL Base
        • Installation de PostgreSQL
        • Gestion des Clusters
          • Création
          • Configuration
          • Contrôle
          • Administration (basique)
        • Backup, Restore et Copy de Databases
          • Databases Backups (pg_dump)
          • PostgreSQL Backup
          • pg_dump Restore
          • Database Copy
          • pg_restore Callback Task
        • Backups Planifiés
        • Gestion rétention des Backups
      • PostgreSQL Replication
        • Créer un RCS
        • Visualiser un RCS
        • Suivre la Replication
        • Ajouter des Standbys
        • Restructurer un RCS
        • Intégration d'un RCS
        • Reconfigurer un RCS
      • PostgreSQL HA
        • Configuration
        • Activation et Désactivation
        • Monitoring
        • pglookout Heartbeat
      • PostgreSQL PITR
        • Configuration de WAL-G
        • Lancement des Clusters Backups
        • Liste des Clusters Backups (WAL-G)
        • Purge des fichiers de Backup PITR
        • Monitoring du PITR
        • Objets S3 stockés par WAL-G
        • Restauration PITR
      • PostgreSQL Tools
        • pgBadger - log analysis
    • Muppy Pack
      • ⛏️Packs
      • Concepts
      • ⛏️Muppy Cluster
        • Cluster Security
        • PostgreSQL Cluster Resources
      • ⛏️Reverse Proxy
    • ✏️Configuration
      • 👫Gestion des Users Muppy
      • 🏬S3 Buckets
      • 💬Notifications Teams
      • ✏️Notifications Slack
    • ⛏️Odizy
      • Odizy Workflow
        • Test Servers
      • Accéder à vos serveurs
      • Restaurer un backup sur le serveur de staging
      • Activer un serveur Standby
      • ⛏️Configuration LXC CI/CD
      • Activate and Launch remote Code-Server (VS Code from coder.com)
    • ⚒️Kubernetes
      • ⚒️Installer Tailscale
      • ⚒️Installer un cluster microk8s
      • ⚒️Installer PostgrSQL
      • ⚒️Installer les packages d'infrastructures
  • 📡Muppy Enterprise
    • Introduction
    • ⛏️Configuer une Instance Muppy Enterprise
    • 🌡️Monitoring Muppy Enterprise
  • ⛏️Work in progress
    • ⛏️Code Server
    • ⛏️Muppy Development Servers
      • Move Development Server
Powered by GitBook
On this page
  • Introduction
  • Le PITR est un backup incrémental
  • Mise en oeuvre du PITR
  1. Guides
  2. PostgreSQL

PostgreSQL PITR

Muppy gère le Point In Time Recovery de vos Clusters.

Previouspglookout HeartbeatNextConfiguration de WAL-G

Last updated 3 years ago

Introduction

Le PITR ou Point In Time Recovery est une technologie de Backup qui consiste à sauvegarder un Cluster PostgreSQL toutes les minutes pour être capable de le restorer à un moment précis dans le temps.

Le PITR qui permet de sauvegarder en continu tout un Cluster PostgreSQL a une granularité de fonctionnement différente des Databases Backups (pg_dump) qui permettent de sauvegarder ponctuellement une ou plusieurs bases de données.

Le PITR géré par Muppy fonctionne en sauvegardant le WAL (Write Ahead Log) d'un Cluster dans un dispositif de sauvegarde compatible AWS S3. AWS S3 est la seule technologie de sauvegarde supportée actuellement par Muppy.

La fréquence des sauvegardes étant la minute, les volumes sauvegardés sont conséquents. Muppy active la compression des WAL par défaut. Malgré tout, le volume des sauvegardes PITR peut facilement atteindre des centaines de Go par jour sur des bases actives.

En préalable à la mise en place du PITR, vous devez donc disposer d'un Bucket S3 correctement configuré dans Muppy (voir S3 Buckets ).

Le PITR est indépendant de la Replication. Vous pouvez donc l'utiliser même si vous n'avez qu'un seul Cluster PostgreSQL.

Le PITR est un backup incrémental

Le PITR est une technologie de backup incrémental ; toutes les minutes wal-g sauvegarde les modifications réalisées dans la minute écoulée dans un fichier que nous appellerons "WAL Segment".

Le processus de restauration "PITR" nécessite de disposer d'une sauvegarde initiale complète ; un "full backup" que nous appellerons base backup ou Cluster Backup (WAL-G). Les Clusters Backups WAL-G sont restaurés au début de la restauration et servent de base sur laquelle tous les WAL Segments (contenant 1 minute de modifications) sont restaurés.

La durée de la restauration est strictement proportionnelle au nombre de WAL Segment à restaurer.

Par exemple, si vous faites un WAL-G Cluster Backup hebdomadaire, en cas de restauration, vous pourrez être amené à restaurer une semaine soit environ 10 000 WAL Segments.

Inversement, si vous faite un WAL-G Cluster Backup quotidien, vous aurez beaucoup moins de WAL Segments à restaurer, mais vous devez prévoir et évaluer l'impact en performance de l'exécution du WAL-G Cluster Backup sur vos applications.

En conclusion, la fréquence des WAL-G Cluster Backup est le paramètre clef du PITR.

Mise en oeuvre du PITR

La mise en oeuvre du PITR passe par les étapes suivantes:

  • Configuration de WAL-G pour activer les backups des WAL Segments toutes les minutes

  • Planification et lancement des Clusters Backups (WAL-G) (les bases backups)

  • Consultation et actualisation de la Liste des Clusters Backups (WAL-G)

  • Purge des fichiers de backup PITR

  • Monitoring du PITR

  • Visualisation des Objets S3 stockés par WAL-G

  • Restauration PITR

Muppy utilise WAL-G ( ) pour gérer le PITR.

🐘
https://github.com/wal-g/wal-g
Granularité PITR vs pg_dump