Ceph Crash recovery

Toranaga

Well-Known Member
Jun 17, 2017
60
9
48
56
Hallo zusammen,

ich bin gerade am Testen Proxmox 4.4 HA mit Ceph Hammer. Das ganze im 3 Node Cluster. Derzeit bin ich bei Crash Tests. Da ich kein Ceph-Forum gefunden habe, probiere ich es mal hier.

Die Einstellungen des RBD sind 3/2 bzw. 3/1.
Dabei fiel auf: Wenn 2 der 3 Nodes down sind, reagiert Ceph quasi überhaupt nicht mehr. Es hagelt bei "ceph status" massig Fehlermeldungen über nicht erreichbare Nodes. Es wird eigentlich kein Befehl wirklich angenommen. Das ist bei der Einstellung 3/2 nicht weiter überraschend, aber bei 3/1 hat es mich doch etwas verwundert.

Ein Versuch die zwei fehlenden Nodes neu zu installieren und dem Cluster und Ceph wieder hinzuzufügen hat nicht funktioniert. Proxmox hatte der Cluster wieder gefunden, aber bei Ceph kam ich nicht weiter. Schon die MON Erstellung funktioniert nicht fehlerfrei.

Es stellt sich also die Frage wie man bei einem GAU das 2 von 3 Nodes weg sind, den letzten Node soweit online bringt, dass man im Cluster die fehlenden Nodes durch neue Installationen der alten Maschinen, mit oder ohne Übernahme des Inhaltes der OSD, wiederherstellt.

Hat das schon mal jemand gemacht? Gibt es irgendwo eine Anleitung für solch einen Fall?

P.S.
Ja CEPH aka Multiserver-RAID1 in diesem Fall ist kein Backup. Das läuft noch zusätzlich. Aber warum alles neu aufbauen und zurückspielen, wenn es evtl. doch mit einer Reparatur geht. Das soll halt mal probiert werden.

Vielen Dank im Voraus.
Gruß
Andreas
 
bei Ceph muss die mehrheit (Quorum) der monitore online und miteinander verbunden sein. bei drei monitoren heißt das maximal ein monitor darf ausfallen. wenn mehr als ein monitor dauerhaft weg sind, müssen diese erst händisch aus der monmap entfernt werden, dann der verbleibende monitor gestartet werden (der dann alleine die mehrheit bildet ;)). details gibts in der ceph doku - http://docs.ceph.com/docs/master/ra...p#removing-monitors-from-an-unhealthy-cluster

Hammer ist im übrigen schon sehr veraltet - unter 4.4 ist Jewel auf jeden fall empfehlenswert.
 
Hallo Fabian,

perfekt. Das hat geholfen CEPH geradezubiegen. Irgendwie hatte ich diese Seite zwar gesehen, aber den entscheidenden Punkt überlesen. Die Doku ist halt riesig.

Ich gehe mal davon aus, das jetzt der ganz normale Weg wie bei der Erstinstallation kommt um die anderen Nodes wieder an den Cluster anzuschliessen. Kann man da die eigentlichen OSD auf den kaputten Nodes wiederbeleben oder muss ich sie wirklich mit "ceph-disk zap" leer machen und neu replizieren lassen?

Und muss ich die Crushmap evtl. noch anpassen?
Bisher hatte ich nur jeweils eine Platte im Server. Da blieb CEPH keine Möglichkeit woanders als auf den anderen zwei Nodes die Kopie zu speichern.

Wenn ich nun jeweils 4 OSD auf einem Node habe, muss ich die default Crushmap anpassen oder ist der Default die Replikation auf andere Nodes? Kann ich testen, aber wenn es jemand schon weiß, spart es Arbeit.

Dank im Voraus.
Gruß
Andreas
 
Hallo Fabian,

perfekt. Das hat geholfen CEPH geradezubiegen. Irgendwie hatte ich diese Seite zwar gesehen, aber den entscheidenden Punkt überlesen. Die Doku ist halt riesig.

Ich gehe mal davon aus, das jetzt der ganz normale Weg wie bei der Erstinstallation kommt um die anderen Nodes wieder an den Cluster anzuschliessen. Kann man da die eigentlichen OSD auf den kaputten Nodes wiederbeleben oder muss ich sie wirklich mit "ceph-disk zap" leer machen und neu replizieren lassen?

Und muss ich die Crushmap evtl. noch anpassen?
Bisher hatte ich nur jeweils eine Platte im Server. Da blieb CEPH keine Möglichkeit woanders als auf den anderen zwei Nodes die Kopie zu speichern.

Wenn ich nun jeweils 4 OSD auf einem Node habe, muss ich die default Crushmap anpassen oder ist der Default die Replikation auf andere Nodes? Kann ich testen, aber wenn es jemand schon weiß, spart es Arbeit.

Dank im Voraus.
Gruß
Andreas
Hi Andreas,
die crushmap brauchst Du für "normale" Sachen nicht anpassen. Normalerweise sollte (und das möchtest Du auch) als failure domain node eingestellt sein. Das heisst deine replicas befinden sich auf anderen Nodes, so dass eine Node ausfallen kann und alles funktioniert weiter (sollte).
Wäre die failure domain auf osd gestellt, wären mehrere replicas auf einen host möglich (bei mehreren OSDs pro host) und bei einem node-reboot blockt das komplette ceph-system.

Udo
 

About

The Proxmox community has been around for many years and offers help and support for Proxmox VE, Proxmox Backup Server, and Proxmox Mail Gateway.
We think our community is one of the best thanks to people like you!

Get your subscription!

The Proxmox team works very hard to make sure you are running the best software and getting stable updates and security enhancements, as well as quick enterprise support. Tens of thousands of happy customers have a Proxmox subscription. Get yours easily in our online shop.

Buy now!