服务器使用fio工具对 硬盘压力测试

fio 官网地址:http://freshmeat.net/projects/fio/

安装方法:

yum -y install libaio libaio-devel
wget http://brick.kernel.dk/snaps/fio-2.1.7.tar.bz2

tar xf fio-2.1.7.tar.bz2
cd fio-2.1.7/
./configure 
make -j10
make install

fio测试工具支持同步(pread/pwrite)和异步(libaio)FIO是测试IOPS的非常好的工具,用来对硬件进行压力测试和验证,支持13种不同的I/O引擎,包括:sync,mmap, libaio, posixaio, SG v3, splice, null, network, syslet, guasi, solarisaio 等等。

二,测试案例介绍:

##############################  同步i/o   ##################################################################3

#同步i/o、顺序读:

fio -filename=/dev/rbd2 -direct=1 -iodepth 1 -thread -rw=read -ioengine=psync -bs=16k -size=50G -numjobs=30 -runtime=1000 -group_reporting -name=read-psync >read-psync.txt

#同步i/o、顺序写:

fio -filename=/dev/rbd2 -direct=1 -iodepth 1 -thread -rw=write -ioengine=psync -bs=16k -size=50G -numjobs=30 -runtime=1000 -group_reporting -name=write-psync >write-psync.txt

#同步i/o、顺序混合读写:

fio -filename=/dev/rbd2 -direct=1 -iodepth 1 -thread -rw=readwrite -rwmixread=50 -ioengine=psync -bs=16k -size=50G -numjobs=30 -runtime=1000 -group_reporting -name=rw-readwrite rw-readwrite-psync.txt

#同步i/o、随机读:

fio -filename=/dev/rbd2 -direct=1 -iodepth 1 -thread -rw=randread -ioengine=psync -bs=16k -size=50G -numjobs=30 -runtime=1000 -group_reporting -name=randread-psync >randread-psync.txt

#同步i/o、随机写:

fio -filename=/dev/rbd2 -direct=1 -iodepth 1 -thread -rw=randwrite -ioengine=psync -bs=16k -size=50G -numjobs=30 -runtime=1000 -group_reporting -name=randwrite-psync >randwrite-psync.txt

#同步i/o、随机混合读写:

fio -filename=/dev/rbd2 -direct=1 -iodepth 1 -thread -rw=randrw -rwmixread=50 -ioengine=psync -bs=16k -size=50G -numjobs=30 -runtime=100 -group_reporting -ioscheduler=noop -name=randrw-psync >randrw-psync.txt

##############################  异步 i/o   ##################################################################3

#异步 i/o、顺序读:

fio -filename=/dev/rbd2 -direct=1 -iodepth 1 -thread -rw=read -ioengine=libaio -bs=16k -size=50G -numjobs=30 -runtime=1000 -group_reporting -name=read-libaio >read-libaio.txt

#异步 i/o、顺序写:

fio -filename=/dev/rbd2 -direct=1 -iodepth 1 -thread -rw=write -ioengine=libaio -bs=16k -size=50G -numjobs=30 -runtime=1000 -group_reporting -name=write-libaio >write-libaio.txt

#异步 i/o、顺序混合读写:

fio -filename=/dev/rbd2 -direct=1 -iodepth 1 -thread -rw=readwrite -rwmixread=50 -ioengine=libaio -bs=16k -size=50G -numjobs=30 -runtime=1000 -group_reporting -name=rw-readwrite-libaio >rw-readwrite-psync.txt

#异步 i/o、随机读:

fio -filename=/dev/rbd2 -direct=1 -iodepth 1 -thread -rw=randread -ioengine=libaio -bs=16k -size=50G -numjobs=30 -runtime=1000 -group_reporting -name=randread-libaio >randread-libaio.txt

#异步 i/o、随机写:

fio -filename=/dev/rbd2 -direct=1 -iodepth 1 -thread -rw=randwrite -ioengine=libaio -bs=16k -size=50G -numjobs=30 -runtime=1000 -group_reporting -name=randwrite-libaio >randwrite-libaio.txt

#异步 i/o、随机混合读写:

fio -filename=/dev/rbd2 -direct=1 -iodepth 1 -thread -rw=randrw -rwmixread=50 -ioengine=libaio -bs=16k -size=50G -numjobs=30 -runtime=100 -group_reporting -ioscheduler=noop -name=randrw-libaio >randrw-libaio.txt

说明:

filename=/dev/rbd2 测试文件名称,需要测试的盘的某目录。

direct=1 测试过程绕过机器自带的buffer。使测试结果更真实。

}

read 顺序读

write 顺序写

randwrite 随机写

randread 随机读

