一、源码安装fio工具:

#yum install libaio-devel make

#wget http://brick.kernel.dk/snaps/fio-2.2.10.tar.gz

#tar -zxvf fio-2.2.10.tar.gz
#cd fio-2.2.10
#make $ make install

 

参数解释:

--ioengine  io引擎使用liba的方式

--iodepth 控制同一时刻发送给os多少个IO

--numjobs  测试线程数

--direct=1  测试过程绕过机器自带的buffer

--group_reporting  显示结果的,汇总每个进程的信息

--time_based --runtime  时间设置

二、Local SCSI场景测试:

8k随机读:fio --name=test --output=8krr -thread --rw=randread --bs=8k --ioengine=libaio --iodepth=64 --numjobs=8 --filename=/dev/sdp --direct=1 --time_based --runtime=7200  --group_reporting

8k随机写:fio --name=test --output=8krw -thread --rw=randwrite --bs=8k --ioengine=libaio --iodepth=64 --numjobs=8 --filename=/dev/sdp --direct=1 --time_based --runtime=7200 --group_reporting

8k顺序读:fio --name=test --output=8kr1 -thread --rw=read --bs=8k --ioengine=libaio --iodepth=64 --numjobs=8 --filename=/dev/sdp --direct=1 --time_based --runtime=7200 --group_reporting

8k顺序写:fio --name=test --output=8kr1 -thread --rw=write --bs=8k --ioengine=libaio --iodepth=64 --numjobs=8 --filename=/dev/sdp --direct=1 --time_based --runtime=7200 --group_reporting

三、虚拟NBU测试场景(移除节点、加入节点测试):

fio --name=test --output=8krr -thread --rw=randread --bs=8k --ioengine=libaio --iodepth=64 --numjobs=8 --filename=/dev/sda --direct=1 --time_based --runtime=7200  --group_reporting

四、物理机测试场景(5台不同物理机,移除节点、加入节点测试):

写:fio --name=test --output=8krw -thread --rw=randwrite --bs=8k --ioengine=libaio --iodepth=64 --numjobs=8 --filename=/dev/sdb1 --direct=1 --allow_mounted_write=1  --time_based --runtime=7200  --group_reporting

读:fio --name=test --output=8krr -thread --rw=randread --bs=8k --ioengine=libaio --iodepth=64 --numjobs=8 --filename=/dev/sdb1 --direct=1  --time_based --runtime=7200  --group_reporting

五、数据获取方法

客户端加入zabbix监控,获取系统资源数据变化过程;

Ceph集群服务端直接在ceph集群页面获取系统资源数据变化过程;

业务性能的测试带宽和iops数据从生成的报告中获取。

最新文章

  1. C++内存对齐总结
  2. Android—自定义标题栏的实现及遇见的问题解决
  3. Javascript中判断数组的正确姿势
  4. JSP页面以及简单的指令
  5. 【20160924】GOCVHelper综述
  6. 61. Rotate List
  7. 怎么在eclipse里调试WebDriver的源代码
  8. HDU 1015 Safecracker 解决问题的方法
  9. 参数传递方法(Delphi1.0与win16API使用pascal方法,即从左到右)
  10. FastJson--阿里开源的速度最快的Json和对象转换工具
  11. I/O多路复用、协程、线程、进程
  12. maven(win10)配置完环境变量后无法识别mvn -v命令
  13. Loadrunner常用目录、组成部分及负载测试流程
  14. Spring第一个helloWorld
  15. Python中的分支结构和循环结构
  16. Go语言中异常处理painc()和recover()的用法
  17. Windows下搭建FTP服务器
  18. c++——静态成员变量成员函数
  19. 以太坊go-ethereum常见问题汇总
  20. OOP 1.3 动态内存分配

热门文章

  1. Spring笔记 #02# 利用切面和注解校验方法参数
  2. 剑指offer(54)字符流中第一个不重复的数字
  3. topcoder srm 570 div1
  4. 彻底删除windows残留启动引导
  5. leetcode 编译问题:Line x: member access within null pointer of type 'struct TreeNode'
  6. [从零开始搭网站八]CentOS使用yum安装Redis的方法
  7. leecode第一百五十五题(最小栈)
  8. ONOS架构-系统组件
  9. 『TensorFlow』读书笔记_TFRecord学习
  10. django中邮件、日志的配置