## Postgresus 2.0 : Principales mises à jour pour les sauvegardes automatisées de PostgreSQL
Postgresus 2.0 renforce les capacités de cet outil open source de sauvegarde PostgreSQL. En seulement six mois, le projet a accumulé 246 commits, 2,7k étoiles sur GitHub et 40k téléchargements sur Docker Hub. Les nouvelles fonctionnalités incluent des contrôles de santé des bases de données, des options de stockage et de notification étendues, une gestion de projets avec rôles, un chiffrement multi-niveaux, une compression optimisée et un chart Helm pour Kubernetes. L’abandon des sauvegardes incrémentales a simplifié l’architecture.
L’outil se déploie via Docker, docker-compose ou Helm, et prend en charge PostgreSQL auto-hébergé ou managé. L’objectif principal est d’automatiser les sauvegardes programmées avec notifications et stockage dans divers backends.
Contrôles de disponibilité des bases de données
La nouvelle fonctionnalité surveille l’état de connexion aux bases de données. Postgresus vérifie périodiquement la disponibilité, affiche les métriques dans l’UI et envoie des notifications en cas d’indisponibilité. Vous pouvez désactiver les contrôles ou configurer l’intervalle.
Lorsqu’une base de données est indisponible, elle génère une alerte via le canal de votre choix : Telegram, Slack, Discord, MS Teams, SMTP ou webhook. Cela vous permet de réagir rapidement aux pannes sans outils de monitoring supplémentaires.
Stockage et notifications étendus
Le support de stockage s’est enrichi : ajout de CloudFlare R2, Google Drive, Azure Blob Storage et NAS en plus du disque local et S3. FTP, SFTP et NFS sont prévus.
Les notifications s’intègrent désormais à Slack, Discord, MS Teams et webhooks personnalisés. Les webhooks offrent une configuration flexible pour n’importe quelle plateforme.
- Stockage : S3, R2, Google Drive, Azure Blob, NAS, local.
- Notifications : Slack, Discord, Telegram, MS Teams, SMTP, webhook.
Gestion de projets et RBAC
Une hiérarchie de projets a été introduite pour segmenter les bases de données. Les administrateurs créent des projets et assignent des rôles aux utilisateurs :
- Lecture seule : consultation de l’historique des sauvegardes, téléchargement de fichiers.
- Modification : ajout/suppression/modification de bases de données + permissions lecture seule.
Les journaux d’audit enregistrent toutes les actions : suppression de bases de données, téléchargement de sauvegardes, modification de paramètres. Cela est essentiel pour les DBA, les équipes DevOps et les développeurs externalisés gérant des données de plusieurs clients.
Les projets permettent l’isolation de :
- Les bases de données du client A.
- Les bases de données internes de l’entreprise B.
- Les environnements de test de l’équipe C.
Chiffrement multi-niveaux et sécurité
La sécurité a été repensée pour les cas d’usage entreprise. Protection sur trois niveaux :
Chiffrement des secrets
Les mots de passe des bases de données, les jetons de stockage et les identifiants de notification sont chiffrés avec AES-256-GCM. La clé est stockée dans un fichier séparé en dehors de la base de données Postgresus. Le déchiffrement se fait à la demande lors de l’utilisation.
Chiffrement des sauvegardes
Les fichiers pg_dump sont chiffrés à la volée avec salt et IV (AES-256-GCM). Activé par défaut mais désactivable. Protège contre les fuites même dans des buckets S3 publics.
Utilisateurs en lecture seule
Lors de l’ajout d’une base de données avec permissions d’écriture, Postgresus suggère de créer un rôle en lecture seule. Cela automatise les bonnes pratiques et minimise les risques de corruption de données en cas de compromission.
Optimisation de la compression et performances
zstd niveau 5 par défaut pour PostgreSQL 16+ (gzip pour PG 12+). Des benchmarks sur 21 scénarios montrent l’équilibre optimal vitesse/taille : ~8x de compression, 2x d’économies d’espace à vitesse égale vs gzip 5.
L’abandon des sauvegardes incrémentales et PITR a simplifié la logique, en se concentrant sur les dumps complets.
Déploiement Kubernetes et améliorations de l’UI
Ajout d’un chart Helm pour les installations natives k8s. Trois contributeurs ont collaboré dessus.
L’UI propose désormais un thème sombre (comme demandé par la communauté). Les améliorations UX visent les utilisateurs intermédiaires/seniors : tableaux de bord avec métriques, paramètres en un clic.
Ce qui n’est pas implémenté
- Monitoring complet des ressources de base de données (CPU, I/O).
- Console SQL intégrée.
Ces fonctionnalités sont reportées, avec un focus sur les fonctions essentielles : sauvegardes + sécurité.
Points forts
- Chiffrement multi-niveaux : AES-256-GCM pour secrets et sauvegardes + rôles lecture seule.
- Collaboration d’équipe : projets, RBAC, journaux d’audit.
- Optimisation : zstd par défaut, 8x de compression.
- Intégrations : nouveaux stockages (R2, Azure, Drive), notifications (Slack, Teams).
- Monitoring : contrôles de santé des bases avec alertes.
— Editorial Team
Aucun commentaire pour le moment.