Home Unternehmen             Portfolio             Trainingsshop    Kunden & Partner Aktuelles    Kontakt
Home  Pfeil  ORDIX News  Pfeil  3/2005
suche: 
Der Artikel richtet sich an Rechenzentrumsleiter und DB2-Administratoren, die HADR zum Minimieren der Recovery-Zeiten bei einem Systemausfall einsetzen und einrichten wollen.

Glossar

CLP

Command Line Processor

HADR

High Availability Disaster Recovery

API

Application Programmer Interface

DB2 HADR (Teil II):

Installation und Konfiguration von DB2 High Availability Disaster Recovery

Nachdem in der letzten Ausgabe die allgemeine Funktionsweise von DB2 HADR beschrieben wurde, beschäftigt sich der zweite Teil des Artikels mit der praktischen Umsetzung.

Funktionsweise des HADR

Die im ersten Teil des Artikels ausführlich beschriebene Funktions-weise von HADR wird in Abbildung 1 noch einmal kurz dargestellt: Die von der Primärdatenbank erzeugten Log-Dateien werden über das Netzwerk zur Standby-Datenbank übertragen und dort nachgefahren.

Die Arbeitsweise des High Availability Disaster Recovery
Abb. 1: Die Arbeitsweise des High Availability Disaster Recovery.

Initialisieren von HADR

Wie bei fast allen administrativen Tätigkeiten kann DB2 HADR über den Command Line Processor (CLP), mit einem Assistenten aus der Steuerzentrale oder über API-Aufrufe initialisiert werden. Im Folgenden beschreiben wir die Vorgehensweise über den CLP und den Assistenten.

HADR mit dem CLP initialisieren

Um HADR mit dem CLP zu initialisieren, sind die folgenden Schritte notwendig:

Beispielkonfguration

Danach sind in beiden Datenbanken die Konfgurationsparameter für HADR zu setzen. Vorgaben für die Beispielkonfguration:

Im folgenden Beispiel sollen die beiden Rechner mit den Namen rechner1 und rechner2 HADR benutzen. Die HADR-Prozesse sollen dabei über den Netzwerkport 4711 kommunizieren. Beim Verbindungsaufbau soll der Timeout 120 Sekunden betragen. HADR soll im Modus fast synchron arbeiten. Die Datenbank heißt auf beiden Rechnern sample.

Daraus ergeben sich die in den Abbildungen 2 und 3 gezeigten Konfgurationsänderungen für die beiden Datenbanken.

db2 update db cfg for sample using HADR_LOCAL_HOST rechner1
db2 update db cfg for sample using HADR_LOCAL_SVC 4711
db2 update db cfg for sample using HADR_REMOTE_HOST rechner2
db2 update db cfg for sample using HADR_REMOTE_SVC 4711
db2 update db cfg for sample using HADR_REMOTE_INST inst2
db2 update db cfg for sample using HADR_TIMEOUT 120
db2 update db cfg for sample using HADR_SYNCMODE NEARSYNC

Abb. 2: Konfgurationsänderungen in der Primärdatenbank auf rechner1.

db2 update db cfg for sample using HADR_LOCAL_HOST rechner2
db2 update db cfg for sample using HADR_LOCAL_SVC 4711
db2 update db cfg for sample using HADR_REMOTE_HOST rechner1
db2 update db cfg for sample using HADR_REMOTE_SVC 4711
db2 update db cfg for sample using HADR_REMOTE_INST inst1
db2 update db cfg for sample using HADR_TIMEOUT 120
db2 update db cfg for sample using HADR_SYNCMODE NEARSYNC

Abb. 3: Konfgurationsänderungen in der Standby-Datenbank auf rechner2.

Dabei ist zu beachten, dass HADR allein durch das Setzen der Parameter noch nicht aktiviert wird. Dies ist nur eine notwendige, vorbereitende Maßnahme.

Starten von HADR

Zuerst ist HADR auf der Standby-Datenbank mit folgendem Kommando zu starten:
START HADR ON DB <DB-Alias> AS STANDBY

Danach ist HADR auf der Primärdatenbank zu starten:
START HADR ON DB <DB-Alias> AS PRIMARY

HADR mit dem Assistenten initialisieren
Abb. 4: HADR mit dem Assistenten initialisieren.
Abbildung vergrößern

HADR mit dem Assistenten initialisieren

Bei der Verwendung des Assistenten sind keine manuellen Tätigkeiten notwendig. Alle Schritte, die bis zum Starten von HADR nötig sind, werden mit Hilfe des Assistenten ausgeführt. Abbildung 4 zeigt den Assistenten.

Der Assistent wird mit dem Kontextmenü "HADR (High Availability Disaster Recovery) -> Einrichten" auf dem Icon der Datenbank in der Steuerzentrale gestartet. Danach werden die folgenden Schritte ausgeführt:

Kommandosyntax: Starten und Stoppen

Das vollständige Kommando START HADR zum Starten von HADR hat folgende Syntax:
START HADR ON DB <Aliasname> [USER <Benutzer> [USING <Passwort>]] \
AS { PRIMARY [BY FORCE] | STANDBY }

Bedeutung der Optionen:

Das Kommando zum Stoppen von HADR hat folgende Syntax:
STOP HADR ON DATABASE <Aliasname> [USER <Benutzer> [USING <Passwort>]]

Die Optionen haben dieselbe Bedeutung, wie beim Kommando START HADR.

TAKEOVER HADR

Die Funktionsübernahme wird mit dem Kommando TAKEOVER HADR vorgenommen. Es hat die folgende Syntax:
TAKEOVER HADR ON DATABASE <Aliasname> [USER <Benutzer> [USING <Passwort>]]\
[BY FORCE]

Bedeutung der Optionen:

Funktionsübernahme

HADR-Funktionsübernahme mit dem Assistenten
Abb. 5: HADR-Funktionsübernahme mit dem Assistenten.
Abbildung vergrößern

Auch die Funktionsübernahme kann mit einem Assistenten (siehe Abbildung 5) vorgenommen werden. Soll die Umschaltung allerdings automatisiert erfolgen, so ist das nur mit den entsprechenden CLI-Kommandos möglich, die in entsprechende Skripte eingebaut werden.

Herstellen des Normalzustands

Wenn die Bereitschaftsdatenbank die Funktion einer ausgefallenen Primärdatenbank übernommen hat, kann der Ausgangszustand wieder hergestellt werden, sobald das System mit der ursprünglichen Primärdatenbank wieder zur Verfügung steht.

Dazu sind die folgenden Schritte notwendig:

Hochverfügbarkeit

Durch ein schrittweises Update können Änderungen an Hard- und Software der beiden Systeme im laufenden Betrieb durchgeführt werden. Die Ausfallzeiten sind dabei sehr kurz.

Folgende Schritte sind notwendig:

Die Ausfallzeiten summieren sich dabei aus den beiden Übernahmen der Funktionalität, was sich in der Praxis im Bereich von wenigen Minuten bewegen sollte.

Resümee

Wie man sehen kann, ist es recht einfach möglich, HADR zu installieren und zu konfgurieren. Beispielsweise bei der Verwendung der Assis-tenten ist es nach Windows-Manier möglich, mit "Weiter-Weiter-Fertig" HADR aufzusetzen, ohne sich mit der Technologie genauer beschäftigen zu müssen.

Davon ist allerdings abzuraten, da man dann bei auftretenden Problemen sehr schnell mit seinem Latein am Ende ist und die Verfügbarkeit der Datenbank nicht schnell genug wieder herstellen kann. Das sollte HADR aber gerade vermeiden.

Holger Demuth (info@ordix.de).