Ceph Full Mesh HCI Performance Probleme

LOOE_Sebastian

New Member
Feb 19, 2025
5
5
3
Hi!

Ich hoffe, ich finde hier Hilfe bei meinen Performance Problemen mit Ceph auf meinem 3 Node Mesh Cluster.
Hardware:
DL380 Gen10
2x Nic: HPE Eth 10/25Gb 2p 640FLR-SFP28 Adptr - Insgesamt 4 Ports (Mellanox Connetx 4)
2x 25 Gb für das Mesh Setup - direkt verbunden.
2x 10Gb für Cluster Netzwerk / Clients /...
Storage: UCSC-NVMEHW-H3200 - zur Zeit 2 Disken pro Server aktiv

Mesh Setup habe ich laut diesem Dokument (Routed Setup Simple) vorgenommen:
https://pve.proxmox.com/wiki/Full_Mesh_Network_for_Ceph_Server

Die direkt verbundenen Netzwerkkarten / Ports lassen sich problemlos pingen.

Nun zu meinem Problem:
Wenn ich eine einzelne Disk mit lvm teste schafft diese ca. 1GB/sec Schreibleistung. Sowohl in einer VM als auch über den Proxmox-Host. Lege ich diese VM auf ein Ceph Volume, dann bricht die Schreibleistung auf 200-300mb/sec ein.
Ein
Bash:
rados bench -p test 60 write -t 16 --object_size=4MB
bestätigt das.

Wenn ich nun wärend dem rados bench einen Node neu starte steigt, solange der Node offline ist, die Schreibleistung auf > 2GB/sec. Wenn der Node wieder online kommt, sinkt die Schreibleistung wieder.
schreib_performance.jpg

Meine ceph.conf sieht so aus:
Bash:
[global]
    auth_client_required = cephx
    auth_cluster_required = cephx
    auth_service_required = cephx
    cluster_network = 10.10.10.11/24
    fsid = 25d1ed2f-3693-4fbe-8a08-2c7596ff0bda
    mon_allow_pool_delete = true
    mon_host = 10.10.10.11 10.10.10.21 10.10.10.31
    ms_bind_ipv4 = true
    ms_bind_ipv6 = false
    osd_pool_default_min_size = 2
    osd_pool_default_size = 3
    public_network = 10.10.10.11/24

[client]
    keyring = /etc/pve/priv/$cluster.$name.keyring

[client.crash]
    keyring = /etc/pve/ceph/$cluster.$name.keyring

[mon.virz01-301]
    public_addr = 10.10.10.11

[mon.virz01-302]
    public_addr = 10.10.10.21

[mon.virz01-303]
    public_addr = 10.10.10.31

Ich hätte auch schon das Broadcast Setup probiert, hier ist das Verhalten exakt das gleiche.
Hat jemand vielleicht eine Idee, oder kennt das Problem?
 
Hi, das sieht doch gar nicht so ungewöhnlich aus.
Wenn du lokal auf deine NVMe schreibst, ist das natürlich immer schnell.
Wenn du Ceph nutzt, hast du einen Deamon der den Write annehmen muss und diesen dann über das Netzwerk an die anderen NVMe weiterleiten muss. Erst wenn alle SSDs (deamons) an den primären Deamon melden, das die Daten auf Disk sind, wird der Write bestätigt. Das bringt natürlich mehr Latenz und damit auch weniger Durchsatz mit.
Hast du auch mal gecheckt ob die 25G Interfaces auch wirklich mit 25G und nicht mit 10G laufen?
 
Guten Morgen!

Bin nochmal alle Ethernet Links durchgegangen. Und siehe da, einer läuft auf 1000Mb/s anstatt auf 25000Mb/s.
Kabeltausch kann leider erst morgen erfolgen. Aber ich bin zuversichtlich, ist bisher der vielversprechenste Ansatz!

Werde nochmal posten, sollte es die Lösung sein.

Danke