PostgreSQL
 sql >> Datenbank >  >> RDS >> PostgreSQL

ClusterControl - Erweiterte Sicherungsverwaltung - PostgreSQL

Informationen gehören zu den wertvollsten Vermögenswerten in einem Unternehmen, daher benötigen Sie einen guten Notfallwiederherstellungsplan (DRP), um Datenverluste im Falle eines Unfalls oder Hardwareausfalls zu verhindern. Sicherungen sind ein grundlegender Schritt in allen DR-Plänen, aber ihre Verwaltung und Überwachung kann eine schwierige Aufgabe sein, wenn Sie eine komplexe Umgebung haben.

ClusterControl verfügt über viele Funktionen zur erweiterten Sicherungsverwaltung (unter anderem wichtige Funktionen wie Auto Failover, Überwachung usw.), mit denen Sie nicht nur verschiedene Arten von Sicherungen auf unterschiedliche Weise erstellen, sondern auch komprimieren, verschlüsseln, verifizieren und noch mehr.

In diesem Blog werden wir sehen, wie Sie ClusterControl verwenden können, um Ihre Backups für Ihren PostgreSQL-Datenbank-Cluster auf fortgeschrittene Weise zu verwalten.

Sicherungstypen

Lassen Sie uns zuerst erwähnen, welche Arten von Backups Sie verwenden können, um Ihre Daten zu schützen.

  • Logisch:Das Backup wird in einem für Menschen lesbaren Format wie SQL gespeichert.

  • Physisch:Das Backup enthält binäre Daten.

  • Vollständig/Inkrementell/Differentiell:Die Definition dieser drei Arten von Backups ist bereits im Namen enthalten. Die vollständige Sicherung ist eine vollständige Kopie aller Ihrer Daten. Die inkrementelle Sicherung sichert nur die Daten, die sich seit der letzten Sicherung geändert haben, und die differenzielle Sicherung enthält nur die Daten, die sich seit der letzten vollständigen Sicherung geändert haben. Die inkrementellen und differenziellen Sicherungen wurden eingeführt, um den Zeitaufwand und die Speicherplatznutzung zu verringern, die für die Durchführung einer vollständigen Sicherung benötigt werden.

  • Point-in-Time-Recovery-kompatibel:PITR Beinhaltet die Wiederherstellung der Datenbank zu einem beliebigen Zeitpunkt in der Vergangenheit. Um dies tun zu können, müssen Sie eine vollständige Sicherung wiederherstellen und dann alle Änderungen anwenden, die nach der Sicherung bis unmittelbar vor dem Ausfall vorgenommen wurden.

Durch die Verwendung von ClusterControl können Sie alle diese Arten von Backups für Ihre PostgreSQL-Datenbank erstellen oder sie sogar kombinieren, um Ihre Backup-Strategie zu verbessern.

ClusterControl Backup-Verwaltungsfunktionen

Sehen wir uns nun an, wie ClusterControl Ihnen helfen kann, all die verschiedenen Arten von Backups über dieselbe benutzerfreundliche Benutzeroberfläche und dasselbe System zu verwalten.

Wir gehen davon aus, dass Sie Ihren ClusterControl-Server installiert haben und dieser Ihren PostgreSQL-Cluster verwaltet. Andernfalls können Sie unserer offiziellen Dokumentation folgen, um ClusterControl zu installieren und Ihren PostgreSQL-Cluster damit bereitzustellen oder zu importieren.

Erstellen einer Sicherung

Gehen Sie dazu zu ClusterControl -> Wählen Sie Ihren PostgreSQL-Cluster -> Backup -> Backup erstellen.

Sie können eine neue Sicherung erstellen oder eine geplante Sicherung konfigurieren. Für unser Beispiel erstellen wir sofort ein einzelnes Backup.

Hier haben Sie eine Methode für jeden zuvor erwähnten Sicherungstyp.

Sicherungstyp

Tool

Definition

Logisch

pg_dumpall

Es ist ein Dienstprogramm zum Schreiben aller PostgreSQL-Datenbanken eines Clusters in eine Skriptdatei. Die Skriptdatei enthält SQL-Befehle, die zum Wiederherstellen der Datenbanken verwendet werden können.

Physisch

pg_basebackup

Es wird verwendet, um eine binäre Kopie der Datenbank-Cluster-Dateien zu erstellen, während sichergestellt wird, dass das System automatisch in den Backup-Modus versetzt und wieder deaktiviert wird. Backups werden immer vom gesamten Datenbank-Cluster eines laufenden PostgreSQL-Datenbank-Clusters erstellt. Diese werden ohne Auswirkung auf andere Clients in die Datenbank übernommen.

Full/Incr/Diff

pgRückenlehne

