ceph cluster iops low
I have my ceph IOPS very low with over 48 SSD backed on NVMs for DB/WAL on four physical servers. The whole cluster has only about 20K IO total. Looks the IOs are suppressed over bottleneck somewhere. Dstat shows a lots csw and interrupts over 150K, while I am using FIO bench 4K 128QD test. I check SSD throughput only about 40M at 250 ios each. Network are total 20G and not full of traffic. CPU are around 50% idle on 2*E5 2950v2 each node. Is it normal to get that high and how to reduce it? where else could be the bottleneck?
Hi Peter, I'm not quite sure if you're cluster is fully backed by NVMe drives based on your description, but you might be interested in the CPU scaling article we posted last fall. It's available here: https://ceph.io/en/news/blog/2022/ceph-osd-cpu-scaling/ That gives a good overview of what kind of performance you can get out of Ceph in a good environment with all NVMe drives. We also have a tuning article for using QEMU KVM which shows how big of a difference various tuning options in the whole IO pipeline can make: https://ceph.io/en/news/blog/2022/qemu-kvm-tuning/ The gist of it is that there are a lot of things that can negatively affect performance, but if you can isolate and fix them it's possible to get reasonably high performance in the end. If you have HDD based OSDs with NVMe only for DB/WAL, you will ultimately be limited by the random IO performance of the HDDs. The WAL can help a little but not like a full tiering solution. We have some ideas regarding how to improve this in the future. If you have a test cluster or are simply experimenting, you could try deploying on top of Intel's OpenCAS or bcache. There have been reports of improvements for HDD backed clusters using these solutions, though they are not currently supported officially by the project afaik. Mark On 1/23/23 14:58, petersun@raksmart.com wrote:
I have my ceph IOPS very low with over 48 SSD backed on NVMs for DB/WAL on four physical servers. The whole cluster has only about 20K IO total. Looks the IOs are suppressed over bottleneck somewhere. Dstat shows a lots csw and interrupts over 150K, while I am using FIO bench 4K 128QD test. I check SSD throughput only about 40M at 250 ios each. Network are total 20G and not full of traffic. CPU are around 50% idle on 2*E5 2950v2 each node. Is it normal to get that high and how to reduce it? where else could be the bottleneck? _______________________________________________ ceph-users mailing list -- ceph-users@ceph.io To unsubscribe send an email to ceph-users-leave@ceph.io
Hi Mark, Thanks for your response, it is help! Our Ceph cluster use Samsung SSD 870 EVO all backed with NVME drive. 12 SSD drives to 2 NVMe drives per storage node. Each 4TB SSD backed 283G NVMe lvm partition as DB. Now cluster throughput only 300M write, and around 5K IOPS. I could see NVMe drive utilization over 95% show on ‘iostat’ command. Will NVMe drive be a bottle neck quickly if we have large of IO in cluster? I have read the top article about OSD bundle with CPU cores. However I can only find script called pincpu on the github to automate process to allocate CPU core with OSDs. It seems not work for me. Do you have any tool or official instruction that can guide me to test it?
Hi, You SSD is a "desktop" SSD, not a "enterprise" SSD, see [1] This mostly was't suitable for Ceph [1] https://yourcmc.ru/wiki/Ceph_performance#CAPACITORS.21 k
On 25 Jan 2023, at 05:35, petersun@raksmart.com wrote:
Hi Mark, Thanks for your response, it is help! Our Ceph cluster use Samsung SSD 870 EVO all backed with NVME drive. 12 SSD drives to 2 NVMe drives per storage node. Each 4TB SSD backed 283G NVMe lvm partition as DB. Now cluster throughput only 300M write, and around 5K IOPS. I could see NVMe drive utilization over 95% show on ‘iostat’ command. Will NVMe drive be a bottle neck quickly if we have large of IO in cluster? I have read the top article about OSD bundle with CPU cores. However I can only find script called pincpu on the github to automate process to allocate CPU core with OSDs. It seems not work for me. Do you have any tool or official instruction that can guide me to test it?
participants (3)
-
Konstantin Shalygin
-
Mark Nelson
-
petersun@raksmart.com