美文网首页
linux使用FIO测试磁盘的iops

linux使用FIO测试磁盘的iops

作者: 早_wsm | 来源:发表于2019-06-15 17:26 被阅读0次

FIO安装

wget http://brick.kernel.dk/snaps/fio-2.0.7.tar.gz
yum install libaio-devel 安装依赖。我们一般使用libaio,发起异步IO请求。
tar -zxvf fio-2.0.7.tar.gz
cd fio-2.0.7
make
make install

简单介绍fio的参数

ioengine: 负载引擎,我们一般使用libaio,发起异步IO请求。
bs: IO大小
direct: 直写,绕过操作系统Cache。因为我们测试的是硬盘,而不是操作系统的Cache,所以设置为1。
rw: 读写模式,有顺序写write、顺序读read、随机写randwrite、随机读randread等。
size: 寻址空间,IO会落在 [0, size)这个区间的硬盘空间上。这是一个可以影响IOPS的参数。一般设置为硬盘的大小。
filename: 测试对象
iodepth: 队列深度,只有使用libaio时才有意义。这是一个可以影响IOPS的参数。
runtime: 测试时长

常见测试方法

顺序读

fio -filename=/dev/sda -direct=1 -iodepth 1 -thread -rw=read -ioengine=psync -bs=16k -size=200G -numjobs=30 -runtime=1000 -group_reporting -name=mytest

顺序写

fio -filename=/dev/sda -direct=1 -iodepth 1 -thread -rw=write -ioengine=psync -bs=16k -size=200G -numjobs=30 -runtime=1000 -group_reporting -name=mytest

随机读

fio -filename=/dev/sda -direct=1 -iodepth 1 -thread -rw=randread -ioengine=psync -bs=16k -size=200G -numjobs=30 -runtime=1000 -group_reporting -name=mytest

随机写

fio -filename=/dev/sda -direct=1 -iodepth 1 -thread -rw=randwrite -ioengine=psync -bs=16k -size=200G -numjobs=30 -runtime=1000 -group_reporting -name=mytest

混合随机读写

fio -filename=/dev/sda -direct=1 -iodepth 1 -thread -rw=randrw -rwmixread=70 -ioengine=psync -bs=16k -size=200G -numjobs=30 -runtime=100 -group_reporting -name=mytest -ioscheduler=noop

多盘fio测试脚本

#/bin/bash
#author wsm
#date 2019/06/17
#fio顺序读测试
#-filename 测试对象 
#-direct=1测试过程绕过机器自带的buffer。使测试结果更真实
#-iodepth 1
#-thread
#-rw=read
#-ioengine=psync io引擎使用pync方式
#-bs=16k单次io的块文件大小为16k
#-size=100G测试文件大小
#-numjobs=30测试线程为30
#-runtime=1000 测试时间为1000秒
#-group_reporting 关于显示结果的,汇总每个进程的信息
#-name=mytest
for i in {a..z} a{a..z};do
  fio -filename=/dev/sd$i -direct=1 -iodepth 1 -thread -rw=read -ioengine=psync -bs=16k -size=100G -numjobs=30 -runtime=1000 -group_reporting -name=mytest
done

测试结果

--型号:XXX; 硬盘:900G/SAS 10K/2.5寸硬盘/RAID18k 随机写:iops=7988k 随机读:iops=111908k 混合读写(读写7:3):读iops=1114 写iops=4791m 顺序写:iops=1701m 顺序读:iops=246 1m 顺序读写(读写7:3):读iops=134 写iops=56

相关文章

  • linux使用FIO测试磁盘的iops

    FIO安装 wget http://brick.kernel.dk/snaps/fio-2.0.7.tar.gzy...

  • fio命令

    FIO介绍FIO是测试IOPS的非常好的工具,用来对磁盘进行压力测试和验证。磁盘IO是检查磁盘性能的重要指标,可以...

  • 使用FIO测试磁盘的iops

    FIO是测试IOPS的非常好的工具,用来对硬件进行压力测试和验证,支持13种不同的I/O引擎,包括:sync,mm...

  • 磁盘性能测试参数

    LINUX性能测试参数: • 测试随机写IOPS: fio -direct=1 -iodepth=128 -rw=...

  • FIO

    FIO是测试IOPS的非常好的工具,用来对磁盘进行压力测试和验证。磁盘IO是检查磁盘性能的重要指标,可以按照负载情...

  • 【MySQL】FIO测试磁盘IOPS

    前言:想到之前用sysbench测试过服务器硬盘IOPS,但是没有指定数据块大小,所以最近又另外找了fio工具来测...

  • Linux下添加OTS配置的ISCSI并进行FIO测试

    前言OTS=OnTAP Select因需要使用FIO跑OTS的IOPS,遂配置Linux协议的ISCSI,进而在L...

  • 磁盘性能测试

    FIO测试 FIO是测试IOPS的非常好的工具,用来对硬件进行压力测试和验证,支持13种不同的I/O引擎,包括:s...

  • 【fio】Centos7.x 磁盘IOPS压力测试

    fio是一种 I/O工具,用于基准测试和压力/硬件验证。它支持19种不同类型的I/O引擎(sync,mmap,li...

  • fio几个输出项的含义

    使用fio测试rbd,配置文件如下: 运行后的输出: 第6行:输出总的IOPS,BW,也就是每秒IO操作数和带宽。...

网友评论

      本文标题:linux使用FIO测试磁盘的iops

      本文链接:https://www.haomeiwen.com/subject/osobfctx.html