Login Registrieren

POC des NetWorker-NMDA-OApp Moduls

Verfasst von Uwe W. Schäfer am 24. Mai 2022

 

Wie es der Zufall mal wieder so wollte, fragten in diesem Jahr zwei Kunden unabhängig voneinander, nach einem Prove Of Concept (POC) für den Einsatz des NMDA-OApp Moduls. In einem Fall für einen Einsatz mit PostgreSQL Datenbanken im zweiten Fall für MySQL Datenbanken.

Beide POCs konnten erfolgreich beendet werden, aber bevor wir uns mit den Details befassen ein paar kurze Infos zu dem NMDA-OApp Modul.

Mit der NetWorker Version 18.1 (2018) wurde in dem NetWorker „Modul for Database Applications (NMDA)“ die sogenannte OApp Erweiterung eingeführt. Diese ermöglicht es, mit Hilfe eines DataDomain Storage-Systems und dem zugehörigen BoostFS Modul, Datensicherungen und Wiederherstellungen der Datenbanken PostgreSQL, MySQL, MariaDB und MongoDB schnell, elegant und vor allem sicher auf ein externes Backup-Storage-System zu speichern.

Bei dieser für NetWorker neuen Art der Sicherung werden die vom Datenbankprodukt bekannten Sicherungs- und Wiederherstellungs-programme verwendet, aber die Daten sind nach der Sicherung nicht mehr auf der lokalen Platte des Datenbank-Systems sondern auf der DataDomain und auf einem NetWorker-Medium.

 

Vorteile:

  • Alle Sicherungen (Voll und Log-Sicherungen) werden mit den bekannten NetWorker-Eigenschaften verknüpft. Im einzelnen sind das:
    • Retention Zeiten
    • Cloning auf eine 2‘te Data-Domain
    • Integration der Sicherung in die Medien-Datenbank und damit Such-Möglichkeiten über die Sicherungsattribute
  • Auch eine Wiederherstellung auf einen definierten Zeitpunkt (Recover-Until-Time) werden durch die OApp Erweiterung ermöglicht.

Nachteile:

  • Die Installation und Konfiguration des benötigten BoostFS Moduls und der benötigten Skripte ist ein wenig knifflig.
  • Für eine Wiederherstellung müssen Anpassungen in Wiederherstellungs-Skripten vorgenommen werden.

 

Hier ein kurzer Abriss der benötigten Installations- und Konfigurations-Schritte beim Einsatz des Moduls mit PostgreSQL Datenbanken:

  1. Installation der benötigten NetWorker und DataDomain Pakete
  2. BoostFS Konfiguration
    • Lockbox konfigurieren
    • BoostFS für PostgreSQL konfigurieren
  3. NetWorker NMDA Config Files anlegen
  4. NetWorker Ressourcen anlegen
  5. Postgres Config File anpassen

Die SaveSets einer erfolgreichen PostgreSQL „full“ und Log-Sicherungen in der NetWorker Medien-DB:

> mminfo -ot -v -c sles12sp5-1
pgres.005 sles12sp5 02/17/22 55 MB cr full PostgreSQL_nsr_full
pglog.005 sles12sp5 02/17/22 16 MB cr txnlog PostgreSQL_nsr_txnlog_1040
pglog.005 sles12sp5 02/17/22 16 MB cr txnlog PostgreSQL_nsr_txnlog_1041
pglog.005 sles12sp5 02/17/22 2 KB cr txnlog PostgreSQL_nsr_txnlog_1041.0028.backup

 

Nötige Schritte für einen Point in Time Recover:

  • Sicherungszeit (savetime) und SaveSet-Name des gewünschten Backup in der Config-Datei eintragen
  • Relocation-Destination vorbereiten
  • DB-Stoppen
  • PostgreSQL Data Verzeichnis entfernen
  • NetWorker NMDA Recover Kommando starten
  • Wiederhergestellte Daten in das PostgreSQL-Data Verzeichnis umziehen
  • Definitionsparameter in der postgresql.conf editieren
    1. restore_command
    2. recovery_target_time
  • Postgres Signal Datei anlegen
  • DB Starten
  • Postgres Log File kontrollieren
  • Postgres Signal Datei entfernen
  • PostgreSQL Config File editieren
  • PosgreSQL Dienst neu starten

Log-Ausgabe eines erfolgreichen Point in Time Recovers

> less data/log/postgresql-2022-02-17_104617.log

starting
point-in-time recovery to 2022-02-17 10:30:00+01
The recovery completed successfully.
restored log file "1046" from archive
redo starts at 0/46000028
consistent recovery state reached at 0/46000138
database system is ready to accept read only connections
The recovery completed successfully.
restored log file "1047" from archive time 2022-02-17
10:30:24.525416+01 
recovery stopping before commit of transaction 13283,
pausing at the end of recovery

HINT: Execute pg_wal_replay_resume() to promote.


FAZIT:

Die oben gezeigten Konfigurations-Schritte haben nicht den Anspruch vollständig und ausreichend zu sein, sie sollen Ihnen nur die Komplexität des Themas vermitteln, ihnen aber auch zeigen, dass das Ergebnis den Aufwand lohnt.

Sollten Sie weitergehende Fragen zu dem Einsatz des NMDA-OApp Moduls haben oder selbst einen POC in Ihrem Hause wünschen, so scheuen Sie sich nicht, den Autor zu kontaktieren.