Ceph Performance Problem trotz guter Ceph Benchmarks

LgAltair

Member
Jun 6, 2023
1
0
6
Hallo zusammen,


ich habe einen Ceph-Testcluster aufgebaut (NVMe + 25G NICs). Grundsätzlich läuft alles stabil, aber ich sehe ein starkes Performance-Delta bei Writes in einer Windows-VM.


Setup​


  • 3 Nodes, alle identisch
  • Je Node: 2× NVMe
  • 25G NICs, direkt/mesh verbunden
  • Proxmox 9.12 mit alle Updates

Problem​


Wenn ich den Pool mit rados bench teste, sind die Werte sehr gut (Read und auch Write ok).
Sobald ich jedoch eine Windows-VM installiere und dort CrystalDiskMark ausführe, sind die Write-Werte extrem schlecht (ca. ~500 MB/s Write).
Read passt und liegt ungefähr im Bereich der erwarteten Werte.


Hat jemand eine Idee, woran das liegen kann bzw. welche Einstellungen ich prüfen sollte (Ceph / RBD / Client / Hypervisor / Windows)?


Ceph Read Benchmark​

rados bench -p CephTest 10 rand
hints = 1
sec Cur ops started finished avg MB/s cur MB/s last lat(s) avg lat(s)
0 0 0 0 0 0 - 0
1 16 1546 1530 6119.29 6120 0.00905856 0.0100738
2 15 3147 3132 6262.91 6408 0.0070221 0.00987384
3 16 4745 4729 6304.4 6388 0.0197218 0.00980264
4 16 6341 6325 6324.15 6384 0.0175492 0.0097843
5 16 7924 7908 6325.61 6332 0.00362649 0.00977957
6 15 9485 9470 6312.45 6248 0.00692158 0.00980722
7 16 11082 11066 6322.59 6384 0.00638146 0.00979609
8 15 12583 12568 6283.01 6008 0.00615494 0.00986136
9 16 14148 14132 6279.7 6256 0.0168098 0.00986748
10 13 15745 15732 6291.68 6400 0.00397737 0.00984817
Total time run: 10.0122
Total reads made: 15745
Read size: 4194304
Object size: 4194304
Bandwidth (MB/sec): 6290.33
Average IOPS: 1572
Stddev IOPS: 33.9863
Max IOPS: 1602
Min IOPS: 1502
Average Latency(s): 0.00984981
Max latency(s): 0.0666916
Min latency(s): 0.0017844


Ceph Write Benchmark​

Maintaining 16 concurrent writes of 4194304 bytes to objects of size 4194304 for up to 10 seconds or 0 objects
Object prefix: benchmark_data_PXCeph02_614661
sec Cur ops started finished avg MB/s cur MB/s last lat(s) avg lat(s)
0 0 0 0 0 0 - 0
1 16 637 621 2483.65 2484 0.0144227 0.0253965
2 16 1314 1298 2595.7 2708 0.0175309 0.0245174
3 16 1980 1964 2618.2 2664 0.0293656 0.0242988
4 16 2672 2656 2655.59 2768 0.0195877 0.0240187
5 16 3358 3342 2673.21 2744 0.0273688 0.0238998
6 16 4045 4029 2685.63 2748 0.0117017 0.0237922
7 16 4735 4719 2696.21 2760 0.0130485 0.0236858
8 16 5530 5514 2756.65 3180 0.0147448 0.0231958
9 16 6351 6335 2815.21 3284 0.0150851 0.022698
10 16 7174 7158 2862.86 3292 0.0206247 0.0223292
Total time run: 10.0105
Total writes made: 7174
Write size: 4194304
Object size: 4194304
Bandwidth (MB/sec): 2866.58
Stddev Bandwidth: 282.067
Max bandwidth (MB/sec): 3292
Min bandwidth (MB/sec): 2484
Average IOPS: 716
Stddev IOPS: 70.5168
Max IOPS: 823
Min IOPS: 621
Average Latency(s): 0.0223162
Stddev Latency(s): 0.00695996
Max latency(s): 0.126924
Min latency(s): 0.00836278
root@PXCeph02:~#

pveversion -v
proxmox-ve: 9.1.0 (running kernel: 6.17.4-1-pve)
pve-manager: 9.1.2 (running version: 9.1.2/9d436f37a0ac4172)
proxmox-kernel-helper: 9.0.4
proxmox-kernel-6.17.4-1-pve-signed: 6.17.4-1
proxmox-kernel-6.17: 6.17.4-1
proxmox-kernel-6.17.2-2-pve-signed: 6.17.2-2
proxmox-kernel-6.14.11-4-pve-signed: 6.14.11-4
proxmox-kernel-6.14: 6.14.11-4
proxmox-kernel-6.14.8-2-pve-signed: 6.14.8-2
ceph: 19.2.3-pve2
ceph-fuse: 19.2.3-pve2
corosync: 3.1.9-pve2
criu: 4.1.1-1
frr-pythontools: 10.4.1-1+pve1
ifupdown2: 3.3.0-1+pmx11
intel-microcode: 3.20250812.1~deb13u1
ksm-control-daemon: 1.5-1
libjs-extjs: 7.0.0-5
libproxmox-acme-perl: 1.7.0
libproxmox-backup-qemu0: 2.0.1
libproxmox-rs-perl: 0.4.1
libpve-access-control: 9.0.5
libpve-apiclient-perl: 3.4.2
libpve-cluster-api-perl: 9.0.7
libpve-cluster-perl: 9.0.7
libpve-common-perl: 9.1.1
libpve-guest-common-perl: 6.0.2
libpve-http-server-perl: 6.0.5
libpve-network-perl: 1.2.4
libpve-rs-perl: 0.11.4
libpve-storage-perl: 9.1.0
libspice-server1: 0.15.2-1+b1
lvm2: 2.03.31-2+pmx1
lxc-pve: 6.0.5-3
lxcfs: 6.0.4-pve1
novnc-pve: 1.6.0-3
proxmox-backup-client: 4.1.0-1
proxmox-backup-file-restore: 4.1.0-1
proxmox-backup-restore-image: 1.0.0
proxmox-firewall: 1.2.1
proxmox-kernel-helper: 9.0.4
proxmox-mail-forward: 1.0.2
proxmox-mini-journalreader: 1.6
proxmox-offline-mirror-helper: 0.7.3
proxmox-widget-toolkit: 5.1.5
pve-cluster: 9.0.7
pve-container: 6.0.18
pve-docs: 9.1.1
pve-edk2-firmware: 4.2025.05-2
pve-esxi-import-tools: 1.0.1
pve-firewall: 6.0.4
pve-firmware: 3.17-2
pve-ha-manager: 5.0.8
pve-i18n: 3.6.6
pve-qemu-kvm: 10.1.2-4
pve-xtermjs: 5.5.0-3
qemu-server: 9.1.2
smartmontools: 7.4-pve1
spiceterm: 3.4.1
swtpm: 0.8.0+pve3
vncterm: 1.9.1
zfsutils-linux: 2.3.4-pve1
 
Last edited:
Kannst Du bitte mal dein Setup genauer beschreiben.
  • ceph osd df tree
  • qm config <VMID>
  • ceph osd pool ls detail
  • ceph osd pool autoscale-status
Bitte setze dein Output immer in [ CODE ] tags (oben im Menü das "</>"), dann kann man das deutlich besser lesen, danke!
 
Last edited:
  • Like
Reactions: gurubert