巩固下动手动力
测试计划
使用三台华为2288H搭建虚拟化测试环境,分别测试物理机环境下和虚拟机环境下磁盘测试,至少三次。
物理机配置:2*Gold 5218/16*32G DDR4 2933/2*1.2T SAS/4*6.4T P4610/RAID 9460-8I/4*1G电+2*10G光。其他软件版本如下:
其中两块SAS做RAID1,用做物理机系统盘、4块P4610直通主板,本次使用软RAID做本地存储测试,后续再测试分布式存储,网络方面没有做bond,单线只出。
云软件:ZStack Cloud企业版4.7.11。
准备阶段
先安装宿主机软件,安装完成后初始化存储,并初始化云平台。
存储初始化配置:
云平台初始化配置(CPU三倍超分,内存/存储不超分):
测试之前先看一眼P4610的纸面数据:
PCIE3.1X4带宽,官方带宽上限顺序3200MB/S,IOPS 4K随机读65W随机写22W。
物理机测试
物理机随机4K写
MAX为22W,比较接近标称值22W了。
物理机随机4K读
MAX有25W,对于P4610来说这里也偏低了。
物理机1M顺序写
顺序写MAX为3066MB/S,接近标称值。
物理机1M顺序读
顺序读MAX为2856MB/s,接近标称值。
虚拟机测试
虚拟机4K写测试
MAX为4.6W多,看得出来相对于物理机整体损耗还是非常大的,此时CPU由QUEM模拟。
MAX为13.4W,此时CPU模式为保持和物理机一致,可以看出来差距还是很大的。
虚拟机4K读测试
MAX为48W多,此时CPU由QUEM模拟。(不太理解虚机这块比物理机还高很多,依旧测试多次都是这个结果)
MAX为14.4W,此时CPU模式为保持和物理机一致,还比QUEM模式的要低很多,感觉这块有问题。
虚机1M顺序写
MAX为3076MB/s,计算损耗算是正常水平。此时CPU由QUEM模拟。
MAX为3072MB/s,此时CPU模式为保持和物理机一致,接近理论性能。
虚机1M顺序读
MAX为2858MB/s。此时CPU由QUEM模拟。
MAX为2860MB/s,此时CPU模式为保持和物理机一致,相比QUEM模拟性能持平。
2023.9.27物理机DISK模式测试
重新补充DISK模式的测试结果:
测试前
物理机随机4K写
MAX为25W。
物理机随机4K读
MAX为31W。
物理机随机1M顺序写
MAX为3110M/S。
物理机随机1M顺序读
MAX为2901M/S。
2023.10.31虚拟机Ceph测试
今天基于三台服务器搭建了一个Ceph分布式存储,使用XSKY星辰天合V5版本,算是组了一个散装超融合,顺便测测性能。但是先预测一波,顺序读写可能不高,因为存储网是万兆网,撑死1200多M/s,也可能计算和存储在一台设备上,这样应该就是正常顺序带宽了,废话不多说,测一下吧。
虚拟机4K随机写
MAX=5.9W,损耗还是大。
虚拟机4K随机读
MAX=9.1W,相比写好,但损耗还是大。
虚拟机1M顺序写
MAX=900MB/s,符合预期。
虚拟机1M顺序读
MAX=1240MB/s,依旧好于写,不过鉴于网络带宽问题,仍符合预期。
总结
可以看出,测试的数据,4K和官网标称差距还蛮大的,物理机的4K读,虚拟机的4K写,都有着巨大差距,但是顺序读写都没用太大差距,猜测可能与测试环境配置、磁盘IO调度算法设置有关,本次就不做深度探讨。此外,通过QUEM模拟CPU时在4K写的性能比保持物理机CPU模式差很大,测试了很多遍都存在这个差距。另外,开启了vNUMA时性能没有明显差距,这个猜测在宿主机高负载时才能体现出来差距。
最后就是Ceph,由于要经过网络传输且需要哈希算法再操作数据,性能上肯定没法跟本地存储比,损耗挺大,优势就是海量存储以及数据安全及其他技术特性。
TIPS: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
非特殊说明,本博所有文章均为博主原创。
如若转载,请注明出处:https://tenkms.cn/archives/671
共有 0 条评论