在云计算的大背景下,新兴的云主机成为了炙手可热的产品,而云主机硬盘性能算是云主机的一个重要硬件了,很多人想要知道如何正确测试云主机硬盘IO等性能,以此作为参考来选择云主机。这的确是一个可行的方法,那么在这里XRSERVERS就结合网络上的一些方法,谈谈如何测试硬盘IO性能。
磁盘IO是云主机的重要指标,可以按照读写方式分成照顺序读写,随机读写两大类,同时也可以按照读写的块大小分成512K和4K。512K大小的块文件主要用来测试磁盘的吞吐能力,而4K大小的块文件主要用来测试磁盘的IO能力。
首先,如果你的系统是Linux,那么推荐使用fio测试磁盘性能工具,关羽fio测试工具一些代码也将在下方贴出,以便大家参考。
1、测试顺序读性能
fio--filename=/home/test-iodepth=64-ioengine=libaio--direct=1--rw=read--bs=1m--size=2g--numjobs=4--runtime=10--group_reporting--name=test-read
2、测试顺序写性能
fio-filename=/home/test-iodepth=64-ioengine=libaio-direct=1-rw=write-bs=1m-size=2g-numjobs=4-runtime=20-group_reporting-name=test-write
3、测试随机读性能
fio-filename=/home/test-iodepth=64-ioengine=libaio-direct=1-rw=randread-bs=4k-size=2G-numjobs=64-runtime=20-group_reporting-name=test-rand-read
4、测试随机写性能
fio-filename=/home/test-iodepth=64-ioengine=libaio-direct=1-rw=randwrite-bs=4k-size=2G-numjobs=64-runtime=20-group_reporting-name=test-rand-write
参数说明: filename=/home/test测试文件名称,通常选择需要测试的盘的data目录。
direct=1测试过程绕过机器自带的buffer。使测试结果更真实。
rw=randwrite测试随机写的I/O
rw=randrw测试随机写和读的I/O
bs=4k单次io的块文件大小为4k
size=2g本次的测试文件大小为2g,以每次4k的io进行测试。
numjobs=64本次的测试线程为64.
runtime=20测试时间为20秒,如果不写则一直将2g文件分4k每次写完为止。
报告如何查看: fio的结果报告内容丰富,我们主要关心的是两项:
磁盘的吞吐量bw,这个是顺序读写考察的重点
磁盘的每秒读写次数iops,这个是随机读写考察的重点
比如,
下面是4个测试的结果部分截取: test-read:(groupid=0,jobs=4):err=0:pid=4752
read:io=839680KB,bw=76823KB/s,iops=75,runt=10930msec
顺序读,带宽76823KB/s,iops75
test-write:(groupid=0,jobs=4):err=0:pid=4758
write:io=899072KB,bw=42854KB/s,iops=41,runt=20980msec
顺序写,带宽42854KB/s,iops=41
test-rand-read:(groupid=0,jobs=64):err=0:pid=4619
read:io=72556KB,bw=3457.4KB/s,iops=864,runt=20986msec
随机读,带宽3457.4KB/s,iops=864
test-rand-write:(groupid=0,jobs=64):err=0:pid=4685
write:io=129264KB,bw=6432.4KB/s,iops=1608,runt=20097msec
随机写,带宽6432.4KB/s,iops=1608
另外需要提醒大家,硬盘大小跟购买时不一致(挂载),因此购买时须知: 1、如果存在购买时大小差异的问题,需要手动挂载数据盘
2、硬盘能否进行分区格式化;
3、硬盘的IO性能怎么样;
4、硬盘能否扩容; 磁盘IO的性能你可以下载软件测试。最主要的问题就是看应用,如果你仅仅是跑几个企业站,那放心吧,够你用的。如果你非常消耗IO,那你也不用测试了,直接上实体服务器自己组集群吧。IO是目前所有的主机服务商都会面临的问题。
XRSERVERS科技的
香港云主机均采用高性能高IO硬盘,硬盘可以按需扩容升级,硬盘均可以支持分区及格式化,环境。快来选择吧!