CEPH Performance Probleme

BOSSJoe

Member
Aug 5, 2020
68
6
13
44
Hi zusammen,

ich habe mal wieder eine Frage an die Community... :)

Ich hab mir jetzt ja mein kleines Homelab aufgebaut und wollte als Speicherlösung auf CEPH setzen. Generell hat alles geklappt, nur sehe ich von der Performance extrem schlechte zahlen. Ich hab mal in einer Windows VM einen Crystal Disk Test ausgeführt und auf meinen SSDs welche ich als CEPH OSDs nutze bekomme ich nur ein fünftel der Performance als wenn ich die lokalen SAS Platten im ZFS RAID 1 nehme...

Aufgebaut ist alles wie hier beschrieben nach Methode 1 (Broadcast). Dazu nutze ich die Onboard 10GB Schnittstellen ohne einen Switch dazwischen.

https://pve.proxmox.com/wiki/Full_Mesh_Network_for_Ceph_Server#Method_2


Damit ich überhaupt mal sehe ob sich das was im Netzwerk tut, hab ich die Broadcast Konfig mal aufgelöst und je Server einen Port direkt an einen Switch gehängt. Dieser Port war mit der IP Adresse des CEPH Netzwerks konfiguriert. Allerdings hat da laut Switch überhaupt keine Kommunikation stattgefunden.

Kann mir jemand einen Tipp geben wo ich noch schauen könnte. Irgendwie hab ich das Gefühl das Netzwerk will noch nicht so richtig...

Vielen Dank

Joe
 
Hey Joe,

Für Ceph würde ich generell 2 Netzwerke empfehlen. Eines für den VM Access (public) und eines für das Backend wo die replication stat findet.

Ebenso ist die performance abhängig davon wie viel replicas man im ceph pool einstellt.
 
Ist im Full Mesh ein Subnet konfiguriert, dass nur dort existiert oder gibt es andere NICs die eine IP im gleichen Subnet haben?
 
Hey Joe,

Für Ceph würde ich generell 2 Netzwerke empfehlen. Eines für den VM Access (public) und eines für das Backend wo die replication stat findet.

Ebenso ist die performance abhängig davon wie viel replicas man im ceph pool einstellt.
Hi,
vielen Dank für die schnelle Antwort.

Das hatte ich wohl missverständlich geschrieben. Je Server habe ich insgesamt 4 x 10GB Ports. Je einer geht auf einen entsprechenden Switch und dient als Zugriff auf das MGMT, als VM Netzwerk und für den Cluster. Ein weiterer Port ist leer und die beiden restlichen Ports dienen als FULL Mesh Netzwerk für CEPH...

Gruß

Joe

Edit: Gerade erst gesehen. Replicas habe ich drei. Oder meintest du Placement Groups. Die habe ich erst auf "Auto" gehabt und dann auf 32 fix eingestellt. Das ist der Wert den mir Proxmox selbst als "Optimal # of PGs" vorschlägt.
 
Last edited:
Ist im Full Mesh ein Subnet konfiguriert, dass nur dort existiert oder gibt es andere NICs die eine IP im gleichen Subnet haben?
Hi aaron,

Mein Clusternetzwerk hat das Subnetz 10.10.10.0/24 und für das Public Netzwerk von CEPH habe ich den IP Bereich 10.10.11.0/24 vergeben.

Allerdings bin ich mi zwar sicher das ich alles korrekt eingerichtet habe, aber ob der Netzwerktraffic auch korrekt läuft, kann ich ja leider nicht wirklich testen.
Ich hatte immer das Gefühl das anstelle des dedizierten CEPH Netzes das Cluster Netzwerk genutzt wird. Beweisen kann ich das aber nicht...

Gruß

Joe
 
Hi Joe,

Ich steige da noch nicht ganz durch... optimal wären 4 Netze:

Switch
1x PVE-MGTM/WebAccess

Peer to Peer
1x PVE HA -> Mesh 1GBit/s
1x Ceph Backend -> Mesh 10 GBit/s
1x Ceph Public -> Mesh 10 GBit/s

Wie viel OSD's sind den per node eingrichtet ? (2 Stück wenn ich das richtig herauslese?)

Gibt da ein tolles tool namens bmon (apt install bmon) damit lässt sich der traffic anzeigen über welche NIC er läuft.

Was kommt den bei CrystalDisk mark raus ? mehr als 1GB/s wird bei einem 10GBit/s Netzwerk nicht drinnen sein.
 
Hi Joe,

Ich steige da noch nicht ganz durch... optimal wären 4 Netze:

Switch
1x PVE-MGTM/WebAccess

Peer to Peer
1x PVE HA -> Mesh 1GBit/s
1x Ceph Backend -> Mesh 10 GBit/s
1x Ceph Public -> Mesh 10 GBit/s

Wie viel OSD's sind den per node eingrichtet ? (2 Stück wenn ich das richtig herauslese?)

Gibt da ein tolles tool namens bmon (apt install bmon) damit lässt sich der traffic anzeigen über welche NIC er läuft.

Was kommt den bei CrystalDisk mark raus ? mehr als 1GB/s wird bei einem 10GBit/s Netzwerk nicht drinnen sein.
Hi,

ja das mit den vier Netzen ist mir schon bewusst. Wobei mir deine Beschreibung nicht ganz eingehen will...

Also ich versuch das noch einmal mit meinen (dummen) Worten :)

1 GBit/s Netzwerk:
1 x PVE MGMT über WebGUI und Internetzugriff der PVE Hosts (über Switch)
1 x PVE Cluster Netzwerk, Heartbeat und Migration (Mesh)

