# Ceph Cluster in Proxmox: Architektur & Best Practices für HCI
TL;DR / Management Summary Während ZFS (Artikel 683) auf einen Host begrenzt ist, macht Ceph aus den lokalen Platten aller Cluster-Knoten einen einzigen, hochverfügbaren Pool. Es ist das Rückgrat der Hyper-Converged Infrastructure (HCI) in Proxmox. Ein Senior Admin nutzt Ceph, um VMs ohne zentrales SAN hochverfügbar zu halten. Stirbt ein Host, liegen die Daten der VM bereits auf den anderen Hosts vor. Ceph erfordert jedoch zwingend ein redundantes 10G/25G Netzwerk und SSDs für einen performanten Betrieb.
# 1. Das Ceph-Konzept (RADOS)
Intelligenz statt Redundanz-Controller.
Ceph basiert auf dem CRUSH-Algorithmus, der Daten mathematisch über alle verfügbaren Platten verteilt.
- Kein Controller: Jeder Knoten weiß, wo welcher Block liegt.
- Self-Healing: Fällt eine Disk aus, beginnt Ceph sofort, die fehlenden Kopien auf den verbleibenden Platten neu zu erstellen.
- Scale-out: Benötigen Sie mehr Platz? Fügen Sie einfach einen neuen Proxmox-Knoten mit Festplatten hinzu.
# 2. Die Kern-Komponenten
Das Ceph-Orchester.
- Monitor (MON): Die Buchhalter. Sie halten die “Map” des Clusters. (Immer ungerade Anzahl: 3, 5).
- OSD (Object Storage Dämon): Jede physische Festplatte ist ein OSD. Sie erledigen die Schreibarbeit.
- Manager (MGR): Liefert Statistiken und Dashboards.
- Metadata Server (MDS): Nur nötig, wenn Sie CephFS (gemeinsame Dateisysteme) nutzen wollen.
# 3. Deep Dive: Replication vs. Erasure Coding
Sicherheit vs. Kapazität.
- Replication (Standard): Jedes Objekt wird z.B. 3x gespeichert.
- Vorteil: Extrem schnell bei Ausfällen. 2 Knoten können gleichzeitig brennen.
- Nachteil: Sie zahlen für 3 TB, bekommen aber nur 1 TB Nutzkapazität.
- Erasure Coding (EC): Funktioniert wie RAID-5 über das Netzwerk.
- Vorteil: Mehr Nutzkapazität (z.B. 4+2 Profil).
- Nachteil: Hohe CPU-Last beim Schreiben. Nur für Archive empfohlen.
# 4. Day-2 Operations: Netzwerk-Separation
Die Lebensader.
Ceph unterscheidet zwischen zwei Netzen:
- Public Network: VM-Traffic und API-Calls.
- Cluster Network: Replikations-Traffic zwischen den Knoten.
- Wichtig: Der Replikations-Traffic kann hunderte Gbit/s erreichen. Trennen Sie dieses Netz zwingend physisch von Ihrem normalen LAN, um Jitter und Paketverluste zu vermeiden.
# 5. Troubleshooting & “War Stories”
Wenn der Cluster ‘langsamer’ wird.
# Top 3 Fehlerbilder
-
Symptom: VMs hängen beim Schreiben (High IO-Wait).
- Ursache: Ceph nutzt HDDs ohne SSD-Journal oder das Netzwerk ist mit 1 Gbit zu langsam.
- Lösung: Nutzen Sie zwingend All-Flash oder lagern Sie die
RocksDB/WALMetadaten auf dedizierte NVMe-SSDs aus.
-
Symptom: Cluster ist “Degraded” nach einem Reboot.
- Lösung: Normaler Zustand während des Rebuilds. Warten Sie, bis
ceph -swiederHEALTH_OKzeigt.
- Lösung: Normaler Zustand während des Rebuilds. Warten Sie, bis
-
Symptom: “Too many PGs” (Placement Groups).
- Lösung: Passen Sie die PG-Anzahl via PG-Autoscaler an den Pool-Füllstand an.
# “War Story”: Der “Reboot-Sturm”
Ein Admin betrieb Ceph über einen Switch, der kein LACP korrekt unterstützte. Eines Tages fiel ein Kabel aus. Das Ergebnis: Ceph versuchte, Terabytes an Daten über die verbleibende 1G Leitung zu schaufeln. Die Latenz stieg auf 5000ms. Alle VMs dachten, ihr Storage sei weg und gingen in den Error-State. Das Management-Netz war so blockiert, dass der Admin den Cluster nicht mehr fernsteuern konnte. Lehre: Ceph verzeiht keine Netzwerk-Fehler. Nutzen Sie redundante 10G+ Switche und testen Sie Link-Ausfälle, bevor Sie in Produktion gehen.
# 6. Monitoring & Reporting
Dashboard-Health.
# Ceph Status (GUI)
Prüfen Sie Datacenter -> [Node] -> Ceph -> Status.
- KPI:
Client Throughput. - KPI:
Recovery Throughput. Wenn dieser bei 0 steht, ist der Cluster stabil.
# 7. Fazit & Empfehlung
Ceph ist die Königsklasse des Speichers in Proxmox.
- Empfehlung: Nutzen Sie Ceph ab einer Clustergröße von 3-5 Knoten.
- Wichtig: Verwenden Sie für OSDs immer identische Plattengrößen. Die Performance des Clusters richtet sich immer nach der langsamsten Platte.
# Anhang: Cheatsheet (Ceph CLI)
| Aufgabe | Befehl |
|---|---|
| Status prüfen | ceph -s |
| Auslastung sehen | ceph df |
| OSD Liste | ceph osd tree |
| Fehler loggen | ceph -w |