Datenmanagement

Actian Ingres Wiederherstellung im Katastrophenfall

Emma McGrattan

31. Mai 2024

Actian Ingres Wiederherstellung im Katastrophenfall

Die meisten produktiven Actian Ingres Installationen benötigen ein gewisses Maß an Wiederherstellung im Katastrophenfall (DR). Die Optionen reichen vom nächtlichen Versand von Datenbank-Checkpoints an externe Speicherorte bis zur Replikation in nahezu Echtzeit an einen speziellen externen DR-Standort.

Actian Ingres ist eine hybride Unternehmensdatenbank, die über integrierte Checkpoint- und Journal-Versandfunktionen verfügt, die die grundlegenden Bausteine für den Aufbau kostengünstiger, effizienter DR-Implementierungen darstellen. Eine dieser Implementierungen ist IngresSync, das die nativen Checkpoint/Journal-Versand- und inkrementellen Funktionen von Actian Ingres nutzt, um eine kostengünstige DR-Lösung zu implementieren.

ingressync

IngresSync arbeitet nach dem Konzept von Quell- und Zielinstallationen von Actian Ingres. Die Quellinstallation ist die gerade aktive Produktionsumgebung. Das Ziel, oder bei Bedarf mehrere Ziele, werden durch einen IngresSync-Job, der in einem Nutzer Intervall ausgeführt wird, aktuell gehalten. Jeder Sync-Vorgang kopiert nur die Journale, die seit dem letzten Sync erstellt wurden, und wendet diese Transaktionen auf die Ziele an. Checkpoints, die auf dem Quellknoten erstellt wurden, werden automatisch auf alle Ziele kopiert und dort fortgeschrieben.

Beispiel

Angenommen, wir haben eine Umgebung, in der die Produktionsinstallation auf Node Corp gehostet wird, und wir müssen zwei DR-Sites dreast und drwest erstellen.

Die DR-Knoten benötigen jeweils:

  • Eine Ingres-Installation mit der gleichen Version und dem gleichen Patch-Level wie corp.
  • Passwortloses SSH von und zu den anderen Knoten konfiguriert.
  • Ingres/Net VNODE-Einträge an die anderen Knoten.

DR-Knoten für Ingress

Um diese Umgebung zu konfigurieren, müssen wir zunächst die Quell- und Zielhosts bestimmen und den letzten Quell-Checkpoint auf die Ziele anwenden.

ingresSync --source=corp --target=dreast,drwest --database=corpdb --iid=II --ckpsync --restart

Quell- und Zielhosts für Ingress

Die beiden Zielinstallationen sind nun mit der Quelle synchronisiert, und die Zieldatenbanken befinden sich im Zustand des inkrementellen Rollforward (INCR_RFP). In diesem Zustand können Journale inkrementell angewendet werden, um die Ziele mit der Quelle zu synchronisieren. Inkrementeller Rollforward wird durchgeführt durch:

ingresSync --hosts=corp,dreast,drwest --database=corpdb --iid=II --jnlsync

Wenn er ausgeführt wird, wird das aktuelle Journal auf der Quelle geschlossen, neue Journale auf die Ziele kopiert und diese Journale auf die Ziele übertragen. Der Schritt der Journalsynchronisierung sollte so konfiguriert werden, dass er in regelmäßigen Abständen mithilfe des Systemplaners (z. B. cron) ausgeführt wird. Eine häufige Ausführung führt zu einer minimalen Verzögerung bei der Synchronisierung zwischen Quelle und Zielen.

Die Zielinstallationen bei dreast und drwest sind nun mit der Quellinstallation bei corp synchronisiert. Sollte es in der Corp-Umgebung zu einem Hardware- oder Softwareausfall kommen, können wir einen der Zielknoten als neue Quelle bestimmen und Client-Verbindungen zu diesem Knoten leiten. In diesem Fall benennen wir drwest als neue Quelle und dreast bleibt als Ziel (DR-Site) bestehen.

ingresSync --target=drwest --database=corpdb --iid=II --incremental_done

Dadurch wird die drwest corpdb-Datenbank aus dem inkrementellen Rollforward-Modus genommen; die Datenbank führt nun sowohl Lese- als auch Aktualisierungstransaktionen aus und ist die neue Quelle. Die dreast-Datenbank befindet sich weiterhin im inkrementellen Rollforward-Modus und funktioniert weiterhin als DR-Zielknoten.

