FIO磁盘测试

2023-9-14 471 9/14

巩固下动手动力

测试计划

使用三台华为2288H搭建虚拟化测试环境,分别测试物理机环境下和虚拟机环境下磁盘测试,至少三次。

物理机配置:2*Gold 5218/16*32G DDR4 2933/2*1.2T SAS/4*6.4T P4610/RAID 9460-8I/4*1G电+2*10G光。其他软件版本如下:

FIO磁盘测试

其中两块SAS做RAID1,用做物理机系统盘、4块P4610直通主板,本次使用软RAID做本地存储测试,后续再测试分布式存储,网络方面没有做bond,单线只出。

云软件:ZStack Cloud企业版4.7.11。

准备阶段

先安装宿主机软件,安装完成后初始化存储,并初始化云平台。

存储初始化配置:

FIO磁盘测试

云平台初始化配置(CPU三倍超分,内存/存储不超分):

FIO磁盘测试

测试之前先看一眼P4610的纸面数据:

FIO磁盘测试

PCIE3.1X4带宽,官方带宽上限顺序3200MB/S,IOPS 4K随机读65W随机写22W。

物理机测试

物理机随机4K写

FIO磁盘测试

MAX为22W,比较接近标称值22W了。

物理机随机4K读

FIO磁盘测试

MAX有25W,对于P4610来说这里也偏低了。

物理机1M顺序写

FIO磁盘测试

顺序写MAX为3066MB/S,接近标称值。

物理机1M顺序读

FIO磁盘测试

顺序读MAX为2856MB/s,接近标称值。

虚拟机测试

虚拟机4K写测试

FIO磁盘测试

MAX为4.6W多,看得出来相对于物理机整体损耗还是非常大的,此时CPU由QUEM模拟。

FIO磁盘测试

MAX为13.4W,此时CPU模式为保持和物理机一致,可以看出来差距还是很大的。

虚拟机4K读测试

FIO磁盘测试

MAX为48W多,此时CPU由QUEM模拟。(不太理解虚机这块比物理机还高很多,依旧测试多次都是这个结果)

FIO磁盘测试

MAX为14.4W,此时CPU模式为保持和物理机一致,还比QUEM模式的要低很多,感觉这块有问题。

虚机1M顺序写

FIO磁盘测试

MAX为3076MB/s,计算损耗算是正常水平。此时CPU由QUEM模拟。

FIO磁盘测试

MAX为3072MB/s,此时CPU模式为保持和物理机一致,接近理论性能。

虚机1M顺序读

FIO磁盘测试

MAX为2858MB/s。此时CPU由QUEM模拟。

FIO磁盘测试

MAX为2860MB/s,此时CPU模式为保持和物理机一致,相比QUEM模拟性能持平。

2023.9.27物理机DISK模式测试

重新补充DISK模式的测试结果:

测试前

FIO磁盘测试

物理机随机4K写

FIO磁盘测试

MAX为25W。

物理机随机4K读

FIO磁盘测试

MAX为31W。

物理机随机1M顺序写

FIO磁盘测试

MAX为3110M/S。

物理机随机1M顺序读

FIO磁盘测试

MAX为2901M/S。

2023.10.31虚拟机Ceph测试

今天基于三台服务器搭建了一个Ceph分布式存储,使用XSKY星辰天合V5版本,算是组了一个散装超融合,顺便测测性能。但是先预测一波,顺序读写可能不高,因为存储网是万兆网,撑死1200多M/s,也可能计算和存储在一台设备上,这样应该就是正常顺序带宽了,废话不多说,测一下吧。

虚拟机4K随机写

FIO磁盘测试

MAX=5.9W,损耗还是大。

虚拟机4K随机读

FIO磁盘测试

MAX=9.1W,相比写好,但损耗还是大。

虚拟机1M顺序写

FIO磁盘测试

MAX=900MB/s,符合预期。

虚拟机1M顺序读

FIO磁盘测试

MAX=1240MB/s,依旧好于写,不过鉴于网络带宽问题,仍符合预期。

总结

FIO磁盘测试可以看出,测试的数据,4K和官网标称差距还蛮大的,物理机的4K读,虚拟机的4K写,都有着巨大差距,但是顺序读写都没用太大差距,猜测可能与测试环境配置、磁盘IO调度算法设置有关,本次就不做深度探讨。此外,通过QUEM模拟CPU时在4K写的性能比保持物理机CPU模式差很大,测试了很多遍都存在这个差距。另外,开启了vNUMA时性能没有明显差距,这个猜测在宿主机高负载时才能体现出来差距。

最后就是Ceph,由于要经过网络传输且需要哈希算法再操作数据,性能上肯定没法跟本地存储比,损耗挺大,优势就是海量存储以及数据安全及其他技术特性。

TIPS:FIO命令参数说明

FIO磁盘测试

测试所用命令

4K随机写:fio -name randwrite -filename=/fio --numjobs=1 -ioengine=libaio -direct=1 -group_reporting -bs=4k -iodepth=64 --size=10G -runtime=60 -rw=randwrite --time_based --output=4k-rand-write.txt
4K随机读:fio -name randread -filename=/fio --numjobs=1 -ioengine=libaio -direct=1 -group_reporting -bs=4k -iodepth=64 --size=10G -runtime=60 -rw=randread --time_based --output=4k-rand-read.txt
1M顺序写:fio -name seqwrite -filename=/fio --numjobs=1 -ioengine=libaio -direct=1 -group_reporting -bs=1M -iodepth=64 --size=10G -runtime=60 -rw=write --time_based --output=1M-seq-write.txt
1M顺序读:fio -name seqread -filename=/fio --numjobs=1 -ioengine=libaio -direct=1 -group_reporting -bs=1M -iodepth=64 --size=10G -runtime=60 -rw=read --time_based --output=1M-seq-read.txt

- THE END -
Tag:

Tenkms

11月30日23:50

最后修改:2023年11月30日
0

非特殊说明,本博所有文章均为博主原创。

共有 0 条评论