Sun Cluster Überblick für das Betriebssystem Solaris

Quorum-Geräte

Ein Quorum-Gerät ist eine Platte, die von zwei oder mehr Knoten gemeinsam genutzt wird und Stimmen abgibt. Die Stimmen dienen der Feststellung des Quorums für den Betrieb des Clusters. Der Cluster kann nur arbeiten, wenn ein Quorum von Stimmen verfügbar ist. Das Quorum-Gerät wird verwendet, wenn ein Cluster in separate Knotensätze partitioniert wird, um festzulegen, welcher Knotensatz den neuen Cluster bildet.

Sowohl Cluster-Knoten als auch Quorum-Geräte geben eine Stimme für das Quorum ab. Standardmäßig erhalten Cluster-Knoten eine Stimmenanzahl von Eins für das Quorum, sobald sie booten und Cluster-Mitglieder werden. Knoten können eine Stimmenanzahl von Null haben, wenn der Knoten gerade installiert wird oder wenn ein Verwalter den Knoten in Wartungszustand versetzt hat.

Quorum-Geräte erhalten eine Stimmenanzahl für das Quorum, die sich nach der Anzahl von Knotenverbindungen mit dem Gerät richtet. Wenn ein Quorum-Gerät konfiguriert wird, erhält es eine maximale Stimmenanzahl von N-1, wobei N der Anzahl der mit dem Quorum-Gerät verbundenen Stimmen entspricht. Ein Quorum-Gerät, das zum Beispiel mit zwei Knoten mit einer Stimmenanzahl von nicht Null verbunden ist, hat einen Quorum-Zählwert von Eins (Zwei minus Eins).

Datenintegrität

Das Sun Cluster-System versucht, Datenbeschädigung zu verhindern und Datenintegrität sicherzustellen. Da Cluster-Knoten Daten und Ressourcen gemeinsam nutzen, darf ein Cluster nie in gleichzeitig aktive, getrennte Partitionen unterteilt werden. Der CMM stellt sicher, dass jeweils nur ein Cluster in Betrieb ist.

Zwei Arten von Problemen können aufgrund der Partitionierung von Clustern auftreten: Split Brain und Amnesie. Zum Split Brain kommt es, wenn der Cluster-Interconnect zwischen den Knoten verloren geht und der Cluster in Teil-Cluster zerfällt, die sich jeweils als die einzige Partition wahrnehmen. Ein Teil-Cluster, der keine weiteren Teil-Cluster wahrnimmt, kann Konflikte bei gemeinsam genutzten Ressourcen verursachen, wie zum Beispiel duplizierte Netzwerkadressen und Datenbeschädigung.

Amnesie tritt ein, wenn alle Knoten den Cluster in gestaffelten Gruppen verlassen. Beispiel: Ein Cluster hat zwei Knoten, A und B. Wenn A ausfällt, werden die Konfigurationsdaten im CCR nur auf Knoten B, nicht aber auf Knoten A aktualisiert. Wenn später Knoten B ausfällt, wird Knoten A neu gestartet und mit alten CCR-Inhalten ausgeführt. Dieser Zustand wird als Amnesie bezeichnet und kann dazu führen, dass ein Cluster mit veralteten Konfigurationsinformationen läuft.

Split Brain und Amnesie können vermieden werden, indem jeder Knoten eine Stimme erhält und eine Stimmenmehrzahl für den Betrieb eines Clusters vorgeschrieben wird. Eine Partition mit der Mehrheit der Stimmen hat ein Quorum und wird für den Betrieb aktiviert. Dieser Mechanismus der Stimmenmehrzahl funktioniert gut, wenn ein Cluster über mehr als zwei Knoten verfügt. In einem Zwei-Knoten-Cluster ist zwei eine Mehrheit. Wenn ein solcher Cluster in Partitionen zerfällt, sorgt eine externe Stimme für ein Quorum bei einer der Partitionen. Diese externe Stimme wird von einem Quorum-Gerät beigesteuert. Ein Quorum-Gerät kann jede Platte sein, die von beiden Knoten gemeinsam genutzt wird.

Tabelle 2–1 beschreibt, wie die Sun Cluster-Software Quorum zur Vermeidung von Split-Brain und Amnesie verwendet.

Tabelle 2–1 Cluster-Quorum und Split Brain- und Amnesie-Probleme

Partitionstyp 

Quorum-Lösung 

Split Brain 

Ermöglicht nur der Partition (Teil-Cluster) mit Stimmenmehrzahl die Ausführung als Cluster. Nur eine Partition mit einer solchen Mehrheit ist möglich. Nachdem ein Knoten den Kampf um das Quorum verloren hat, gerät er in Panik.  

Amnesie 

Stellt sicher, dass beim Booten eines Clusters mindestens ein Knoten zum Cluster gehört, der Mitglied der letzten Cluster-Mitgliedschaft war (und somit über die neuesten Konfigurationsdaten verfügt).  

Fehlerschutz

Ein wichtiges Thema bei Clustern ist ein Fehler, der zur Partitionierung des Clusters führt (als Split Brain bezeichnet). In diesem Fall können nicht mehr alle Knoten miteinander kommunizieren, so dass einzelne Knoten oder Knoten-Teilsätze ggf. versuchen, Einzel- oder Untermengen-Cluster zu bilden. Jede Untermenge oder Partition kann davon “überzeugt“ sein, alleinigen Zugriff auf die Multihostplatten und die Eigentümerschaft zu haben. Wenn mehrere Knoten versuchen, auf die Platten zu schreiben, kann dies zu Datenbeschädigung führen.

Der Fehlerschutz schränkt den Knotenzugriff auf die Multihostplatten ein, indem der Zugriff auf die Platten verhindert wird. Wenn ein Knoten den Cluster verlässt (aufgrund eines Ausfalls oder Partitionierung), wird mit dem Fehlerschutz sichergestellt, dass der Knoten keinen Zugriff mehr auf die Platte hat. Nur aktuelle Mitgliederknoten haben Zugriff auf die Platten. Das sichert die Datenintegrität.

Das Sun Cluster-System verwendet SCSI-Plattenreservierungen zur Implementierung des Fehlerschutzes. Mit den SCSI-Reservierungen werden die Multihostplatten vor den ausgefallenen Knoten “geschützt” und der Zugriff auf diese Platten wird verhindert.

Wenn ein Cluster-Mitglied erkennt, dass ein anderer Knoten nicht mehr über den Cluster-Interconnect kommuniziert, leitet es ein Fehlerschutzverfahren ein, um den ausgefallenen Knoten am Zugriff auf die gemeinsam genutzten Platten zu hindern. Wenn dieser Fehlerschutz eintritt, gerät der geschützte Knoten in Panik, und eine Meldung zum “Reservierungskonflikt” wird auf seiner Konsole angezeigt.

Failfast-Mechanismus für den Fehlerschutz

Der Failfast-Mechanismus versetzt einen fehlerhaften Knoten in Panik, hindert ihn aber nicht an einem Neustart. Anschließend kann der Knoten neu booten und versuchen, wieder dem Cluster beizutreten.

Wenn ein Knoten die Konnektivität mit anderen Knoten im Cluster verliert und nicht zu einer Partition gehört, die ein Quorum erzielen kann, wird er erzwungenermaßen von einem anderen Knoten aus dem Cluster entfernt. Jeder Knoten, der Teil der Partition ist, die ein Quorum erzielen kann, belegt die gemeinsam genutzten Platten mit Reservierungen. Der Knoten ohne Quorum gerät dann infolge des Failfast-Mechanismus in Panik.