Definition

Failover Cluster

In der Datenverarbeitung bezeichnet der Begriff Failover-Cluster eine Gruppe unabhängiger Server, die zusammenarbeiten, um eine hohe Verfügbarkeit von Anwendungen und Diensten zu gewährleisten. Wenn einer der Server ausfällt, übernimmt ein anderer Knoten des Clusters dessen Arbeitslast mit geringer oder ohne Ausfallzeit. Dieser Vorgang wird als Failover bezeichnet.

Was ist ein Failover Cluster?

In einem Failover-Cluster verbessern die geclusterten Server gemeinsam die Verfügbarkeit und Skalierbarkeit von Anwendungen und Diensten. Die Server arbeiten zusammen, um durch den Failover-Prozess entweder eine kontinuierliche Verfügbarkeit oder zumindest eine hohe Verfügbarkeit (HA) zu gewährleisten. Failover-Cluster bestehen entweder aus physischen Servern oder virtuellen Maschinen (VMs).

Jeder Server wird als Knoten bezeichnet und ist über physische Kabel und Software mit anderen Servern im Cluster verbunden. Ein Failover-Cluster besteht aus mindestens zwei Knoten, um Daten zu übertragen, sowie aus Software zur Verarbeitung der Daten über die Kabel. Darüber hinaus verwendet ein Cluster eine oder mehrere Technologien für Lastausgleich, Speicher, Parallelverarbeitung und andere Funktionen.

Die Anwendungen und Dienste in einem Failover-Cluster werden manchmal als Cluster-Rollen bezeichnet. Cluster halten diese Rollen betriebsbereit, wenn ein Server ausfällt. Gleichzeitig überwacht das System jede Rolle proaktiv, um sicherzustellen, dass sie ordnungsgemäß funktioniert. Wenn dies nicht der Fall ist, wird sie möglicherweise neu gestartet oder die Rolle auf einen anderen Knoten verschoben.

Wofür benötigt man Failover-Cluster?

Serverausfälle verursachen Anwendungsausfälle, was wiederum die Benutzererfahrung gefährdet. Failover-Cluster bieten kontinuierliche Verfügbarkeit oder Hochverfügbarkeit und ermöglichen es den Benutzern, die von ihnen benötigten Anwendungen und Dienste weiterhin zu nutzen, selbst wenn ein Server ausfällt. Bei Hochverfügbarkeits-Clustern kommt es manchmal während des Failover-Prozesses zu einer kurzen Serviceunterbrechung. Das System erholt sich jedoch in der Regel schnell und mit geringem oder gar keinem Datenverlust und minimaler Ausfallzeit.

Failover-Cluster spielen eine wichtige Rolle bei der Sicherstellung der ständigen Verfügbarkeit von geschäftskritischen Anwendungen und Systemen wie Online-Transaktionsverarbeitung (OLTP), die eine sehr hohe – nahezu 100-prozentige – Verfügbarkeit erfordern. Datenbankreplikation und Disaster Recovery (DR) erfordern ebenfalls Failover-Cluster. Diese Cluster bieten eine geografische Replikation, so dass bei einem Ausfall eines Servers an einem Standort die Daten weiterhin auf Failover-Servern an anderen Standorten verfügbar sind.

Der Informationsfluss zwischen Endbenutzern und Hochverfügbarkeits-Servern
Abbildung 1: Failover-Cluster sind eine Gruppe unabhängiger Server, die zusammenarbeiten, um eine hohe Verfügbarkeit von Anwendungen und Diensten zu gewährleisten.

Wie Failover-Cluster funktionieren

In einem Hochverfügbarkeits-Failover-Cluster teilen sich Gruppen von unabhängigen Servern Daten und Ressourcen, einschließlich Speicher. Zu jedem Zeitpunkt ist mindestens ein Knoten aktiv und mindestens ein Knoten passiv. Diese Cluster verfügen über eine Überwachungsverbindung, die es jedem Server ermöglicht, den Zustand der anderen Server zu überprüfen. Fällt in einem Cluster mit zwei Knoten (der einfachsten möglichen Konfiguration) ein Knoten aus, erkennt der andere Knoten den Ausfall über die Überwachungsverbindung und konfiguriert sich selbst als aktiven Knoten. Größere Konfigurationen verwenden in der Regel dedizierte Server, die feststellen, ob ein Knoten ausfällt und dann einen anderen Knoten anweisen, die Last zu übernehmen und am Failover-Prozess teilzunehmen.

In hochverfügbaren Failover-Clustern mit VMs werden die VMs zusammen mit den physischen Servern, auf denen sie sich befinden, in einem Cluster zusammengefasst. Bei einem Ausfall werden die VMs auf dem ausgefallenen Host auf alternativen Hosts neu gestartet.

In einem Continuous-Availability-Failover-Cluster – auch als fehlertolerantes Cluster bezeichnet – teilen sich mehrere Systeme eine Kopie des Betriebssystems (OS) eines Computers. Somit werden die von einem System ausgegebenen Befehle gleichzeitig auch auf den anderen Systemen ausgeführt. Der Cluster erfordert eine ständig verfügbare und nahezu exakte Kopie eines Rechners, auf dem der Dienst läuft (physisch oder virtuell). Dieses Redundanzmodell wird als 2N bezeichnet. Es erkennt automatisch Ausfälle von Festplatten, Netzteilen, Netzwerkkomponenten und CPUs. Wenn der Cluster einen Fehler feststellt, nimmt eine Sicherungskomponente – oder ein Verfahren – sofort und ohne Dienstunterbrechung dessen Platz ein.

