本文是以下两篇文章的后续:
- 探索fio参数如何选择以及全方位对比HDD和SSD性能:部署Ceph前测试磁盘性能,同时基于fio测试参数的变化深入了解fio原理和磁盘IO特点。
- CentOS8使用cephadm部署和配置Ceph Octopus:在CentOS8上使用cephadmin进行Ceph Octopus版本的部署,以及RBD、CephFS、NFS、RGW等的配置。
本文测试内容:
- Ceph集群性能随OSD个数的增加(2个、4个、6个、8个)性能的变化;
- Ceph存储随IO队列深度提高(1、2、4、8、16、32、64)的性能变化;
- Ceph存储与HDD单盘性能的对比(numjobs并发任务个数的影响);
- Cache Tier的性能(不科学测试)。
测试过程日志:https://github.com/get-set/fio-bench-disks-ceph/tree/master/ceph
准备工作
本文所测试的Ceph集群:
| 主机 | IP | 配置 | 磁盘(除系统盘) | 服务 |
|---|---|---|---|---|
| ceph-mon1(虚拟机) | 192.168.7.11 | 4C/8G | MON、prom+grafana | |
| ceph-mon2(虚拟机) | 192.168.7.12 | 4C/8G | MON、MGR | |
| ceph-mon3(虚拟机) | 192.168.7.13 | 4C/8G | MON、MGR | |
| ceph-osd1(物理机) | 192.168.7.14 | 40C/64G | 1.6T SSD/4T SAS * 4 | OSD、MDS、NFS、RGW |
| ceph-osd2(物理机) | 192.168.7.15 | 40C/64G | 1.6T SSD/4T SAS * 4 | OSD、MDS、NFS、RGW |
部署和配置的详细过程见CentOS8使用cephadm部署和配置Ceph Octopus。
首先,单独准备一台测试节点,起一个CentOS8的虚拟机,配好地址和万兆网络。
确保网络带宽
使用iperf3工具测试一下与Ceph集群各节点的带宽:
在Ceph集群节点上:
❯ dnf install -y iperf3
❯ firewall-cmd --zone=public --add-port=5201/tcp --permanent
❯ firewall-cmd --reload
// iperf3 -s <节点的IP>
❯ iperf3 -s 192.168.7.11 # 比如ceph-mon1
-----------------------------------------------------------
Server listening on 5201
-----------------------------------------------------------
在测试节点上:
❯ dnf install -y iperf3
// iperf3 -c <所要连接的节点的IP>
❯ iperf3 -c 192.168.7.11
网络分离
Ceph支持将对外服务的网络,和OSD间进行数据同步的网络进行物理网卡上的分离,如图:

我要测试的两台OSD主机上各有两个万兆网口,分别在192.168.7.0/24和10.168.7.0/24两个网段上,现在只需要把cluster network进行设置即可。
❯ ceph config set global cluster_network 10.168.7.0/24
❯ ceph orch daemon restart osd
性能测试(HDD池)
rados bench测试
Ceph的rados工具提供了性能测试命令,可以实现三种测试:write(写)、rand(随机读)和seq(顺序读)。
❯ rados bench -p bench.hdd 30 write --no-cleanup | tee 2hdd/rados_bench_write.log
❯ rados bench -p bench.hdd 30 rand |

本文深入探讨Ceph存储系统在不同配置下(包括OSD数量、IO队列深度及CacheTier启用)的性能表现,对比HDD与SSD磁盘,通过radosbench和fio工具测试,揭示Ceph在分布式存储场景下的优势与局限。
&spm=1001.2101.3001.5002&articleId=108092302&d=1&t=3&u=70b928b2fc9743f7a41e840b495d4e4d)
4604

被折叠的 条评论
为什么被折叠?



