签到成功

知道了

CNDBA社区CNDBA社区

Linux fio 测试磁盘的iops

2019-07-25 21:34 4906 0 原创 linux I/O
作者: Jason Tao

目前主流的第三方IO测试工具有fio iometer和orion。
FIO是测试linux 系统IOPS的非常好的工具,用来对硬件进行相关的压力测试,支持13种不同的I/O引擎,常见的包括:sync,mmap,libaio等。
fio官网地址:http://freshmeat.net/projects/fio/

http://www.cndba.cn/tzq_131517/article/3522

一.安装fio

二.fio参数解释

  • filename=/dev/sdc  支持文件系统或者裸设备,-filename=/dev/sda2或-filename=/dev/sdb
  • direct=1 测试过程绕过机器自带的buffer,使测试结果更真实
  • rw=randwread 测试随机读的I/O
  • rw=randwrite 测试随机写的I/O
  • rw=randrw 测试随机混合写和读的I/O
  • rw=read 测试顺序读的I/O
  • rw=write 测试顺序写的I/O
  • rw=rw 测试顺序混合写和读的I/O
  • bs=4k 单次io的块文件大小为4k
  • bsrange=512-2048 同上,提定数据块的大小范围
  • size=5g 本次的测试文件大小为5g,以每次4k的io进行测试
  • numjobs=30 本次的测试线程为30
  • runtime=1000 测试时间为1000秒,如果不写则一直将5g文件分4k每次写完为止
  • ioengine=psync io引擎使用pync方式,如果要使用libaio引擎,需要yum install libaio-devel包
  • rwmixwrite=30 在混合读写的模式下,写占30%
  • group_reporting 关于显示结果的,汇总每个进程的信息
  • 此外
  • lockmem=1g 只使用1g内存进行测试
  • zero_buffers 用0初始化系统buffer
  • nrfiles=8 每个进程生成文件的数量

三.fio测试场景以及生成的报告

  • 1.100%随机,100%读, 1M
  • fio -filename=/dev/sdc -direct=1 -iodepth 1 -thread -rw=randread -ioengine=psync -bs=1M -size=1000G -numjobs=50 -runtime=180 -group_reporting -name=rand_100read_1M

    http://www.cndba.cn/tzq_131517/article/3522

  • 2.100%随机,100%写, 1M

  • fio -filename=/dev/sdc -direct=1 -iodepth 1 -thread -rw=randwrite -ioengine=psync -bs=1M -size=1000G -numjobs=50 -runtime=180 -group_reporting -name=rand_100write_1M

    http://www.cndba.cn/tzq_131517/article/3522
    http://www.cndba.cn/tzq_131517/article/3522
    http://www.cndba.cn/tzq_131517/article/3522

  • 3.100%顺序,100%读 ,1M

  • fio -filename=/dev/sdc -direct=1 -iodepth 1 -thread -rw=read -ioengine=psync -bs=1M -size=1000G -numjobs=50 -runtime=180 -group_reporting -name=sqe_100read_1M

    http://www.cndba.cn/tzq_131517/article/3522

  • 4.100%顺序,100%写 ,1Mhttp://www.cndba.cn/tzq_131517/article/3522

  • fio -filename=/dev/sdc -direct=1 -iodepth 1 -thread -rw=write -ioengine=psync -bs=1M -size=1000G -numjobs=50 -runtime=180 -group_reporting -name=sqe_100write_1M

  • 5.100%随机,70%读,30%写 1M

    http://www.cndba.cn/tzq_131517/article/3522
    http://www.cndba.cn/tzq_131517/article/3522
    http://www.cndba.cn/tzq_131517/article/3522

  • fio -filename=/dev/sdc -direct=1 -iodepth 1 -thread -rw=randrw -rwmixread=70 -ioengine=psync -bs=1M -size=1000G -numjobs=50 -runtime=180 -group_reporting -name=randrw_70read_1M

可以根据上面的例子详细的测试自己系统I/O读写能力。

版权声明:本文为博主原创文章,未经博主允许不得转载。

每天坚持写一篇博客

用户评论
* 以下用户言论只代表其个人观点,不代表CNDBA社区的观点或立场
Jason Tao

Jason Tao

关注
  • 3
    原创
  • 0
    翻译
  • 0
    转载
  • 0
    评论
  • 访问:17930次
  • 积分:34
  • 等级:注册会员
  • 排名:第58名
精华文章
    最新问题
    查看更多+
    热门文章
      热门用户
      推荐用户
        Copyright © 2016 All Rights Reserved. Powered by CNDBA · 皖ICP备2022006297号-1·

        QQ交流群

        注册联系QQ