Physische Server versus Virtuelle Server
Abbildung 2: Hochverfügbare Failover-Cluster mit virtuellen Maschinen, die zusammen mit den physischen Servern, auf denen sie sich befinden, zu einem Cluster zusammengefasst werden.

Hochverfügbarkeits-Failover-Cluster versus Continuous-Availability-Failover-Cluster

Hochverfügbarkeitscluster streben eine Verfügbarkeit von 99,999 Prozent an (fünf 9s Verfügbarkeit). Diese Cluster sind im Allgemeinen für die meisten Anwendungen und Dienste ausreichend. Für Dienste oder Anwendungen, die eine 100-prozentige Verfügbarkeit erfordern, sind jedoch Failover-Cluster mit kontinuierlicher Verfügbarkeit erforderlich. Dazu gehören unternehmenskritische Anwendungen wie elektronischer Aktienhandel, ATM-Banking, Auftragsverwaltung, Zeiterfassungssysteme für Mitarbeiter und Reservierungssysteme. Viele Anwendungen in den Bereichen Fertigung, Logistik und E-Commerce erfordern ebenfalls kontinuierlich verfügbare Failover-Cluster.

Was bedeutet Hochverfügbarkeit?
Abbildung 3: Hochverfügbarkeitscluster versuchen, eine Verfügbarkeit von 99,999 Prozent (fünf 9s) zu erreichen, was als Prozentsatz der Netzwerkverfügbarkeit in buchstäblich quantifizierbare Stunden, Minuten und Sekunden der Ausfallzeit von Netzwerkdiensten übersetzt werden kann.

Arten von Failover-Clustern

Failover Clustering ist eine beliebte Funktion in Windows Server und Azure Stack HCI. Mit diesen Betriebssystemen erstellen Unternehmen hochverfügbaren oder kontinuierlich verfügbaren Dateifreigabespeicher für Anwendungen wie Microsoft SQL Server und Hyper-V VMs erstellen. Ein anderer Ansatz besteht darin, hochverfügbare geclusterte Rollen auf physischen Servern oder VMs zu erstellen, die auf Servern mit Hyper-V installiert sind.

Failover-Cluster in Windows bieten Cluster Shared Volume (CSV) Funktionalität. CSV bietet ein universelles, geclustertes Dateisystem, das über NTFS oder ReFS geschichtet ist. Mehrere Clusterknoten lassen sich von derselben LUN (Teil eines Laufwerks oder einer Sammlung von Laufwerken), die als NTFS-Volume bereitstellen, lesen oder darauf schreiben. CSVs bieten einen konsistenten verteilten Namensraum, der von Cluster-Rollen verwendet werden kann, um von allen Knoten aus auf gemeinsamen Speicher zuzugreifen, und vereinfachen die Verwaltung einer großen Anzahl von LUNs in einem Failover-Cluster.

Failover-Cluster sind auch in VMWare, SQL Server und Red Hat Enterprise Linux verfügbar. VMware bietet zahlreiche Virtualisierungs-Tools für VM-Failover-Cluster. So repliziert beispielsweise vSphere vMotion eine VMware-VM und ihr Netzwerk, um eine kontinuierliche Verfügbarkeit zu gewährleisten. VMware vSphere bündelt VMs und ihre Hosts in einem Cluster für automatisches Failover und hohe Verfügbarkeit.

SQL Server 2017 verfügt über eine hochverfügbare Failover-Clustering-Lösung namens Always On, die SQL Server-Komponenten als Cluster-Ressourcen registriert und ein automatisches Failover auf einen anderen Knoten ermöglicht, wenn ein Knoten ausfällt. Red Hat Enterprise Linux bietet ebenfalls einen Failover-Cluster-Mechanismus, mit dem Benutzer hochverfügbare Failover-Cluster mit dem Red Hat Global File System (GFS/GFS2) erstellen.

Was ist Cluster-Affinität?

Affinität bezieht sich auf eine Regel, die ein Benutzer einrichten würde, um eine Beziehung zwischen zwei oder mehr Rollen herzustellen, um sie zusammenzuhalten. Zu diesen Rollen gehören VMs, Ressourcengruppen oder andere Entitäten. Anti-Affinität ist ebenfalls eine Regel, allerdings eine, die dazu dient, die angegebenen Rollen voneinander zu trennen.

Diese Regeln sind erforderlich, da ein Failover-Cluster oft viele Rollen enthält, die zwischen den Knoten verschoben und ausgeführt werden. Wenn jedoch bestimmte Rollen nicht auf demselben Knoten laufen sollen, müssen sie voneinander getrennt werden. Affinitäts- und Anti-Affinitätsregeln helfen dabei, Leistungsprobleme zu vermeiden, die auftreten, wenn Rollen, die auf demselben Knoten ausgeführt werden, mehr Ressourcen oder Speicher verwenden, als sie sollten.

Diese Definition wurde zuletzt im März 2023 aktualisiert

Erfahren Sie mehr über Disaster Recovery

ComputerWeekly.de
Close