Was genau ist ein hoch verfügbares System?
Das SunPlex-System definiert Hochverfügbarkeit (HA) als die Fähigkeit eines Clusters, eine Anwendung auch dann aktiv und am Laufen zu halten, wenn ein Fehler aufgetreten ist, der normalerweise die Verfügbarkeit eines Serversystems unterbricht.
Mit welchem Prozess sorgt der Cluster für Hochverfügbarkeit?
Mit einem Prozess, der als Failover bezeichnet wird, sorgt das Cluster-Framework für eine hoch verfügbare Umgebung. Ein Failover ist eine Reihe von Schritten, mit denen der Cluster Datendienstressourcen von einem versagenden Knoten auf einen anderen funktionsfähigen Knoten im Cluster migriert.
Was ist der Unterschied zwischen einem Failover- und einem Scalable-Dienst?
Es gibt zwei Typen von hoch verfügbaren Datendiensten, Failover und Scalable.
Ein Failover-Datendienst führt eine Anwendung jeweils nur auf einem Primärknoten im Cluster aus. Andere Knoten können andere Anwendungen ausführen, aber jede Anwendung wird nur einmal auf einem einzigen Knoten ausgeführt. Wenn ein Primärknoten ausfällt, wird die auf dem ausgefallenen Knoten ausgeführte Anwendung mit einem Failover auf einen anderen Knoten verschoben und dort weiter ausgeführt.
Ein Scalable-Dienst verteilt eine Anwendung auf mehrere Knoten, um einen einzigen logischen Dienst zu erstellen. Scalable-Dienste setzen die Anzahl der Knoten und Prozessoren auf dem ganzen Cluster, auf dem sie durchgeführt werden, wirksam ein.
Für jede Anwendung hostet ein Knoten die reale Schnittstelle zum Cluster. Dieser Knoten wird als globaler Schnittstellenknoten (GIF-Knoten) bezeichnet. Im Cluster können mehrere GIF-Knoten vorhanden sein. Jeder GIF-Knoten hostet eine oder mehr logische Schnittstellen, die von Scalable-Diensten genutzt werden können. Diese logischen Schnittstellen werden als globale Schnittstellen bezeichnet. Ein GIF-Knoten hostet eine globale Schnittstelle für alle Anforderungen einer bestimmten Anwendung und sendet sie an mehrere Knoten, auf denen der Anwendungsserver läuft. Wenn der GIF-Knoten ausfällt, wird die globale Schnittstelle auf einen auch weiterhin laufenden Knoten umgeleitet.
Wenn einer der Knoten, auf denen die Anwendung ausgeführt wird, ausfällt, wird die Anwendung mit einem geringen Leistungsverlust auf anderen Knoten weiter ausgeführt, bis der ausgefallene Knoten wieder zum Cluster hinzukommt.