io测试

nmon

下载nmon安装包

#这里下载的centos系统的nmon包
tar -zxvf centos7.tar.gz
mv nmon_x86_64_centos7 /usr/local/bin/nmon
nmon_analyser

下载zip包

  1. 在物理机上解压文件
  2. 使用Excel打开nmon analyser v60.xlsm
  3. 选择左下放的Analyser
  4. 点击跳转的页面中的Analyze nmon data
  5. 选择*.nmon文件(使用nmon生成)
  6. 保存并打开生成的xlsx文件

如果提示不能使用,未安装VBA。需要去下载安装。(搜索vba6.3 盘多多)

测试
  • 挂载使用sdb盘
[root@db_node ~]# df -hT | grep sdb
/dev/sdb              ext4       20G  2.4G   17G   13% /sdb
  • 收集数据
#-s5 每隔5s收集一次。
#-c20 收集20次。
#-f 按标准格式输出文件:_YYYYMMDD_HHMM.nmon
#-m /root/ 指定保存文件路径
nmon -s1 -c60 -f -m /root/
fio

队列深度(iodepth):SCSI以32为准,SATA以256为标准。

方式(ioengine):异步(libaio)

块大小(bs):按照读写数据大小而定

#查看队列
lsscsi -l
hdparm -I /dev/sd* #SCSI格式磁盘只能通过lsscsi查看。
read:顺序读测试,使用方式-rw=read

write:顺序写测试,使用方式-rw=write

randread:随机读测试,使用方式-rw=randread

randwrite:随机写测试,使用方式-rw=randwrite

readwrite/rw:顺序读写

randrw:随机读写,-rw=randrw;默认比率为5:5,通过参数-rwmixread设定读的比率,如-rw=randrw -rwmixread=70,说明读写比率为70:30。或rwmixwrite
  • 100%随机,100%读, 4K

fio -filename=/dev/sdb -direct=1 -iodepth 1 -thread -rw=randread -ioengine=libaio -bs=4k -size=1G -runtime=180 -group_reporting -name=rand_100read_4k

  • 100%随机,100%写, 4K

fio -filename=/dev/sdb -direct=1 -iodepth 1 -thread -rw=randwrite -ioengine=libaio -bs=4k -size=1G -runtime=180 -group_reporting -name=rand_100write_4k

  • 100%顺序,100%读 ,4K

fio -filename=/dev/sdb -direct=1 -iodepth 1 -thread -rw=read -ioengine=libaio -bs=4k -size=1G -runtime=180 -group_reporting -name=sqe_100read_4k

  • 100%顺序,100%写 ,4K

fio -filename=/dev/sdb -direct=1 -iodepth 1 -thread -rw=write -ioengine=libaio -bs=4k -size=1G -runtime=180 -group_reporting -name=sqe_100write_4k

  • 100%随机,70%读,30%写 4K

fio -filename=/dev/sdb -direct=1 -iodepth 1 -thread -rw=randrw -rwmixread=70 -ioengine=libaio -bs=4k -size=1G -runtime=180 -group_reporting -name=randrw_70read_4k

  • 100%顺序,70%读,30%写 4K

fio -filename=/dev/sdb -direct=1 -iodepth 1 -thread -rw=readwrite -rwmixread=70 -ioengine=libaio -bs=4k -size=1G -runtime=180 -group_reporting -name=randrw_70read_4k

dd
  • 单读
#测试sdb的读取速度
[root@db_node ~]# time dd if=/dev/sdb of=/dev/null bs=8k count=300000
记录了300000+0 的读入
记录了300000+0 的写出
2457600000字节(2.5 GB)已复制,24.0586 秒,102 MB/秒
  • 单写
#测试sdb的写入速度
[root@db_node ~]# time dd if=/dev/zero of=/sdb/test.disk bs=8k count=300000 conv=fsync
#conv=fsync加入这个参数后,dd命令执行到最后会真正执行一次“同步(sync)”操作,避免操作系统“写缓存”干扰。
  • 读写
[root@db_node ~]# time dd if=/dev/sdb of=/sdb/test.disk bs=8k count=300000
记录了300000+0 的读入
记录了300000+0 的写出
2457600000字节(2.5 GB)已复制,66.7372 秒,36.8 MB/秒

real	1m7.458s
user	0m0.199s
sys	0m11.566s
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值