Aus Linux-Magazin 06/2009

DRBD Management Console im Test

© CSPStock, Fotolia.com

Seit Red Hats Cluster-Suite und Suses Heartbeat-GUI gewinnen mausorientierte Werkzeuge zur Administration hochverfügbarer Linux-Cluster an Kontur. Für DRBD gibt es neuerdings eine Java-basierte grafische Oberfläche, allerdings noch mit Betastatus. Ist sie bereits alltagstauglich ?

Systemadministratoren, die sich mit Hochverfügbarkeit beschäftigen, bevorzugen in der Regel die Kommandozeile zum Verwalten ihrer Setups. Konfiguration und Administration von DRBD (Distributed Replicated Block Device) gehört nun eher zu den vergleichsweise unspektakulären Aufgaben, weil die Konfigurationsdatei »/etc/drbd.conf« einfach gehalten ist. Im vergangenen Februar hat aber die DRBD-Erfinderin Linbit GmbH ihrer Software eine grafische Oberfläche verpasst, die DRBD Management Console (DRBD-MC, [1]). Bei Redaktionsschluss stand die Release 0.13 zum Download zur Verfügung [2].

Die Grundlagen von DRBD sind in [3] und [4] beschrieben, sodass dieser Beitrag sich auf die Interaktion zwischen Management Console und DRBD 0.7 respektive der Nachfolgeversion DRBD 8 beschränkt. Als Testumgebung dienten zwei virtuelle Instanzen von Ubuntu 8.10 unter Virtualbox 2.14 auf einer Open Suse 11.1 als Wirtssystem. Ubuntu 8.10 bringt netterweise sowohl DRBD 0.7 als auch DRBD 8 als Utilities mit (sowie DRBD 8.2.6 als Kernelmodul), sodass beide Tests auf derselben Plattform stattfinden konnten.

Da es sich bei der DRBD-MC gegenwärtig noch um eine Betaversion handelt, sind bei der Begutachtung andere Maßstäbe anzulegen als bei Produktivsoftware. Zu beherzigen ist auch der ausdrückliche Hinweis von der DRBD-Homepage [5]: “Seien Sie gewarnt: Obwohl dies eine grafische Benutzerschnittstelle für Ihr DRBD-Heartbeat-Cluster ist, benötigen Sie ein gutes und klares Verständnis der Konzepte solcher Cluster.”

Übliches Setup

Wie bei Clustern üblich, führt der Administrator einige vorbereitende Arbeiten durch. Er legt eine saubere »/etc/hosts« ohne irreführende »127.0.*.*«-Einträge für den Hostnamen einheitlich auf beiden Hosts an und erzeugt SSH-Schlüssel ohne Passphrase für Root. Ausnahmsweise sind auf beiden Hosts auch die eigenen öffentlichen Schlüssel »id_dsa.pub« in die Datei »authorized_keys« aufzunehmen. Die Konsole braucht sie später, wenn sie ohne Passwortabfrage auskommen soll. Tatsächlich erledigt die DRBD-MC alle Zugriffe auf die Clusterknoten per SSH, weswegen sie irgendwo im Netz laufen kann, solange die Knoten erreichbar und die SSH-Schlüssel verteilt sind.

Einfache Installation

Als letzte Vorbereitung sind die Pakete für Heartbeat und DRBD (»drbd0.7-utils« respektive »drbd8-utils«) nachzureichen. Die Installation der DRBD-MC gestaltet sich sehr einfach, da das Programm in Java geschrieben ist und als Jar-Datei zum Download vorliegt. RPM- oder Deb-Pakete gibt es (noch?) nicht. Also gilt es, die Datei manuell am Ort der Wahl abzulegen. Die Applikation startet anschließend durch Aufruf von:

java -cp DMC-0.1.3.jar drbd.DrbdMC

Dokumentation existiert derzeit außer einer Entwickler-Mailingliste nicht, also muss sich der Admin durch die Menüs hangeln. Mit den Menüpunkten »Session | New | Host« sind beide Hosts schnell angelegt. Wenn man alle Defaults bestätigt und sich mit »Next« durchgeklickt hat, bestätigt die MC, dass alles ordnungsgemäß installiert ist.

Gelegentlich schlägt der letzte Schritt fehl und das GUI bemängelt fehlende Komponenten, die aber definitiv vorhanden sind. Mit »Skip | Next« lässt sich diese Klippe umschiffen.

Anschließend legt der Admin mit »Configure Cluster« ein Heartbeat-Cluster an. Spätestens hier zeigt sich, dass die DRBD-MC mehr sein will als nur eine Konsole für DRBD, da sie ein komplettes Heartbeat-GUI integriert.

Leider ist der Zugriff auf Heartbeat noch fehlerhaft: So erzeugt das GUI bei einer Konfiguration mit zwei Netzwerkkarten (eine produktive für die Anwendung, eine private für Heartbeat und DRBD) eine fehlerhafte Datei »/etc/ha.d/ha.cf«, wenn man als Heartbeat-Typ »Unicast« wählt. Das produktive Interface trägt sie zweimal ein, das private hingegen gar nicht, obwohl die beiden Netzwerkkarten in verschiedenen Netzen liegen (im Test 192.168.20/24 respektive 10.0.0/24).

