Proxmox Cluster mit Ceph korrektes vorgehen bei Clusterausfall

DanielB.

New Member
Oct 22, 2021
4
0
1
56
Hallo zusammen,

wir testen gerade mit einer kleinen Umgebung den Proxmox Cluster (Version 7.0) inkl. Ceph (16.2) , da wir dies gerne produktiv einsetzen würden.

Folgenden Ist-Ausgangszustand haben wir.

Cluster aus 3 Knoten im HA Verbund inkl. Ceph Installation. Läuft soweit alles einwandfrei.

Im ersten Test haben wir aus dem 3 Knoten Cluster eine defekte Maschine simuliert.
Wir haben dann diese defekte Maschine durch einen neuen Knoten ersetzt. Das haben wir soweit hin bekommen, dass der Cluster danach stabil lief und auch Ceph laut Übersichtsseite keine Fehler hatte.

Im nächsten Schritt haben wir versucht einen Ausfall von 2 Nodes zu simulieren und zwar Ausfall in dem Sinne, dass die Maschinen ersetzt werden müssen.

Wir sind so vorgegangen wie im ersten Szenario, mit dem einzigen Unterschied, dass die Ceph Installation auf einer neuen Maschine nicht sauber durch gelaufen ist. Er hat die Pakete heruntergeladen hat aber die Verbindung verloren, bevor wir zur Konfiguration gehen konnten. Ceph Storage meldet auf allen Nodes "unknown" und ein Testcontainer fährt nicht mehr hoch, da dieser auf den Ceph Storage liegt.

Bedeutet wir haben nun in unserer Simulation 2 defekte Maschinen aus der eine schon aus dem Cluster genommen wurde + 1 Maschine (Nr.5) mit halbgarren Ceph Zustand.

Insgesamt befinden sich 3 Nodes im Cluster. Wo kein Container mehr gestartet werden kann.

Wir haben dann versucht auf der Maschine Nr.5 Ceph zu deinstallieren mit dem Befehl pveceph purge. Hier gibt es die Ausgabe:
"Error gathering ceph info, already purged? Message: rados_conf_read_file failed - Invalid argument
Error gathering ceph info, already purged? Message: rados_conf_read_file failed - Invalid argument
Foreign MON address in ceph.conf. Keeping config & keyrings"

Die Meldung: "rados_conf_read_file failed - Invalid argument" bekommen wir auch wenn wir in der Proxmox GUI die Ceph Oberfläche aufrufen.

Unsere Fragen wären nun:

1. Wie bekommen wir den Cluster wieder ans laufen ohne alles neu zu installieren?
2. Wie bekommt man eine Ceph Installation die nicht sauber durch gelaufen ist repariert (reinstall) bzw. deinstalliert?
3. Gibt es eine Disaster Recovery Anleitung für eine Proxmox Cluster Installation inkl. Ceph und HA Gruppen in der das korrekte vorgehen beschrieben wird?

Bislang haben wir nur immer einzelne Dokumentationsschnipsel gefunden z.b. Adding oder Remove Node aber kein Best Practice.

Danke für die Hilfe.
 
Hi, ich kann dir nicht alle Fragen beantworten, aber wenn du bei einem 3 Knoten Cluster, 2 Knoten verlierst hast du auf jeden Fall Downtime.
Die Daten sollten zwar alle noch 1x vorhanden sein, aber für Produktiv eignet sich das Szenario nicht wirklich.
Einen 3 Knoten Cluster bildet man, damit man beim verlust eines Knotens normal weiterarbeiten kann. Wenn du den Verlust von 2 Knoten gleichzeitig verkraften möchtest, bräuchtest du mind. 5 Knoten. (oder 4 + Quorum)

Das man nach dem Ausfall die Knoten komplett neu installieren muss, ist auch etwas Praxisfremd, ca. 98% aller Ausfälle kommen vom Strom oder eine Komponente wie z.B. CPU oder RAM geht defekt. Komplett neu installieren musste ich noch nie (egal welcher Hypervisor), da wenn du ein Raid1 für dein OS hast, überlebt in der Regel immer mind. 1 Platte.

Aus der Praxis wäre ein Szenario: der Knoten kommt nach dem Ausfall zurück und hat nur leere Disks oder neue Hardware mit eventuell geänderten IDs oder MAC Addresse.

Du kannst natürlich so harte Szenarien Testen und auch gern Dokumentieren, aber in der Praxis wird das vermutlich nie Anwendung finden.

Gruß Falk
 
Dass man in dem Fall Downtime hat ist uns klar.

Unsere produktive Umgebung besteht aus 3 Maschinen die aktuell alle am gleichen Ort sind. (Später wird sich dass dann auch mal ändern.)

Im ersten Schritt wollen wir jedoch erst einmal die 3 Maschinen in einen Cluster mit Ceph integrieren bzw. damit haben wir angefangen. Läuft auch.

Wir testen nur in einer separaten Umgebung halt was in den Worst Case Szenarien passiert und wie man es behebt.

Worst Case wäre u.a. 2 der 3 Maschinen gehen kaputt.

Wir versuchen also das Cluster so gesehen dann mit 2 neuen Maschinen wieder ans laufen zu bekommen.

Sowas sollte doch eigentlich möglich sein oder? Wie gesagt wir hangeln uns dadurch. Schön wäre ein Best Practice wie man korrekt vor geht wenn ein Cluster einen oder mehre defekte Server hat und diese ersetzt werden müssen und ein Best Practive wie man Ceph reinstallieren kann.
 
Last edited:
Worst Case wäre u.a. 2 der 3 Maschinen gehen kaputt.
2 von 3 Maschinen zeitgleich defekt - also technisch defekt - ist unwahrscheinlich.
Was eher passiert: Du hast eine Node zu Wartungszwecken / Updates offline und evtl. dadurch in keinem einsatzfähigen Zustand und während dieser Wartungsarbeiten fällt plötzlich eine Node wegen technischen Defekts aus.
Kommt natürlich aufs Gleiche raus, 2 von 3 Maschinen offline, wollte das bloß angesprochen haben.

Die 3. Node hat ebenfalls eine Kopie der Daten, da sollte also erstmal nichts verloren sein. Die 3. Node wird aber readonly laufen, d.h. Ceph wird Writes ablehnen.
Ich habe das noch nicht durchgespielt, aber meine Aufassung wäre, dass du einfach einen neuen PVE+Ceph Host installierst und in das Cluster joinst. Mon, Mgr, mit anlegen auf den neuen Nodes und dann sollte es sich von selbst richten.
Die OSDs wieder einrichten und Ceph rebalancen lassen auf alle 3 Nodes, danach sollte der Betrieb von VMs wieder problemlos möglich sein.

Als Vorsichtsmaßnahme würde ich aber trotzdem erstmal ein Backup machen von allen VMs - sollte trotz readonly ja möglich sein.
Bloß falls es doch, entgegen aller Erwartungen, das Ceph Cluster zerreißt beim Reparaturversuch.
In dem Fall kannst du ja dann das Cluster bedenkenlos platt machen und alle 3 Nodes neu ausrollen um später die VMs aus den Backups zu restoren.

Konnte das aber so leider noch nicht testen.
 

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!