日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

vdbench安装及使用

發布時間:2023/12/31 编程问答 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 vdbench安装及使用 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

一、 vdbench簡介

vdbench是一個 I/O 工作負載生成器,用于驗證數據完整性和度量直接附加和網絡連接的存儲的性能。它是一個免費的工具,容易使用,而且常常用于測試和基準測試。
可以使用vdbench測試磁盤和文件系統的讀寫性能。
注:此軟件的帶寬及字節結算單位均為1024進制。

二、 vdbench安裝

  • 環境準備
    Vdbench使用需要有java環境, centos直接yum install jre即可,windows主機上則需要安裝jre,并添加到環境變量中。
  • 程序測試
    環境配置好后,直接在vdbench目錄下執行./vdbench -t進行測試,如果正常,會在目錄下自動生成一個output目錄,否則可嘗試修改下文件及目錄權限后再次進程測試驗證程序可用性。

三、 vdbench使用

1. 測試用例

  • 塊存儲測試(單客戶端):
    按照下述測試用例對具體字段進行解釋:
sd=sd1,lun=[連接iscsi卷名稱1],openflags=o_direct,threads=32 sd=sd2,lun=[連接iscsi卷名稱2],openflags=o_direct,threads=32 sd=sd3,lun=[連接iscsi卷名稱3],openflags=o_direct,threads=32 …… sd=sdn,lun=[連接iscsi卷名稱n],openflags=o_direct,threads=32wd=wd1,sd=sd*,seekpct=0,rdpct=0,xfersize=4k rd=rd1,wd=wd1,iorate=max,elapsed=600,interval=5,warmup=30

在1-5行中說明了測試使用的磁盤,sd為自定義名稱,一般從sd1起命名,lun為測試時使用的卷的名稱,openflag設置讀寫操作方式,一般為o_direct,即以無緩沖緩存的方式進行讀寫操作,threads規定了測試使用線程數;
第七行中規定了工作負載,wd為自定義工作負載名稱,sd設置工作負載中使用到的存儲設備,例中sd*則表示此工作負載使用了全部以sd開頭的存儲設備,seekpct為隨機操作比例,為0則為順序操作,rdpct為讀操作比例,為0即為此工作負載全部為寫操作,xfersize為操作數據的大小;
最后一行中設定了運行參數,rd為運行定義的名稱,wd為使用到的工作負載名稱,iorate為測試時的速率,max即為以最大的速率進行測試,elapsed為正式測試時長,interval為命令行打印輸出的時間間隔,warmup為預測試的時長(預測試時間內的測試值不會計入最終測試結果中),elapsed、interval和warmup的單位均為s。

  • 塊存儲測試(多客戶端):
    多客戶端測試前,首先要確定主測試客戶端,保證每個測試客戶端上均可正常運行vdbench測試軟件,且主測試客戶端可以和其他測試客戶端通過ssh免密訪問。
    按照下述測試用例對具體字段進行解釋:
hd=default,vdbench=/home/vdbench50407,user=root,shell=ssh hd=hd1,system=localhost hd=hd2,system=[測試客戶端1 IP] hd=hd3,system=[測試客戶端2 IP] hd=hd4,system=[測試客戶端3 IP]sd=sd1,hd=hd1,lun=[hd1連接iscsi卷名稱1],openflags=o_direct,threads=32 sd=sd2,hd=hd1,lun=[hd1連接iscsi卷名稱2],openflags=o_direct,threads=32 sd=sd3,hd=hd2,lun=[hd2連接iscsi卷名稱1],openflags=o_direct,threads=32 …… sd=sdn,hd=hd4,lun=[hd4連接iscsi卷名稱n],openflags=o_direct,threads=32wd=wd1,sd=sd*,seekpct=0,rdpct=0,xfersize=4k rd=rd1,wd=wd1,iorate=max,elapsed=600,interval=5,warmup=30

在第一行中說明了測試客戶端的默認設置,vdbench說明了默認的vdbench軟件存放位置,user為客戶端用戶名,shell為ssh,說明通過ssh訪問;
第2-5行中說明了測試客戶端,hd為自定義客戶端名稱,system為測試客戶端ip地址,本地可用localhost代替,若存放目錄或用戶名等項與第一行default中不一致,可再單獨添加參數聲明文件位置及用戶信息;
第7-11行中說明了使用的磁盤,hd參數說明了lun參數指定的卷是在哪個客戶端上的,其余參數與單客戶端時一致;
其余設置均與單客戶端一致,不再贅述。

  • 文件存儲測試(單客戶端):
    文件存儲測試與塊存儲測試的區別在于,塊存儲測試會直接寫入或讀取數據,不管掛載磁盤的狀態,但文件存儲測試在測試前會預先寫入測試所需要的文件,即下方陳述的fsd中的文件及目錄,所有文件及目錄按照設定寫入完畢后,才會進行正式測試,所以,一般來說,文件測試耗時會比塊存儲測試長很多。
    按照下述測試用例對具體字段進行解釋:
fsd=fsd1,anchor=[被測文件存儲掛載目錄],depth=2,width=10,files=2000,size=4M fwd=fwd1,fsd=fsd1,operation=read,xfersize=4M,fileio=random,fileselect=random,threads=32 rd=rd1,fwd=fwd1,fwdrate=max,format=no,elapsed=600,interval=10