rw,readwrite 顺序混合读写

randrw 随机混合读写

}

bs=16k 单次io的块文件大小为16k

bsrange=512-2048 同上,提定数据块的大小范围

size=5g 本次的测试文件大小为5g,以每次4k的io进行测试。

numjobs=30 本次的测试线程为30.

runtime=1000 测试时间为1000秒,如果不写则一直将5g文件分4k每次写完为止。

ioengine=psync io引擎使用pync方式

rwmixread=30  在混合读写的模式下,读占30% ,默认%50,两个参数同时使用,后者覆盖第一

rwmixwrite=30 在混合读写的模式下,写占30% ,默认%50

group_reporting 关于显示结果的,汇总每个进程的信息。

lockmem=1g 只使用1g内存进行测试。

zero_buffers 用0初始化系统buffer。

nrfiles=8 每个进程生成文件的数量。

ioscheduler 尝试切换设备托管文件指定的I / O调度器。

psync  同步i/o测试

libaio  异步i/o测试

libaio的读写过程简单说来就是你发出一个读写请求,然后你可以开始做其他事情,当读写过程结束时libaio会通知你你的这次请求已经完成

(0)

相关推荐

  • 转基因人源化ACE2小鼠模型

    中国医学科学院医学实验动物研究所秦川主导的研究团队全球首先报道建立新冠病毒感染hACE2小鼠模型,该转基因hACE2小鼠模型是应用小鼠mAce2启动子和hACE2基因构建的表达载体,通过原核注射方法获 ...

  • 使用FIO工具测试块存储性能

    Linux实例和Windows实例都推荐使用FIO工具测试块存储性能. 说明 您也可以使用其他工具测试块存储性能,但不同工具测试出来的硬盘基准性能会有差异,如dd.sysbench.iometer等工 ...

  • H3C案例查看:H3C R590G2服务器,P440/P840阵列卡中的smart path功能介绍...

    首先先来了解下,什么是smart path Smart Path的技术介绍: 在传统的IO传递中,一个IO请求需要经过驱动,再经过阵列卡固件控制,通过阵列卡写到硬盘上 SSD Smart Path是一 ...

  • linux web站点常用压力测试工具httperf

    一.工具下载&&安装  软件获取  ftp://ftp.hpl.hp.com/pub/httperf/  这里使用的是如下的版本  ftp://ftp.hpl.hp.com/pub/h ...

  • 10大主流压力测试工具

    在移动应用和Web服务正式发布之前,除了进行必要的功能测试和安全测试,为了保证互联网产品的服务交付质量,往往还需要做压力/负载/性能测试.然而很多传统企业在试水互联网+的过程中,往往由于资源或产品迭代 ...

  • 数据库压力测试工具Hammerdb

    本文主要介绍Hammerdb在OLTP(Online Transaction Processing,联机事务处理)系统中基于TPC-C的测试方法. 数据库压力测试 Database Load Test ...

  • 规范详解:市政消火栓的压力测试(工作视频)

    ♚ 文字 大家好,今天给大家介绍一个规范条文,来自 GB50974-2014<消防给水及消火栓系统技术规范>,是一个强制性条文. 先来看2张我在工作中拍摄的照片,是用消防扳手打开市政消火栓 ...

  • 生活压力测试

    大图模式第一眼圆圈是静止还是转动的?测试结果:这幅静物画是神经学教授山本先生创作的,他说:第一眼看到它不动,或者只是稍微动一下,你是健康的,睡得很好:第一眼看到它移动得很慢,你就会有一点压力或疲惫:第 ...

  • Prescan自动驾驶开发工具链中HIL测试应用案例

    通过使用领先的基于物理学的仿真平台来证明自动驾驶系统的安全性和可靠性,该平台可对自动驾驶车辆功能进行强大的系统测试.Simcenter允许工程师通过遵循系统化的方法来测试.开发和优化自动驾驶系统.这将 ...

  • 嵌入式里如何给内存做压力测试?不妨试试memtester

    大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家介绍的是内存读写正确性压力测试程序memtester. 在嵌入式系统中,内存(RAM)的重要性不言而喻,系统性能及稳定性都与内存息息相关.关于内 ...

  • 《证券分析》 《怎样选择成长股》 《压力测试》 《巴菲特致股东的信》 《杰克韦尔奇自传》 《局外人》...

    [指数探底回升,白酒股领涨两市,数字货币板块大涨,汽车整车.煤炭.二胎概念股表现活跃] 三大指数早盘集体高开,沪指横盘震荡,深成指.创指震荡下行,创指一度跌超1.7%,而后跌幅缩窄.截至午间收盘,沪指 ...