Login
Newsletter
Werbung

So, 15. Februar 2009, 00:00

Projekt »Virtueller hochverfügbarer Linux-Server«, Teil 10

Optimierungen und Einrichtung von Heartbeat mit CRM

Grafische Konfiguration

Nachdem DRBD und Heartbeat gestartet sind, haben wir alle Voraussetzungen geschaffen, um die Ressourcen zu konfigurieren, die von Heartbeat hochverfügbar gemacht werden sollen. Doch noch befindet sich das System im Leerlauf.

Wir benötigen nun die grafische Oberfläche von Heartbeat auf unserer Workstation. Unter Debian erhalten wir sie mit apt-get install heartbeat-gui. Wir benötigen die Version 2.1.3, die wiederum nicht in Etch zu finden ist, sondern aus Lenny bezogen werden muss. Zwischenzeitlich war die Lenny-Version fehlerhaft und völlig unbrauchbar, aber mittlerweile wurde sie korrigiert. Wenn Sie feststellen, dass Sie in der GUI keine Ressourcen sehen und nichts machen können, machen Sie ein Update auf die neueste Version. Ebenfalls benötigen wir das Paket heartbeat, da dieses die Ressourcendefinitionen enthält - ohne diese können wir die Parameter nicht vernünftig eingeben.

Nun kann die grafische Oberfläche mit dem Kommando hb_gui gestartet werden. Über den Menüpunkt ConnectionLogin verbinden wir uns mit dem Cluster. Dabei ist es egal, welchen der beiden Server wir als Ziel angeben. Alle Änderungen werden automatisch zwischen den beiden Servern synchronisiert. Als Benutzername geben wir natürlich hacluster an und als Passwort wie oben definiert 1.

hb_gui - Übersicht

Hans-Joachim Baader (hjb)

hb_gui - Übersicht

Definition der drbddisk-Ressource

Hans-Joachim Baader (hjb)

Definition der drbddisk-Ressource

Es erscheint eine Darstellung ähnlich der Abbildung oben links. Im Cluster sind zwei Knoten vorhanden, die aktiv sind, aber die Ressourcen und Constraints sind noch leer.

Wie man eine einfache Ressource definiert, haben wir bereits in Folge 9 gesehen. Wir haben dabei auch festgestellt, dass man sich bereits beim Anlegen einer Ressource Gedanken machen muss, ob sie Teil einer Gruppe sein soll. Auf unserem virtuellen Server bilden jeweils ein DRBD-Volume, das darauf befindliche Dateisystem und die virtuelle Maschine, die das Dateisystem verwendet, eine Einheit. Alle Bestandteile dieser Einheit müssen auf demselben Server laufen und in einer bestimmten Reihenfolge aktiviert und deaktiviert werden. Das Gruppenkonzept von Heartbeat macht es einfach, genau diese Abhängigkeiten zu definieren.

Wir wollen diese Definition anhand einer einzelnen virtuellen Maschine durchspielen. Dabei behalten wir die Namenskonvention bei, die VM mit vm100 zu benennen.

Wir beginnen mit DRBD. Wir klicken mit der rechten Maustaste auf Resources. Es erscheint ein Popup-Menü, aus dem wir Add New Item auswählen (alle anderen Einträge sind sowieso noch deaktiviert). Die folgende Dialogbox will einen Ressourcentyp wissen; wir wählen hier nicht etwa group, sondern native. Die Gruppe können wir nämlich zusammen mit der ersten Ressource definieren.

Es erscheint nun eine größere, leider auch etwas unübersichtliche Dialogbox, in der wir die Ressource definieren. Zunächst können wir oben links den Namen der Ressource und oben rechts eine Gruppe festlegen, in unserem Fall eine neue Gruppe, die daraufhin angelegt wird. Es ist sinnvoll, sich eine Namenskonvention auszudenken. Die Ressource nenne ich disk_vm100 (drbd_vm100 wäre auch eine plausible Wahl) und die Gruppe group_vm100. Wer plant, der virtuellen Maschine einen anderen Hostnamen als »vm100« zu geben, kann als Gruppenname auch beispielsweise group_[hostname] nehmen.

Dann wählen wir den Ressourcentyp drbddisk. Diese Ressource benötigt nur einen Parameter, den Namen des DRBD-Volumes, hier vm100. Die Parameter von drbddisk haben keine Namen; wir müssen vm100 unter dem Parameter 1 eintragen.

Nach dem Abschluss der Eingabe mit dem Button Hinzufügen erscheinen Gruppe und Ressource in der Übersicht. Die Ressource wird sofort auf dem ersten Rechner des Clusters gestartet. Sollte das nicht der Fall sein, ist ein Fehler aufgetreten und man sollte das Syslog zu Rate ziehen.

Wir machen weiter und definieren die Dateisystem-Ressource Filesystem. Diese bekommt drei Parameter: device (/dev/drbd0), directory (/mnt/vm100; das ist der Mountpoint, den man auf beiden Rechnern vorher als leeres Verzeichnis anlegen sollte) und fs_type (z.B. xfs). Ein vierter Parameter ist optional, doch sinnvoll. Denn bei manchen Dateisystemen ist es besser, sie nicht mit den Standardoptionen zu mounten. Sie laufen mit speziellen Optionen schneller oder besser. Wenn man xfs verwendet, sollte man nach meinen neuesten Informationen die Optionen noatime,nodiratime,attr2,logbufs=8 verwenden. Diese fügt man als weiteren Parameter options hinzu. Noch mehr Performance kann man aus xfs übrigens herausholen, wenn man gleich beim Anlegen ein größeres Log vorsieht, was man mit mkfs.xfs -l size=64m erreicht.

Zurück zur Ressource. Auch hier ist eine ID wie fs_drbd0 hilfreich. Nach der Eingabe sollte auf dem Primary das Dateisystem gemountet werden. Wenn nicht, helfen wir nach, indem wir die Dateisystem-Ressource von Hand starten.

Die erste Gruppe mit Ressource disk_vm100

Hans-Joachim Baader (hjb)

Die erste Gruppe mit Ressource disk_vm100

Definition der Location der Gruppe

Hans-Joachim Baader (hjb)

Definition der Location der Gruppe

Kommentare (Insgesamt: 0 )
Pro-Linux
Pro-Linux @Facebook
Neue Nachrichten
Werbung