一、fio参数介绍
fio总共有100+个参数,很多参数我们用不到,下面选择性能测试中一些常用的参数进行说明。
首先来看一条fio命令:
fio -name=fiotest.qcow2 -filename=test.qcow2 -group_reporting -iodepth=16 -ioengine=gfapi_async -volume=vol_rep2 -brick=127.0.0.1 -nrfiles=1 -rw=randwrite -bs=4k -size=1G -threads -numjobs=1 -direct=1
该命令式在挂载点下随机写一个1G的文件,测试挂载点的性能,具体参数的意义如下:
-name: 用于输出信息用的名字,在上述命令行的使用方法中,表明一个新job的开始,缺省为job name
-filename: 测试文件名称,通常选择需要测试的盘的data目录
-group_reporting:汇总所有的信息,而不是每个job都显示具体的结果
-iodepth:本次测试的队列深度
-ioengine:负载产生的引擎,定义job向文件发起io的方式。Fio的引擎有很多,具体可以网上搜一下,常用的引擎为libaio 和 gfapi_async,测试过程中,如果要模拟api的方式测试挂载点的性能则用gfapi_async,测试裸盘或其他块设备性能时,选用libaio即可。
-volume 和 -brick:这两个是测试挂载点用的,其他场景不需要。