Postgresus 2.0: Wichtige Updates für automatisierte PostgreSQL-Backups
Postgresus 2.0 erweitert die Möglichkeiten dieses Open-Source-Tools für PostgreSQL-Backups. In nur sechs Monaten hat das Projekt 246 Commits, 2,7k Stars auf GitHub und 40k Downloads von Docker Hub erreicht. Neue Features umfassen Datenbank-Health-Checks, erweiterte Speicher- und Benachrichtigungsoptionen, Projektmanagement mit Rollen, mehrstufige Verschlüsselung, optimierte Kompression und ein Helm-Chart für Kubernetes. Der Verzicht auf inkrementelle Backups hat die Architektur vereinfacht.
Das Tool wird über Docker, docker-compose oder Helm bereitgestellt und unterstützt sowohl selbst gehostete als auch gemanagte PostgreSQL-Instanzen. Der Hauptfokus liegt auf der Automatisierung geplanter Backups mit Benachrichtigungen und Speicherung in verschiedenen Backends.
Überprüfung der Datenbankverfügbarkeit
Die neue Funktion überwacht den Verbindungsstatus zu Datenbanken. Postgresus prüft periodisch die Verfügbarkeit, zeigt Metriken in der UI an und sendet Benachrichtigungen bei Ausfällen. Du kannst die Checks deaktivieren oder das Intervall konfigurieren.
Bei nicht verfügbarer Datenbank wird eine Alarmmeldung über den gewählten Kanal gesendet: Telegram, Slack, Discord, MS Teams, SMTP oder Webhook. So kannst du Ausfälle schnell angehen, ohne zusätzliche Monitoring-Tools.
Erweiterte Speicher- und Benachrichtigungsoptionen
Die Speicherunterstützung wurde ausgebaut: CloudFlare R2, Google Drive, Azure Blob Storage und NAS ergänzen lokalen Speicher und S3. FTP, SFTP und NFS sind geplant.
Benachrichtigungen integrieren nun Slack, Discord, MS Teams und benutzerdefinierte Webhooks. Webhooks erlauben flexible Einrichtung für jede Plattform.
- Speicher: S3, R2, Google Drive, Azure Blob, NAS, lokal.
- Benachrichtigungen: Slack, Discord, Telegram, MS Teams, SMTP, Webhook.
Projektmanagement und RBAC
Eine Projekt-Hierarchie wurde eingeführt, um Datenbanken zu segmentieren. Admins erstellen Projekte und weisen Benutzern Rollen zu:
- Nur Lesen: Backup-Historie ansehen, Dateien herunterladen.
- Bearbeiten: Datenbanken hinzufügen/entfernen/ändern + Nur-Lesen-Berechtigungen.
Audit-Logs protokollieren alle Aktionen: Löschen von Datenbanken, Herunterladen von Backups, Ändern von Einstellungen. Das ist essenziell für DBA, DevOps-Teams und ausgelagerte Entwickler, die Daten von mehreren Kunden handhaben.
Projekte ermöglichen die Isolation von:
- Datenbanken von Kunde A.
- Internen Datenbanken von Firma B.
- Testumgebungen von Team C.
Mehrstufige Verschlüsselung und Sicherheit
Die Sicherheit wurde für Enterprise-Anwendungsfälle überarbeitet. Schutz auf drei Ebenen:
Verschlüsselung von Secrets
Datenbankpasswörter, Storage-Token und Benachrichtigungs-Credentials werden mit AES-256-GCM verschlüsselt. Der Schlüssel liegt in einer separaten Datei außerhalb der Postgresus-Datenbank. Entschlüsselung erfolgt bei Bedarf während der Nutzung.
Backup-Verschlüsselung
pg_dump-Dateien werden on-the-fly mit Salt und IV (AES-256-GCM) verschlüsselt. Standardmäßig aktiviert, aber deaktivierbar. Schützt vor Lecks selbst in öffentlichen S3-Buckets.
Nur-Lese-Benutzer
Beim Hinzufügen einer Datenbank mit Schreibrechten schlägt Postgresus vor, eine nur-lesende Rolle zu erstellen. Das automatisiert Best Practices und minimiert Korruptionsrisiken bei Kompromittierung.
Optimierung der Kompression und Performance
zstd Level 5 standardmäßig für PostgreSQL 16+ (gzip für PG 12+). Benchmarks über 21 Szenarien zeigen das optimale Geschwindigkeits-/Größen-Verhältnis: ~8-fache Kompression, 2x Platzeinsparung bei gleicher Geschwindigkeit vs. gzip 5.
Der Verzicht auf inkrementelle Backups und PITR vereinfacht die Logik mit Fokus auf vollständige Dumps.
Kubernetes-Deployment und UI-Verbesserungen
Ein Helm-Chart für native k8s-Installationen wurde hinzugefügt. Drei Mitwirkende haben daran gearbeitet.
Die UI bietet nun ein Dark Theme (auf Community-Wunsch). UX-Verbesserungen zielen auf Mid-/Senior-User ab: Dashboards mit Metriken, One-Click-Einstellungen.
Was noch nicht implementiert ist
- Vollständiges Datenbank-Ressourcen-Monitoring (CPU, I/O).
- Integrierte SQL-Konsole.
Diese Features sind verschoben, Fokus liegt auf Kernfunktionalität: Backups + Sicherheit.
Wichtige Highlights
- Mehrstufige Verschlüsselung: AES-256-GCM für Secrets und Backups + nur-lesende Rollen.
- Team-Kollaboration: Projekte, RBAC, Audit-Logs.
- Optimierung: zstd standardmäßig, 8-fache Kompression.
- Integrationen: Neue Speicher (R2, Azure, Drive), Benachrichtigungen (Slack, Teams).
- Monitoring: Datenbank-Health-Checks mit Alerts.
— Editorial Team
Noch keine Kommentare.