一、壓測類型
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值進行相加就是需要的壓測值。