Firmenbrief

16.10.2013

Hochverfügbarkeit in CoreBiz: Cluster Resource Manager "Pacemaker"


Um Hochverfügbarkeit für CoreBiz- und RedBiz-Systeme zu erreichen, werden eine ganze Reihe von aufeinander abgestimmten Softwarepaketen eingesetzt. Zentraler Bestandteil davon ist Pacemaker, der so genannte Ressourcen-Manager des Clusters.

Die wichtigsten Aufgaben von Pacemaker sind die Überwachung sowie das Starten und Stoppen von Diensten. Ein Dienst kann so simpel wie eine IP-Adresse sein, aber auch komplexe Konstrukte wie Cluster-fähige Dateisysteme oder Datenbanken können von Pacemaker gesteuert werden. Weitere Funktionalitäten sind zum Beispiel das Einhalten einer Reihenfolge beim Starten von Diensten, auch wenn diese auf unterschiedlichen Knoten aktiviert werden, komplexe Abhängigkeiten zwischen verschiedenen Diensten oder konfigurierbare Strategien für die Reaktion bei einem Ausfall eines Dienstes oder eines ganzen Cluster-Knotens.

Zwar weiß Pacemaker über jede ihm bekannte Ressource und deren Zustand im Cluster Bescheid, für die Kommunikation zwischen der einzelnen Knoten wird aber ein weiterer Dienst benötigt. Dieser so genannten Messaging Layer wird in der Regel von Heartbeat oder Corosync übernommen.

In CoreBiz wird Pacemaker hauptsächlich dazu genutzt, um Hochverfügbarkeit für virtuelle Maschinen und den dazugehörigen virtuellen Festplatten zu erreichen. Da in der Regel sämtliche CoreBiz/RedBiz-Systeme mit Ausnahme der CoreBiz Virtual Server Base (VSB) virtuell laufen, erreicht man dadurch indirekt die Hochverfügbarkeit für alle Dienste bzw. Server die virtuell auf einem VSB-Cluster laufen.

Umgesetzt wird das durch zwei oder drei von einander abhängigen Ressourcen, die zusammen eine virtuelle Maschine definieren:


Wenn Pacemaker also eine virtuelle Maschine starten soll, wird zuerst der zugehörige DRBD-Container eingebunden. Falls nicht direkt der DRBD-Container als virtuelle Festplatte verwendet wird, sondern ein Image (z. B. qcow2 oder vmdk) benutzt wird, muss das Filesystem eingebunden werden. Danach kann schließlich die virtuelle Maschine gestartet werden.

Zur Konfiguration und Administration werden verschiedene Werkzeuge bereitgestellt. Für erfahrene Cluster-Administratoren bieten sich Kommandozeilen-Tools an: Das von CoreBiz unterstützte Softwarepaket nennt sich "crmsh" und besteht aus einer ganzen Reihe von Kommandozeilenprogrammen, die sowohl über den Zustand des Clusters informieren, als auch Änderungen am Cluster durchführen können. Ein weiteres nennenswertes Administrationstool für Pacemaker mit ähnlichem Funktionsumfang wie "crmsh" ist "pcs", welches voraussichtlich zukünftig auch in CoreBiz enthalten sein wird.

Natürlich gibt es auch grafische Werkzeuge, um Pacemaker zu administrieren. Speziell auf den CoreBiz VSB Cluster abgestimmt ist das entsprechende Snapin der CoreBiz Mangement Console. Hiermit lassen sich komplette virtuelle Maschinen inklusive virtueller Festplatten erstellen und verwalten. Neben Standardoperationen wie Starten und Stoppen von virtuellen Maschinen kann auch eine Migration, also das Verschieben eines virtuellen Systems von einem Knoten auf einen anderen bequem aus dem Browser heraus ausgelöst werden. Erwähnenswert ist an dieser Stelle noch das Programm "LCMC", was ebenfalls ein grafisches Konfigurationsinterface für Pacemaker bietet.