一、压测类型
1、顺序读(IO):read,bs=1M,job数从1开始往上加:2、3、4...
2、顺序写(IO):write,bs=1M,job数从1开始往上加:2、3、4...
3、随机读(iops):randread,bs=8k,job数从8开始往上加:8、12、16、20...
4、随机写(iops):randread,bs=8k,job数从8开始往上加:8、12、16、20...
5、混合读写:rw
二、步骤
创建压测所需文件夹,在文件夹下分别创建read,write,randread,randwrite这四个文件,向其中添加脚本文件,配置对应的bs大小,并更改job数,来达到压测时的目的。
各项参数解释:
1、numjobs:工作数
2、rw:读写方式,这里对应压测类型
3、bs:块儿大小
4、runtime:运行时间,一般设置100s
5、ioengine:压测引擎,一般默认
6、direct值为1表示不经过缓存直接对硬盘进行压测
7、iodepth:表示压测的深度,默认为1
8、文件(磁盘路径):这里添加需要压测磁盘的路径
三、注意事项
1、面对rac集群中的各个节点,所有计算节点需要同时压测
2、如果磁盘已经创建了磁盘组(ASM),禁止使用fio压测,否则磁盘组就会挂掉,数据库挂掉。解决办法:并删除数据库(生产环境慎用),将磁盘组删除(首先将两个节点的磁盘组dismount,接着drop磁盘组)
四、执行
挨个执行
fio read
fio write
fio randread
fio randwrite
举例:共有两个计算节点,两个节点都执行fio read
以上是顺序读的压测报告,重点关注BW这项参数,这就是我们所需要的值,将两个计算节点测到的BW值进行相加就是需要的压测值。