Haken und Ösen

Überdies war die Datei »ha.cf« auf beiden Systemen gleich, obwohl sie bei Unicast-Heartbeat spiegelbildlich sein müsste. Die Syntax ist:

ucast eigenes_Interface IP-Adresse_des_Peer 

Kommt als Heartbeat-Typ hingegen »Broadcast« zum Einsatz, entsteht zumindest ein funktionierendes Setup. Hier greift die oben wiedergegebene Warnung, denn gerade bei hochkritischen Systemen – und das sind hochverfügbare definitionsgemäß – sollte ein Admin die Konfiguration nicht ausschließlich komplexen Tools überlassen.

Geht alles gut, erstellt das GUI die XML-Konfigurationsdatei »~/drbd-gui.drbdg«. Hat der Admin es bis hierher geschafft, kann er jetzt im DRBD-Menü die Partitionen der beteiligten Hosts sehen und über das Kontextmenü ein DRBD zusammenbauen (siehe Abbildung 1).

Abbildung 1: Mit der rechten Maustaste öffnet sich ein Kontextmenü für das Bauen des DRBD-Spiegels.

Abbildung 1: Mit der rechten Maustaste öffnet sich ein Kontextmenü für das Bauen des DRBD-Spiegels.

Disconnected

Die Console ignoriert eine bereits existierende Datei »/etc/drbd.conf« nicht, was zu einigen Fehlermeldungen führt. Es empfiehlt sich also, sie vorher zu entfernen. In diesem Fall legt das GUI allerdings eine neue Datei an, die leer ist und damit nicht funktionsfähig:

## generated by drbd-gui 0.1.3
global {
}

Ein Klick auf »Apply« (Abbildung 2) ändert daran nichts – man kommt aus dem Status »disconnected« nicht heraus. Es scheint momentan keine Funktion zu geben, die die MC zwingen kann, die aktuelle Konfiguration zu schreiben. Das GUI ist aber im Hintergrund darauf angewiesen, weil es im unteren Teil des Fensters sichtbar Befehle wie »drbdadm connect r0« ausführt. Das scheitert natürlich, wenn »r0« nirgendwo definiert ist.

Abbildung 2: Mit dem GUI lässt sich zwar ein DRBD-Gerät definieren, aber nicht in Betrieb nehmen, da es nur eine leere Konfiguration schreibt.

Abbildung 2: Mit dem GUI lässt sich zwar ein DRBD-Gerät definieren, aber nicht in Betrieb nehmen, da es nur eine leere Konfiguration schreibt.

Fazit: Vorsicht,frisch gestrichen

Der Betastatus ist zurzeit noch angebracht. Eine lauffähige DRBD-Konfiguration lässt sich offenbar mit der Konsole noch nicht erzeugen. Interessant wäre es sicherlich, zu sehen, wie gut das GUI mit Heartbeat selbst kooperiert. Es liegt aber die Vermutung nahe, dass die Routinen dafür ähnlich wenig entwickelt sind wie für DRBD selbst. Für die Konfiguration des DRBD-Geräts empfiehlt es sich daher, vorerst bei Vi zu bleiben.

Auch wenn der Hersteller für sich in Anspruch nimmt, dass ein Admin mit dem neuen GUI bereits alltägliche Aufgaben unternehmen kann, ist gesundes Misstrauen angebracht. Bei einer Beta-Release ist das aber nicht wirklich überraschend. Mit der Release 1.0 sieht das hoffentlich anders aus. (ake)

Infos

[1] Grafische Oberfläche für DRBD: [https://www.linux-magazin.de/news/erstes_grafisches_interface_fuer_drbd_erhaeltlich]

[2] Download DRBD-MC:[http://www.drbd.org/download/drbd-mc]

[3] Andreas Sebald, ” Reservespieler, Linux-HA-Cluster mit Heartbeat und DRBD”: Linux-Magazin 07/04, S. 60

[4] Linux-High-Availability-Howto: [http://www.vergenet.net/linux/redundant_content/related/linux-ha/High-Availability-HOWTO.html]

[5] Produktseite des Herstellers: [http://www.drbd.org/mc/management-console]

Der Autor


Harald Milz ist Leiter der Münchner Niederlassung der Millenux GmbH und beschäftigt sich spätestens seit dem Linux-High-Availability-Howto, dessen Autor er ist, mit Hochverfügbarkeit unter Linux.

LINUX-MAGAZIN KAUFEN
EINZELNE AUSGABE Print-Ausgaben Digitale Ausgaben
ABONNEMENTS Print-Abos Digitales Abo
TABLET & SMARTPHONE APPS Readly Logo
E-Mail Benachrichtigung
Benachrichtige mich zu:
0 Kommentare
Älteste
Neuste Beste Bewertung
Nach oben