10 GBit/s Netzwerk:
1 x CEPH Backend ohne Switch (Mesh)
1 x VM Netzwerk als Uplink für die VMs (über Switch)

Hab ich das jetzt richtig verstanden??? Wenn nicht verstehe ich die beiden Netzwerke für CEPH nicht (Backend und Public).

OSDs sind pro Server insgesamt 4 eingerichtet. zwei SSDs und zwei HDDs. Über eine entsprechende CRUSH Rule ist jeder Plattentyp in seinem eigenen Pool.

Das Tool "bmon" werde ich gleich mal testen. Vielleicht hilft mir das schon.

Crystal Disk Mark kommt beim seq. schreiben von 1 MiB Blöcken auf ca. 200 bis 250 MB/s wenn ich CEPH nutze. Erstelle ich mit den gleichen SSDs ein ZFS RAID 1 komme ich auf etwa 1200 MB/s. Muss aber gestehen das ich mit dem Tool noch nie gearbeitet habe. Ich wollte nur mal einen Vergleichswert haben...

Wenn ichs schaffe, mach ich mal einen Screenshot von beiden Ergebnissen.

Gruß

Joe
 
1 GBit/s Netzwerk:
1 x PVE MGMT über WebGUI und Internetzugriff der PVE Hosts (über Switch)
1 x PVE Cluster Netzwerk, Heartbeat und Migration (Mesh)

10 GBit/s Netzwerk:
1 x CEPH Backend ohne Switch (Mesh)
1 x VM Netzwerk als Uplink für die VMs (über Switch)
das 1x VM Netzwerk auch als Mesh ohne Switch dazwischen (Ceph Public), über diese Netz geht der Disk Traffic der VM

Das Ceph Backend ist nur für die replicas und das rebalance zuständig.

Da du nur 2 SSD OSD's per node hast könnte es helfen die replicas auf 1 / 2 herunterzustellen dan wird es schneller aber halt nicht mehr so sicher.
 
das 1x VM Netzwerk auch als Mesh ohne Switch dazwischen (Ceph Public), über diese Netz geht der Disk Traffic der VM

Das Ceph Backend ist nur für die replicas und das rebalance zuständig.

Da du nur 2 SSD OSD's per node hast könnte es helfen die replicas auf 1 / 2 herunterzustellen dan wird es schneller aber halt nicht mehr so sicher.
Hab jetzt mal Screenshots vom Crystal Disk Mark gemacht. Allerdings habe ich ein anderes Testprofil genommen.

Außerdem habe ich während dem CEPH Test auch einmal mit dem "bmon" Tool das bond für CEPH überwacht. Ich komme zu keiner Zeit über 500-600 MiB TX und RX kombiniert.

Sag mir wenn ich mich täusche, aber bei 10 GBit/s Ports sollte da mehr drin sein, oder?

Gruß

Joe
 

Attachments

  • CEPH.png
    CEPH.png
    39.6 KB · Views: 9
  • SSDs in ZFS RAID1.png
    SSDs in ZFS RAID1.png
    44.5 KB · Views: 8
Hi Joe,

da du nur 2 OSD's per node hast finde ich die Werte ganz in Ordnung. Wie gesgat bei 10GBits/s wirst du nie über 1000MB/s kommen. (Ethernet Overhead)

Bedenke das bei ZFS der RAM als Cache mitbenutzt wird.

Hast du dir schonmal den offiziellen benchmark angeschaut? Vielleicht hilft der als refernz weiter.

https://www.proxmox.com/en/downloads/item/proxmox-ve-ceph-benchmark

Ceph mit ZFS zu vergelichen ist ein wenig wie Äpfel und Bananen zu vergleichen.

ZFS ist local, Ceph distributed.

hoffe ich konnte helfen =)
 
Hi Joe,

da du nur 2 OSD's per node hast finde ich die Werte ganz in Ordnung. Wie gesgat bei 10GBits/s wirst du nie über 1000MB/s kommen. (Ethernet Overhead)

Bedenke das bei ZFS der RAM als Cache mitbenutzt wird.

Hast du dir schonmal den offiziellen benchmark angeschaut? Vielleicht hilft der als refernz weiter.

https://www.proxmox.com/en/downloads/item/proxmox-ve-ceph-benchmark

Ceph mit ZFS zu vergelichen ist ein wenig wie Äpfel und Bananen zu vergleichen.

ZFS ist local, Ceph distributed.

hoffe ich konnte helfen =)
Hi Tux,

vielen Dank für deine Antwort. Bitte entschuldige meine verspätete Reaktion, ich hab deine Antwort schlicht übersehen... :-(

Ich hab jetzt noch ein wenig herum probiert und die unterschiedlichsten Messwerte produziert. Auch den offiziellen Benchmark hab ich mir angesehen nur konnte ich nicht ganz nachvollziehen mit welchen Parametern hier gemessen wurde. Daher war ein Vergleich mit meinen Werten wieder etwas schwerer...

Auch das der Vergleich von CEPH mit einem lokalen ZFS etwas hinkt ist mir schon klar. Ich wollte eigentlich nur deutlich machen das die Platten wesentlich schneller könnten. Und weil mein Netzwerk ja nicht wirklich ausgelastet zu sein schien, dachte ich das da noch mehr gehen müsste...

Allerdings, und mit dieser Erkenntnis kann ich gut leben, sind das alles nur theoretische Zahlenwerte. Worauf es ankommt, ist das man mit dem System einigermaßen flott arbeiten kann und der Storage kein Nadelöhr darstellt. Ich glaube das kann ich mittlerweile als gegeben bestätigen. Von daher passt das auch alles für mich!

Vielen Dank noch einmal für die Hilfe

Gruß

Joe
 

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!