####编写脚本内容如下:
#!/bin/bash
yum install libaio-devel fio -y
echo "------------512-4096------------">>IO_TEST
for ((i=1; i<=5; i ++))
do
echo "开始第"$i"组测试..."
echo "第"$i"组测试:">>IO_TEST
fio -filename=/tmp/mytest1 -direct=1 -iodepth 1 -thread -rw=randrw -rwmixread=70 -ioengine=psync -bsrange=512-4096 -size=2G -numjobs=30 -runtime=100 -group_reporting -name=mytest1 | grep -E 'read :|write:' >>IO_TEST
done
echo "------------4096k------------">>IO_TEST
for ((i=1; i<=5; i ++))
do
echo "开始第"$i"组测试..."
echo "第"$i"组测试:">>IO_TEST
fio -filename=/tmp/mytest1 -direct=1 -iodepth 1 -thread -rw=randrw -rwmixread=70 -ioengine=psync -bs=4096k -size=2G -numjobs=30 -runtime=100 -group_reporting -name=mytest1 | grep -E 'read :|write:' >>IO_TEST
done
echo Test end!!!
####FIO参数说明 filename=/dev/sdb1 #测试文件名称,通常选择需要测试的盘的data目录 direct=1 #测试过程绕过机器自带的buffer。使测试结果更真实 rw=randwrite #测试随机写的I/O rw=randrw #测试随机写和读的I/O bs=16k #单次io的块文件大小为16k bsrange=512-2048 #同上,提定数据块的大小范围 size=5G #本次的测试文件大小为5g,以每次4k的io进行测试 numjobs=30 #本次的测试线程为30个 runtime=1000 #测试时间1000秒 ioengine=psync #io引擎使用psync方式 rwmixwrite=30 #在混合读写的模式下,写占30% group_reporting #关于显示结果的,汇总每个进程的信息 lockmem=1G #只使用1g内存进行测试 zero_buffers #用0初始化系统buffer nrfiles=8 #每个进程生成文件的数量
评论区