Der Ausfall von wichtigen Servern kann bereits für KMU eine kostspielige Angelegenheit werden. Oder konkret gefragt: Was kostet es Sie, wenn Ihre Mitarbeitenden einen halben Tag oder mehr nicht arbeiten können oder sich Verzögerungen im Produktionsprozess ergeben?
Die Verfügbarkeit der IT-Infrastruktur kann auf verschiedene Arten und Stufen sichergestellt werden. Grundsätzlich geht es bei der Hochverfügbarkeit darum, Single Points of Failure (SPOF) zu eliminieren. SPOF sind einzelne Schwachstellen eines Systems, deren Ausfall den Ausfall des gesamten Systems nach sich ziehen, angefangen bei der Stromversorgung über Netzwerkkomponenten wie Switches und Router bis hin zu den Clustern.
Mit redundant ausgelegten Servern lässt sich die Verfügbarkeit bereits signifikant erhöhen. Bei einem Ausfall der Systeme ist jedoch immer noch ein manuelles Eingreifen für die Fehlersuche und den ungeplanten Wechsel zwischen den Netzwerkdiensten (Failover) nötig, bevor die produktive Arbeit wieder aufgenommen werden kann. Hochverfügbare Systeme zeichnen sich dadurch aus, dass die Fehlersuche und der Failover automatisch erfolgen. Der Ausfall der Systeme kann somit auf wenige Sekunden oder Minuten – abhängig von der Applikation – reduziert werden.
Nutzen und Kosten
Bei der Abwägung der Risiken eines Ausfalls und dem allfälligen Nutzen von hochverfügbaren Systemen spielen die Kosten eine entscheidende Rolle. Eine «klassische» hochverfügbare IT-Infrastruktur setzt sich jeweils aus einem SAN und den dazugehörenden Switches und Servern zusammen. Mit der redundanten Auslegung der Systeme werden die SPOF eliminiert.
Der Aufbau einer solchen klassischen, hochverfügbaren Infrastruktur bedeutet also eine Investition in diverse Komponenten unterschiedlicher Anbieter und ist dabei verbunden mit zusätzlichen Kosten für die entsprechenden Lizenzen zum Beispiel für die SAN-Replikationssoftware.
Der finanzielle Aufwand für SAN-Spiegelung, Switches und Server scheint im Vergleich zum möglichen Nutzen für viele Unternehmen zu hoch. Aus Kostengründen wird darum jeweils oft das Disk-Array nur einfach ausgelegt und bildet somit wiederum einen SPOF.
Weniger Hardware dank Open Source Software
Mit Distributed Replicated Block Device (DRBD), einer Open-Source-
Netzwerkspeicherlösungs-Software, kann eine hochverfügbare IT-Infrastruktur auf nur zwei physischen Systemen hergestellt werden. DRBD spiegelt ein Blockgerät auf einem produktiven (Primary) Server in Echtzeit auf einen anderen (Secondary) Server. Dabei werden alle Schreibzugriffe über das Netzwerk an den zweiten Server übermittelt. Falls der erste Server ausfällt, kann der zweite Server die Funktion des ersten Servers übernehmen und ohne Datenverlust weiterarbeiten.
Sollte das primäre System ausfallen, versetzt ein Cluster-Management-Prozess das sekundäre System in den primären Systemzustand. Sobald das ehemals primäre System wieder verfügbar ist, läuft dieses nach einer Resynchronation als sekundäres System weiter. So wird ein weiterer Unterbruch vermieden. Und: Bei der DRBD-Synchronisation müssen nur die während des Ausfalls geänderten Datenblöcke resynchronisiert werden.
Eine ebenfalls quelloffene Alternative zu DRBD ist GlusterFS. Hierbei handelt es sich um ein verteiltes Dateisystem, welches die verschiedenen Server über TCP/IP als Client-Server-Architektur verbindet.
Kein gemeinsam genutzter Speicher
Konventionelle Computer-Cluster-Systeme benutzen in der Regel eine Art gemeinsamen Speicher, der für die verschiedenen Cluster-Ressourcen benutzt wird. Dieser Ansatz hat Nachteile, was die Hochverfügbarkeit betrifft. DRBD hingegen umgeht diesen Nachteil. Bei der Verwendung von DRBD werden die benötigten Cluster-Ressourcen lokal repliziert und liegen nicht auf einem eventuell wegfallenden gemeinsamen Speicher. Allerdings kann in modernen SAN-Lösungen mit Spiegelungsfunktionen gearbeitet werden, welche diese früher unvermeidliche Fehlerstelle beseitigen.
Gemeinsam genutzter Speicher wird in der Regel über ein SAN oder ein NAS adressiert, was einen gewissen Mehraufwand beim Lesezugriff erfordert. Bei DRBD wird dieser Aufwand signifikant reduziert, da Lesezugriffe immer lokal stattfinden. Weiter läuft der ganze Mechanismus von DRBD über das reguläre IP-System. Man benötigt also kein SAN und spart folgedessen die damit verbundenen Hardware- und Lizenzkosten.
Einschränkungen der Open-Source-Lösungen
DRBD und GlusterFS bieten also die Hochverfügbarkeit eines Cluster-Services oder einer virtuellen Maschine, und das verbunden mit tieferen Kosten. Da diese Ressource jedoch mit einem Cluster-Manager wie Pacemaker verwaltet wird, dauert ein Service-Recovery bedingt durch den Neustart des Prozesses oder der virtuellen Maschine einige Sekunden. Bei einem Service-Cluster, in dem alle Dienste auf beiden Maschinen separat installiert sind, ist die Failover-Zeit entsprechend noch kürzer.
Je nach Anwendungsfall und Bedürfnis kann es auch Sinn machen, die Replikationsmechanismen der Datenbank (z.B. MySQL-Replikation) anstatt DRBD oder GlusterFS anzuwenden. Zudem werden einige Funktionen proprietärer Lösungen wie zum Beispiel die Datenarchivierung oder Vmware Fault Tolerance durch die Open-Source-Projekte (noch) nicht unterstützt.
Hochverfügbarkeit und Virtualisierung
Immer mehr Unternehmen nutzen die Vorteile einer virtualisierten IT-Infrastruktur. Durch das Zusammenfassen der Ressourcen und das einfachere Verwalten der Hardware kann Zeit und Geld gespart werden. Allerdings steigt so auch die Abhängigkeit von der Hardware. Um Ausfälle zu vermeiden, müssen die virtuellen Systeme darum hochverfügbar ausgelegt werden. Wurden dazu früher mindestens zwei Server als Hypervisor für die jeweiligen Anwendungen, ein zusätzlicher
Management-Server und zwei Cluster-SAN-Storages benötigt, ist dies mit einer Kombination von Open-Source-Projekten heute auf nur zwei physischen Systemen möglich. Dazu gehören die Lösungen KVM, Ovirt und Pacemaker:
- Die Kernel-based Virtual Machine (KVM) ist eine Infrastruktur für Virtualisierung, welche im Linux-Kernel enthalten ist. Sämtliche Bestandteile von KVM stehen ebenfalls unter verschiedenen Open-
Source-Lizenzen zur Verfügung. Ein ähnliches Open-Source-Projekt ist Xen. Vergleichbare proprietäre Produkte sind Vmware ESXi oder Microsoft Hyper-V.
-Ovirt ist eine Verwaltungsplattform für virtuelle Server- und Desktop-Infrastrukturen auf der Basis von KVM und die Open-Source Alternative zu Vmware Vsphere beziehungsweise Vcenter. Ovirt ist das sogenannte «Upstream»-Projekt für Red-Hat-Enterprise-Virtualization (RHEV)-Produkte, das heisst in der Ovirt Community werden neue Funktionen entwickelt und getestet, bevor sie in die Enterprise-Lösung von Red Hat einfliessen. Das Äquivalent zu RHEV für Xen sind die Produkte von Citrix Xenserver.
-Pacemaker ist ein Open Source Cluster Manager für die Ressourcenverwaltung von Linux-Hochverfügbarkeits-Clustern. Der Cluster Manager überwacht alle Knoten eines Clusters auf deren Verfügbarkeit und steuert bei einem allfälligen Ausfall eines Systems den Failover.
Mit DRBD und Pacemaker mit Ovirt werden alle notwendigen Funktionen abgedeckt. Der Server für das Virtualisierungs-Management ist ebenfalls auf beiden Systemen verfügbar.
Für Unternehmen mit mehreren Standorten, die eine hochverfügbare virtuelle IT-Architektur benötigen, ist die Kombination dieser Open-Source-Projekte eine, wenn nicht vielleicht sogar die einfachste und kostengünstigste Lösung. Sie erfüllt alle Anforderungen an eine hochverfügbare virtualisierte Infrastruktur, ohne dass eine teure proprietäre Storage-Lösung verwendet werden muss. Insgesamt sind Einsparungen von bis zu 60 Prozent möglich.
Proprietäre Alternativen
DRBD und GlusterFS können auch mit proprietären Virtualisierungslösungen wie Vmware eingesetzt werden. Das aufgeführte Setup mit nur zwei physischen Systemen und die daraus resultierenden erheblichen Einsparungen sind so jedoch nicht möglich. Eine proprietäre Alternative zu DRBD wird derweil von Nutanix angeboten. Der Vorteil von DRBD und GlusterFS liegt jedoch darin, dass beide auf Standard-Hardware von Herstellern wie HP, IBM oder Dell betrieben werden können. Die Open-Source-Komponenten sind ausserdem optimal aufeinander abgestimmt und die Layer können flexibel ausgetauscht oder erweitert werden. Und: Die Offenheit der Projekte erhöht die Transparenz bei der allfälligen Fehlersuche und stellt die Unabhängigkeit von einem proprietären Anbieter sicher.
Das Open-Source-Modell
Die im Artikel erwähnten Open-Source-Projekte sind alle frei verfügbar und können unter Einhaltung der jeweiligen Open-Source-Lizenz verwendet und erweitert werden. In Community-Projekten werden neue Funktionen entwickelt und veröffentlicht. Die Releases erfolgen dabei meistens in kürzeren Zyklen als in vergleichbaren Enterprise-Lösungen.
Hinter den Community-Versionen stehen typischerweise keine Firmen, welche Support und weitere Services dazu anbieten. Der Einsatz einer Community-Version empfiehlt sich höchstens für Administratoren mit spezifischem Wissen zu den einzelnen Projekten. Die gesamte Open-Source-Infrastruktur kann nämlich über Subscriptions auch als Enterprise-Lösung bezogen werden. Damit erhalten die Anwender professionellen Support und werden laufend mit Sicherheits-Updates versorgt. Der Support für Pacemaker ist beispielsweise in der Linbit Cluster Stack Subscription enthalten. Und an Stelle von Ovirt kommt in Enterprise-Lösungen zum Beispiel die Red-Hat-Enterprise-Virtualisierung (RHEV) zum Einsatz.
Die Enterprise-Lösungen bieten längere Entwicklungs- und Supportzyklen und damit eine höhere Stabilität. Zudem erhalten die Administratoren gegenüber den Community-Versionen eine bessere grafische Unterstützung bei der Verwaltung der Systeme. Über die Einnahmen aus den Subscriptions werden grösstenteils die Entwicklungen in den Community-Projekten finanziert.