1、源码安装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 installspa
参数解释:线程
--ioengine io引擎使用liba的方式进程
--iodepth 控制同一时刻发送给os多少个IO资源
--numjobs 测试线程数get
--direct=1 测试过程绕过机器自带的buffer源码
--group_reporting 显示结果的,汇总每一个进程的信息it
--time_based --runtime 时间设置
2、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
3、虚拟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
4、物理机测试场景(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
5、数据获取方法
客户端加入zabbix监控,获取系统资源数据变化过程;
Ceph集群服务端直接在ceph集群页面获取系统资源数据变化过程;
业务性能的测试带宽和iops数据从生成的报告中获取。