Es handelt sich um eine einfache, zuverlässige Sicherungs- und Wiederherstellungslösung, die nahtlos auf die größten Datenbanken und Arbeitslasten skaliert werden kann, indem Algorithmen verwendet werden, die für datenbankspezifische Anforderungen optimiert sind. Eine der wichtigsten Funktionen ist die Unterstützung für vollständige, inkrementelle und differenzielle Sicherungen.

PITR

pg_basebackup + WALs

Um ein PITR-kompatibles Backup zu erstellen, verwendet ClusterControl pg_basebackup und die WAL-Dateien, um die Datenbank zu einem beliebigen Zeitpunkt in der Vergangenheit wiederherstellen zu können.

Sie müssen eine Methode auswählen, den Server, von dem die Sicherung erstellt wird, und den Ort, an dem Sie die Sicherung speichern möchten. Sie können Ihre Sicherung auch im selben Sicherungsauftrag in die Cloud (AWS, Google Cloud oder Azure) hochladen, indem Sie die entsprechende Option aktivieren.

Dann können Sie Komprimierung, Verschlüsselung und den Aufbewahrungszeitraum Ihrer Datei angeben Sicherungen.

Im Sicherungsabschnitt können Sie den Fortschritt der Sicherung sehen und Informationen wie Methode, Größe, Ort und mehr.

Ein Backup wiederherstellen

Sobald die Sicherung abgeschlossen ist, können Sie sie mit ClusterControl wiederherstellen. Dazu können Sie in Ihrem Backup-Bereich (ClusterControl -> PostgreSQL-Cluster auswählen -> Backup) Backup wiederherstellen auswählen oder das Backup, das Sie wiederherstellen möchten, direkt wiederherstellen.

Sie haben drei Möglichkeiten, die Sicherung wiederherzustellen. Sie können es in einem vorhandenen Datenbankknoten wiederherstellen, die Sicherung auf einem eigenständigen Host wiederherstellen und überprüfen oder aus der Sicherung einen neuen Cluster erstellen.

Wenn Sie versuchen, ein PITR-kompatibles Backup wiederherzustellen, müssen Sie auch die Zeit angeben.

Die Daten werden so wiederhergestellt, wie sie zum angegebenen Zeitpunkt waren. Berücksichtigen Sie, dass die UTC-Zeitzone verwendet wird und dass Ihr PostgreSQL-Dienst im Zielknoten neu gestartet wird.

Sie können den Fortschritt Ihrer Wiederherstellung im Aktivitätsbereich Ihres ClusterControl-Servers überwachen.

Automatische Sicherungsüberprüfung

Ein Backup ist kein Backup, wenn es nicht wiederherstellbar ist. Das Überprüfen von Backups wird normalerweise von vielen vernachlässigt. Sehen wir uns an, wie ClusterControl die Überprüfung von PostgreSQL-Backups automatisieren und Überraschungen vermeiden kann, falls Sie sie wiederherstellen müssen.

Wählen Sie in ClusterControl Ihren Cluster aus und gehen Sie zum Abschnitt Sicherung, dann wählen Sie Sicherung erstellen.

Die Funktion zur automatischen Überprüfung der Sicherung ist für geplante Sicherungen verfügbar. Wählen wir also die Option Backup planen.

Wenn Sie eine Sicherung planen, müssen Sie zusätzlich zur Auswahl der allgemeinen Optionen wie Methode oder Speicher auch Zeitplan/Häufigkeit angeben.

Im nächsten Schritt können Sie Ihr Backup komprimieren, verschlüsseln und festlegen die Aufbewahrungsfrist. Hier haben Sie auch die Funktion "Sicherung überprüfen".

Um diese Funktion zu verwenden, benötigen Sie einen dedizierten Host (oder eine VM). ist nicht Teil des Clusters.

ClusterControl installiert die Software und stellt die Sicherung auf diesem Host wieder her. Sie können diesen Knoten zu Test- oder Berichtszwecken weiterlaufen lassen oder den Knoten bis zum nächsten Überprüfungsjob herunterfahren.

Nach der Wiederherstellung sehen Sie das Verifizierungssymbol im Bereich ClusterControl Backup.

Fazit

Backups sind in jeder Umgebung obligatorisch, da sie Ihnen helfen, Ihre Daten zu schützen. Um sie zu verwalten, ist es wichtig, ein gutes Tool mit erweiterten Sicherungsfunktionen zu haben, um es so einfach wie möglich zu machen.

ClusterControl hat viele Funktionen, die Ihnen bei dieser Aufgabe helfen, wie Backup-Planung, Überwachung, Backup-Verifizierung und noch mehr. Es unterstützt auch verschiedene Backup-Methoden und Sie können sie kombinieren, um eine gute DRP zu haben.