Firmenbrief

19.06.2007

Hochverfügbarkeit mit CoreBiz Relozierbaren Diensten, Teil 1


Hochverfügbarkeit mit CoreBiz Relozierbaren Diensten, Teil 1

Um eine optimale Verfügbarkeit der Dienste in einem CoreBiz Netzwerk zu erreichen, verwendet die LIS AG Heartbeat und DRBD. Das Prinzip von Heartbeat ist einfach: ein Cluster von Rechnerknoten beobachtet sich gegenseitig. Für den Fall, dass einer der Knoten ausfällt, übernimmt ein anderer dessen Dienste. Im Zentrum des Failover steht die Übernahme der Dienst-IP und das Starten der Dienste. Unterstützt wird das Failover durch ein gemeinsames, externes RAID oder durch ein gemeinsames DRBD-Gerät, mit dem die aktuellen Daten automatisch dem jeweils aktiven Knoten zur Verfügung gestellt werden.

Dieses einfache Prinzip stellt bestimmte Bedingungen an die Konfiguration der Systeme. Vor allem setzt es voraus, das die Konfiguration in Bezug auf die zu übernehmenden Dienste auf den Systemen identisch ist. Diese Voraussetzung können oder sollen in vielen Fällen nicht erfüllt werden.

Ein Beispiel ist der NTP-Dienst von CoreBiz Base: Dieser muss explizit an das Service Interface gebunden werden. Ohne diese Bindung würden die Clients die Antwort auf eine NTP-Anfrage von einer anderen als der gefragten IP erhalten und sie deshalb ablehnen. Auf dem Failover-Peer steht dieses Interface aber nicht zur Verfügung, deshalb startet der Service nicht und der Rechner ist ganz ohne Zeitsynchronisation.

Ein anderes Beispiel ist LDAP, das zwar in der geforderten Weise konfiguriert werden kann, durch eine Active/Active-Konfiguration mit LDAP Replikation aber deutlich besser genutzt werden kann. Ähnlich sieht es auch mit DHCP aus. Auch dieser Dienst verfügt über ein eigenes Failover zweier aktiver Knoten, und die LDAP-basierte Konfiguration setzt wenigstens im LDAP eine asymmetrische Konfiguration beider Knoten voraus. Grundsätzlich problematisch in diesem Zusammenhang sind alle Dienste, die auf zwei Knoten gleichzeitig in einem Active/Active-Cluster angeboten werden sollen.

Das Failover-Prinzip von Heartbeat lässt sich offensichtlich am einfachsten in einem sauberen Active/Passive-Cluster realisieren. Die oben genannten Probleme sind alle mehr oder weniger deutliche Aufweichungen der passiven Rolle des zweiten Knoten. Hierbei ist zu beachten, dass die meisten Probleme nur dann auftreten, wenn zwei Knoten im Active/Active-Cluster die gleichen Dienste anbieten sollen. NTP bildet hier eine Ausnahme, es soll/muss auf dem zweiten Knoten nicht als Server, sondern als Client laufen.

Im Prinzip lassen sich also die meisten Konflikte dadurch lösen, dass ein Cluster aus vier Rechnern gebildet wird, in dem jeweils mindestens ein Knoten bezüglich jedes Dienstes ein echtes Standby ohne aktive Rolle mit identischer Konfiguration realisieren kann. Mit Heartbeat 1.2 lassen sich Cluster mit mehr als zwei Knoten nicht realisieren. Die Voraussetzung einer identischen Passiv-Konfiguration lässt sich in einem Cluster aus vier Knoten zwar sicher abbilden, die Verteilung der Daten wird aber in einem solchen Cluster ziemlich kompliziert.

Zusammenfassend läßt sich feststellen, dass ein einfaches Failover mit Heartbeat in der Praxis Unzulänglichkeiten aufweist. Wie die Relozierbaren Dienste von CoreBiz diese Aufgabe lösen, erfahren Sie im nächsten Linux-Firmenbrief 19/2007.

Möchten Sie konkret erfahren, wie Ihre IT mittels CoreBiz hochverfügbar wird? Wir informieren Sie gern. Schreiben Sie einfach ein E-Mail an info@linux-ag.com oder rufen Sie uns an unter (0 89) 99 34 12-0.