在第一行中說明了測試使用的文件目錄,fsd為自定義文件系統名稱,anchor為測試文件目錄,depth為測試時目錄的深度,width為測試時每個文件夾的子文件夾個數,files為單文件夾中文件的個數,size為文件大小,以上例為例,測試時測試目錄創建10個目錄,在此10個目錄中各再創建10個子目錄,共110個目錄,每個最底層目錄中存放2000個文件,共20w個文件,每個文件大小為4MiB;
第二行中規定了文件工作負載,fwd為自定義文件工作負載名稱,fsd設置工作負載中使用到的文件系統,operation為操作類型,可選設read或write,xfersize為數據傳輸數據大小,fileio為文件操作方式,可選設random和sequential,threads為測試使用線程數;
最后一行中設定了運行參數,rd為運行定義的名稱,fwd為使用到的文件工作負載名稱,fwdrate為測試時的速率elapsed為正式測試時長,interval為命令行打印輸出的時間間隔,elapsed和interval的單位均為s,format為預處理文件目錄的方式,no為不刪除已有文件直接進行測試,yes為無論是否已有文件目錄,均刪除后重新寫入,restart為若已有文件目錄,則直接運行測試,若無則新寫入文件目錄。

  • 文件存儲測試(多客戶端):
    文件存儲多客戶端測試前,和塊存儲一樣,需要先確認各個客戶端可以ssh免密訪問。
    按照下述測試用例對具體字段進行解釋:
hd=default,vdbench=/home/vdbench50407,user=root,shell=ssh hd=hd1,system=localhost hd=hd2,system=[測試客戶端1 IP] hd=hd3,system=[測試客戶端2 IP] hd=hd4,system=[測試客戶端3 IP]fsd=fsd1,anchor=[hd1被測文件存儲掛載目錄],depth=2,width=10,files=2000,size=4M fsd=fsd2,anchor=[hd2被測文件存儲掛載目錄],depth=2,width=10,files=2000,size=4M fsd=fsd3,anchor=[hd3被測文件存儲掛載目錄],depth=2,width=10,files=2000,size=4M fsd=fsd4,anchor=[hd4被測文件存儲掛載目錄],depth=2,width=10,files=2000,size=4Mfwd=fwd1,fsd=fsd1,host=hd1,operation=read,xfersize=4M,fileio=random,fileselect=random,threads=32 fwd=fwd2,fsd=fsd2,host=hd2,operation=read,xfersize=4M,fileio=random,fileselect=random,threads=32 fwd=fwd3,fsd=fsd3,host=hd3,operation=read,xfersize=4M,fileio=random,fileselect=random,threads=32 fwd=fwd4,fsd=fsd4,host=hd4,operation=read,xfersize=4M,fileio=random,fileselect=random,threads=32rd=rd1,wd=wd1,iorate=max,elapsed=600,interval=5,warmup=30

在第1-5行中說明了測試客戶端設置,與塊存儲多客戶端測試一致,不再贅述;
第7-10行中說明了測試使用的文件目錄,參數意義與單客戶端時一致,不再贅述,需要注意的是,以上例方式進行測試時,需要每個fsd的anchor值均不一致,若一致,則需要加上參數shared=yes,且測試中用到的文件個數為所有fsd中聲明的文件個數之和;
第12-15行中說明了文件工作負載配置,與單客戶端不一致的是增加了一個參數host,在host上聲明了工作負載工作的測試客戶端;
其余設置均與單客戶端一致,不再贅述。

2. 測試執行

單客戶端執行測試時,在vdbench文件目錄下執行命令行./vdbench -f [測試用例文件] 即可;
多客戶端測試時,則需在主測試客戶端上執行上述命令;
上述命令也可加-o參數指定測試結果輸出目錄,還可加入-jn參數進行測試數據校驗。

3. 結果查看

在測試中查看打印即可查看實時測試結果,測試完成后,也會在命令行匯總輸出最終測試結果。

interval為avg的一行均為最終測試結果,i/o為每秒平均io操作數,MB/sec為平均每秒帶寬,bytes為每io操作的字節大小,read pct為讀百分比,resp time為平均響應時長,write resp為平均寫時延,read resp為讀平均時延,read max為讀最大時延,write max為寫最大時延。
此外,測試結束后,也可在output文件夾或測試執行時指定的輸出文件夾中查看測試結果,以下為output文件夾中各個文件包括的內容:

  • errorlog.html:文件中顯示測試時出現的一些錯誤信息,包括io錯誤信息和數據無效信息等;
  • histogram.html:一種包含報告柱狀圖的響應時間的文件,此報告只在文件測試后有數據內容;
  • logfile.html:包含Java 代碼寫入控制臺窗口的每行信息的副本,logfile.html 主要用于調試用途;
  • parmfile.html:包含測試運行配置參數信息;
  • summary.html:記錄全部數據信息,顯示每個報告間隔內總體性能情況及工作負載情況,以及除預測試時間外的所有間隔的加權平均值;
  • totals.html:記錄全部數據計算之后的平均值,一般測試結果從該文件取值,除預測試時間外所有間隔的加權平均值。

總結

以上是生活随笔為你收集整理的vdbench安装及使用的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。