使用附件腳本進行測試:ios
1. 下載安裝fio 緩存
a. Centos 7.x: 安全
yum install epel-release ide
yum install -y fio性能
a. Centos 6.x:測試
yum install libibverbs.x86_64spa
wget http://mirror.ghettoforge.org/distributions/gf/el/6/plus/x86_64//fio-2.1.11-1.gf.el6.x86_64.rpm.net
rpm -iv fio-2.1.10-1.el6.rf.x86_64.rpmorm
2. 以管理員身份登陸虛擬機, 切換成root.blog
3. 執行命令: fio --name=/mnt/p20/randwrite --ioengine=libaio --iodepth=128 --rw=randwrite --bs=64k --direct=1 --size=25G --numjobs=1 --runtime=30 --group_reporting
4. 命令說明: --bs 讀寫的block大小, 不一樣block大小, 對磁盤的IOPS有必定的影響; -rw, 讀寫的類型,詳細類型參考 man fio; –size, 測試讀寫數據量, 根據實際的磁盤空間, 選用合適大小的讀寫數據量, 已保障磁盤有足夠的讀寫時間.
5. 同時在另外個命令終端, 執行命令: iostat -x 1
6. 命令說明: iostat統計磁盤讀寫性能, 每秒統計一次. 對於iops的指標, 參考 r/s 和 w/s列.
如下查看測試命令,DS虛擬機操做示例請參考:
[root@DS13IOTEST ~]# uname -a
Linux DS13IOTEST 2.6.32-431.29.2.el6.x86_64 #1 SMP Tue Sep 9 21:36:05 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux
[root@DS13IOTEST ~]# fio --version
fio-2.1.10
[root@DS13IOTEST ~]# modinfo hv_vmbus
filename: /lib/modules/2.6.32-431.29.2.el6.x86_64/weak-updates/microsoft-hyper-v/hv_vmbus.ko
version: 4.1.2
license: GPL
srcversion: 82B9AE7A2B6BFE26B1AC6A4
alias: acpi*:VMBus:*
alias: acpi*:VMBUS:*
depends:
vermagic: 2.6.32-431.el6.x86_64 SMP mod_unload modversions
[root@DS13IOTEST ~]# mount -O barrier=0 /dev/sdc1 /datadrive512G
[root@DS13IOTEST ~]# df -T
[root@DS13IOTEST ~]# ./fio.sh /datadrive512G >p20_fio_report
對臨時盤進行測試:
[root@DS13IOTEST ~]# ./fio.sh /mnt/resource > temdisk_fio_report
[root@DS13IOTEST ~]# cat temdisk_fio_report | grep iops
不使用腳本,命令直接測試:
測試環境:
· Centos 6.5虛擬機【未更新LIS】
· 對該虛擬機添加一塊10GB數據磁盤,無讀寫緩存
測試結果:
1. 測試命令:[root@iopstest01 ~]# fio -directory=/mnt/test01 -name=tempfile.dat -direct=1 -rw=randwrite -bs=4k -size=2G -numjobs=16 -time_based -runtime=100 -group_reporting
測試結果基本符合官方文檔中,對於不一樣大小數據磁盤IOPS的指標數據
2. 在fio命令中,若是使用-filename參數,應該使用設備名,由於-filename參數是要指定某個要測試的裸設備
當咱們使用[root@iopstest01 ~]# fio -filename=/dev/sdc1 -direct=1 -iodepth=1 -thread -rw=randwrite -ioengine=psync -bs=4k -size=5G -numjobs=10 -runtime=120 -group_reporting -name=tempfile.dat
測試結果的IOPS值,和使用-directory參數基本保持一致
3. 備註:爲了您的數據安全。根據咱們以前處理工單的經驗,對於已有文件系統的分區,建議您使用fio命令的時候,使用參數-directory而不是-filename,由於-filename會破壞系統分區,致使被測試磁盤上面的文件系統損壞,這樣即便將該磁盤掛載到其它VM上,也沒法經過fsck進行修復。
這個狀況並非僅僅在Azure上面存在,在任何環境下都會發生【咱們對本地hyper-v及vmvare虛擬環境,對相應虛擬機執行此操做都會遇到文件系統損壞的狀況】,請您周知。
關於上面提到的第2點和第3點,在網上也找到了相似的文章,供您參考:【http://blog.csdn.net/commsea/article/details/11797011 】