Was ist Split-Brain?
Wie in der von RedHat bereitgestellten offiziellen Dokumentation zur Verwaltung von Split-Brain erwähnt , ist Split-Brain ein Zustand, in dem Daten- oder Verfügbarkeitsinkonsistenzen aus der Pflege von zwei separaten Datensätzen mit überlappendem Umfang resultieren, entweder aufgrund von Servern in einem Netzwerkdesign. oder eine Fehlerbedingung, die darauf beruht, dass Server ihre Daten nicht miteinander kommunizieren und synchronisieren. Dieser Begriff gilt für die Replikationskonfiguration.
Beachten Sie, dass es sich um eine Fehlerbedingung handelt, die darauf beruht, dass Server ihre Daten nicht miteinander kommunizieren und synchronisieren. Dies bedeutet jedoch, dass Ihre Knoten möglicherweise die Verbindung verlieren. Der Peer befindet sich möglicherweise noch im Cluster und ist verbunden.
Split-Brain-Typen:
Wir haben drei verschiedene Arten von Split-Brain, und soweit ich sehen kann, ist Ihr Eintrag Split-Brain. Um drei Arten von Split-Brain zu erklären:
Daten Split-Brain: Der Inhalt der Datei unter Split-Brain ist in verschiedenen Replikatpaaren unterschiedlich und eine automatische Heilung ist nicht möglich.
Metadaten split-brain : , Die Metadaten der Dateien (z. B. benutzerdefiniertes erweitertes Attribut) sind unterschiedlich und eine automatische Heilung ist nicht möglich.
Eintrag split-brain: Dies passiert, wenn eine Datei auf jedem Replikatpaar unterschiedliche gfids hat.
Was ist GFID?
Die interne Dateikennung (GFID) von GlusterFS ist eine UUID, die für jede Datei im gesamten Cluster eindeutig ist. Dies ist analog zur Inode-Nummer in einem normalen Dateisystem. Die GFID einer Datei wird in ihrem xattr-Namen gespeichert trusted.gfid
. Um den Pfad von GFID zu finden, empfehle ich Ihnen dringend, diesen offiziellen Artikel von GlusterFS zu lesen .
Wie löse ich den Eintrag Split-Brain?
Es gibt mehrere Methoden, um das Auftreten von Split-Brain zu verhindern. Um dies zu beheben, müssen die entsprechenden gfid-link-Dateien entfernt werden. Die gfid-link-Dateien befinden sich im Verzeichnis .glusterfs im Verzeichnis der obersten Ebene des Bausteins. Beachten Sie übrigens, dass Sie vor dem Löschen der gfid-Links sicherstellen müssen, dass keine festen Links zu den auf diesem Baustein vorhandenen Dateien vorhanden sind. Wenn Hardlinks vorhanden sind, müssen Sie diese ebenfalls löschen. Anschließend können Sie den Selbstheilungsprozess verwenden, indem Sie die folgenden Befehle ausführen.
In der Zwischenzeit können Sie Folgendes verwenden, um die Liste der Dateien auf einem Volume anzuzeigen, die sich in einem Split-Brain-Zustand befinden:
# gluster volume heal VOLNAME info split-brain
Beachten Sie außerdem, dass bei replizierten Volumes, wenn ein Baustein offline geschaltet und wieder online geschaltet wird, eine Selbstheilung erforderlich ist, um alle Replikate erneut zu synchronisieren.
So überprüfen Sie den Heilungsstatus von Volumes und Dateien:
# gluster volume heal VOLNAME info
Da Sie Version 3.5 verwenden, haben Sie keine automatische Heilung. Nachdem Sie die zuvor genannten Schritte ausgeführt haben, müssen Sie die Selbstheilung auslösen. Um dies zu tun:
Nur für die Dateien, die geheilt werden müssen:
# gluster volume heal VOLNAME
Auf allen Dateien:
# gluster volume heal VOLNAME full
Ich hoffe, dies wird Ihnen bei der Behebung Ihres Problems helfen. Bitte lesen Sie die offiziellen Dokumente für weitere Informationen. Prost.