Choix d'un outil de sauvegarde : Barman, pgBackRest, pitrery...

Les utilisateurs n'aiment pas perdre de données
Répondre
Phil
Administrateur du site
Messages : 170
Enregistré le : mar. 1 sept. 2015 00:38
Localisation : France
Contact :

Choix d'un outil de sauvegarde : Barman, pgBackRest, pitrery...

Message par Phil » mar. 26 juin 2018 11:39

Merci à un architecte pour sa question :
les produits passent d'oracle à postgresql, quel outil de sauvegarde pour postgresql ?

Il est dans tous les cas recommandé d'utiliser un outil sûr développé ou recommandé par des experts PostgreSQL. Les efforts doivent être consacrés à réaliser des tests de restauration plutôt qu'à bricoler des scripts maison.

Dans la partie consacrée aux sauvegardes https://pgphil.ovh/sauvegardes.php , j'utilise Barman développé par 2ndQuadrant : https://www.pgbarman.org/
Ce n'est bien sûr pas le seul outil possible.
Dalibo propose Pitrery : https://dalibo.github.io/pitrery/
Il existe également un produit appelé pgBackRest notamment recommandé par Loxodata : https://pgbackrest.org/

Chaque produit a ses avantages et ses inconvénients. Son choix dépend aussi de la société qui assure votre support PostgreSQL.

Parmi les avantages de Barman :
- C'est un produit orienté "restauration" avec la possibilité de définir des fenêtres de recover plutôt que de baser la rétention des sauvegardes sur la redondance. En gros, vous définissez une fenêtre de rétention de N jours. Le produit s'arrange ensuite pour toujours garder les fichiers nécessaire pour faire revenir en arrière les bases sur N jours.
- Il s'intègre très facilement avec des hot standby en pouvant leur fournir les WAL manquants sans risquer de saturer les environnements primaires

Parmi les inconvénients de Barman :
- C'est un outil libre mais dépendant actuellement d'une seule entreprise pour son développement
- Il s'appuie sur pb_basebackup (utilitaire natif PostgreSQL) ou rsync et ne vérifie donc pas la corruption lors de la sauvegarde jusqu'à PostgreSQL 10 inclus. Cette restriction sera toutefois levée avec PostgreSQL 11 puisque pg_basebackup intégrera nativement cette fonctionnalité.
- Barman est limité dans certaines options. Pas de sauvegarde incrémentale, de compression ou de chiffrement des données de sauvegarde par exemple.

De manière générale, les outils s'appuyant sur pg_basebackup bénéficieront naturellement des avancées de cet utilitaire.
Si vous voulez disposer immédiatement de fonctionnalités avancées traditionnelles (compression etc.) même avec d'anciennes version de PostgreSQL, pgBackRest est le produit le plus complet. II ne dispose pas de la possibilité de baser la rétention des sauvegardes directement sur des fenêtres de recover mais peut vérifier la corruption, compresser et chiffrer les données de sauvegarde.

Tout dépend en fait du besoin. Qu'attendez-vous de votre outil de sauvegarde dédié PostgreSQL ?
Si vous exploitez toujours en interne, vous disposez peut-être d'une solution de sauvegarde généraliste (NBU, Avamar, Networker, Dataprotector...)
Si vous disposez déjà d'une solution de ce type, elle peut proposer un module PostgreSQL dédié, ce n'est pas le cas le plus fréquent.
Sinon vous réaliserez une sauvegarde avec un outil dédié PostgreSQL puis souvent une sauvegarde complémentaire avec une solution généraliste.
Si cette solution généraliste fait de la déduplication, vous ne demanderez pas à l'outil de sauvegarde dédié PostgreSQL de compresser les données ou de réaliser des sauvegardes incrémentales, ce serait inutile voire contreproductif.
Cdlt. Phil - pgphil.ovh

Répondre