drwest für Ingress

Da der corp-Knoten nicht mehr verfügbar ist, muss der Journal-Sync-Auftrag entweder auf drwest oder dreast gestartet werden. Der Journal-Sync-Auftrag kann mit dem Flag -strict so konfiguriert und geplant werden, dass er auf allen drei Knoten ausgeführt wird. In diesem Fall bestimmt der Auftrag, ob er auf dem aktuellen Quellknoten ausgeführt wird; wenn ja, wird er normal ausgeführt. Wenn er auf einem Zielknoten ausgeführt wird, wird der Auftrag einfach beendet. Mit dieser Konfiguration kann die Synchronisierung auch dann fortgesetzt werden, wenn sich die Knotenrollen ändern.

Sobald der Rechner wieder online ist, kann er wieder als DR-Ziel in die Konfiguration aufgenommen werden.

ingresSync --source=drwest --target=corp --database=corpdb --iid=II --ckpsync --restart

dr Ziel für Ingress

An einem bestimmten Punkt müssen wir möglicherweise zur ursprünglichen Konfiguration mit corp als Quelle zurückkehren. Die Schritte sind:

  • Beenden Sie alle Datenbankverbindungen zu drwest
  • Sync

    corp

     mit

    drwest

     um sicherzustellen

    corp

     ist aktuell
    ingresSync --source=drwest --target=corp --database=corpdb --iid=II
    
    --jnlsync
  • Knotenrollen neu zuweisen
    
    ingresSync --target=corp --database=corpdb --iid=II --incremental_done
    
    ingresSync --source=corp --target=drwest --database=corpdb --iid=II
    
    --ckpsync --neustart

zur ursprünglichen Firma als Quelle für Ingress zurückkehren

Zusammenfassung

IngresSync ist ein Mechanismus zur Implementierung einer DR-Lösung. Er eignet sich im Allgemeinen in Fällen, in denen ein gewisses Maß an Verzögerung akzeptabel ist und die Zielinstallationen wenig oder gar keine Nutzer aufweisen. Die Zieldatenbanken können für Read-only verwendet werden, wobei der inkrementelle Rollforward nicht ausgeführt werden kann, solange aktive Datenbankverbindungen bestehen. Der Rollforward-Prozess wird beim ersten Aktualisierungszyklus nachgeholt, wenn es keine aktiven Datenbankverbindungen gibt.

Im Folgenden werden die wichtigsten Vor- und Nachteile der alternativen Methoden zur Bereitstellung von Wiederherstellung im Katastrophenfall für Actian Ingres dargelegt:

Merkmal Checkpoint Schifffahrt IngresSync Replikation
Umfang Datenbank Datenbank Tabelle
Granularität Datenbank Zeitschrift Transaktion
Sync-Frequenz Kontrollpunkt Nutzer Definiert Transaktion
Ziel-Datenbank Lesen/Schreiben(1) Read-only Lesen/Schreiben(2)

 

  1. Die Zieldatenbank unterstützt Lese- und Schreibvorgänge, aber alle Änderungen gehen bei der nächsten Checkpoint-Aktualisierung verloren.
  2. Die Zieldatenbank unterstützt Lese- und Schreibvorgänge, aber es kann zu Aktualisierungskonflikten kommen, die manuell gelöst werden müssen.

Hinweis: IngresSync läuft derzeit unter Linux und Microsoft Windows. Windows-Umgebungen erfordern das Basispaket Cygwin und rsync.

emma mcgrattan blog

Über Emma McGrattan

Als Chief Technology Officer bei Actian leitet Emma McGrattan die Technologiestrategie, Innovation und Produktentwicklung des Unternehmens und unterstützt damit Actians Mission, die Art und Weise zu vereinfachen, wie Unternehmen Daten verbinden, verwalten, steuern und analysieren, um Unternehmen zu transformieren. Seit ihrem Eintritt in das Unternehmen vor drei Jahrzehnten hat Emma Rattan eine entscheidende Rolle bei der Entwicklung und Weiterentwicklung der Analyse-, Datenintegrations- und Datenmanagement von Actian gespielt, einschließlich der Actian Data Platform. Emma hat einen Abschluss in Elektronikingenieurwesen von der Dublin City University in Irland.