專利名稱:用于存儲i/o需求錄制與壓力模擬驗證的方法
用于存儲j/ο需求錄制與壓力模擬驗證的方法
技術領域:
本發(fā)明涉及VDI環(huán)境下用于存儲I/O需求錄制與壓力模擬驗證的方法。
背景技術:
在桌面虛擬化(VDI)方案中,所有用戶的桌面操作系統(tǒng)及用戶數(shù)據(jù)均存儲在數(shù)據(jù)中心的存儲陣列(獨立的存儲或數(shù)據(jù)中心服務器的本地磁盤陣列)上,存儲陣列的I/o性能是直接影響桌面操作系統(tǒng)使用性能的一個關鍵因素,在VDI方案設計過程中需要綜合考慮成本、存儲陣列的I/O性能、容量等因素,以求在這幾個因素之間取得一個平衡。當前各解決方案廠商在方案設計過程中針對存儲陣列I/O需求的收集與存儲方案設計大都采用如 下方法一、存儲陣列I/O性能需求收集方法主要有如下兩種(I )、在單臺終端上利用Windows系統(tǒng)的性能計數(shù)器收集桌面用戶的存儲I/O性能需求,這種方法需要管理人員在多臺終端上手工設置性能計數(shù)器以收集性能需求數(shù)據(jù),操作繁雜,且通過Windows性能計數(shù)器收集的數(shù)據(jù)只能查看,無法直接用于壓力驗證測試;(2)、使用專用的軟件(該軟件基于Windows系統(tǒng)的麗I接口實現(xiàn))對桌面用戶的存儲I/o性能需求進行收集與記錄,這種方法可以實現(xiàn)在中心控制臺統(tǒng)一收集多個桌面用戶的I/o性能需求數(shù)據(jù),但這些數(shù)據(jù)也只能被簡單應用于查看單臺機器的I. O使用情況,無法做到數(shù)據(jù)的回放利用。二、存儲方案設計方法主要有如下兩種(I)、基于經(jīng)驗數(shù)據(jù)的設計方法,這種方法是根據(jù)以往的經(jīng)驗數(shù)據(jù)進行方案設計,而經(jīng)驗數(shù)據(jù)大都是基于傳統(tǒng)的PC應用模式的數(shù)據(jù),且不同客戶的應用特點不一,對存儲陣列的I/O性能需求也不一樣,因此基于經(jīng)驗數(shù)據(jù)的設計方法不能真實反應桌面虛擬化方案中用戶I/O性能需求,使得設計的方案存在資源過剩、資源不足等問題,從而影響方案的整體成本及整體性能。(2)、基于背景技術中第一點所述的需求收集方法收集的數(shù)據(jù)的平均值進行設計,這種方法存在一些不足,如平均值無法體現(xiàn)用戶需求的峰谷規(guī)律;另外,存儲陣列都配有Cache,用于對用戶的I/O操作進行臨時緩存和合并,以提高響應速度并降低對硬盤的I/O需求,因為每塊機械硬盤的IOPS性能有限,若沒有Cache,則需要的硬盤數(shù)量將會大大增加(一個存儲陣列至少需要2塊硬盤組成,存儲整列是硬盤根據(jù)一定的排列形成)。但不同型號的存儲陣列的存儲處理器(SP)的處理能力不同、Cache不同,因此對用戶I/O操作的臨時緩存和合并能力也不同,換句話,相同的用戶需求在不同型號的存儲陣列上所需的硬盤數(shù)量等也將產(chǎn)生較大的差異,因此這種設計方法不能準確計算出存儲的配置需求,也只能在收集的數(shù)據(jù)的基礎上根據(jù)經(jīng)驗進行設計,因此同樣存在資源過剩、資源不足等問題。公開號為102393829A,
公開日為2012-03-28的發(fā)明專利《一種面向嵌入式系統(tǒng)的磁盤I/o測試系統(tǒng)》,首先,該專利所采用的技術方案是針對常規(guī)模式下嵌入式產(chǎn)品的I/O獲取,其I/O獲取是直接面對物理硬件層,而云計算虛擬化模式,在硬件層面上又增加了虛擬操作系統(tǒng)層,因此在云計算虛擬化模式下,常規(guī)的I/o獲取工具無法直接獲取虛擬環(huán)境下底層的物理硬件層1/0,因為虛擬操作系統(tǒng)層調(diào)用物理硬件層過程會損耗I/O資源,這個損耗的I/o資源通過常規(guī)的I/O獲取工具是無法獲取。而本發(fā)明面對的是云計算虛擬化模式下的I/o獲取,和常規(guī)模式下的I/O計算工具有著本質(zhì)上的區(qū)別,除了需要計算從物理層到虛擬化操作系統(tǒng)層的1/0,還需要獲取虛擬化層上的虛擬桌面的1/0,通過這兩個層級上的I/o來計算最終的I/O需求。其次,該專利所采用的技術方案只是獲取總得I/O需求,而本發(fā)明具備I/o錄制功能,即可對虛擬桌面的任何占用I/O的進程進行錄制,可以區(qū)別每個進程在實際應用過程中,所占用的1/0,實現(xiàn)I/O需求的分類。
發(fā)明內(nèi)容本發(fā)明要解決的技術問題,在于提供一種用于存儲I/O需求錄制與壓力模擬驗證的方法。本發(fā)明是這樣實現(xiàn)的 用于存儲I/O需求錄制與壓力模擬驗證的方法,包括如下步驟步驟I、客戶終端在VDI環(huán)境下,在客戶終端上采集客戶應用過程中對虛擬桌面下占用磁盤I/o的各進程進行錄制,錄制所述各進程在客戶應用過程中的I/O資源需求,并將所述I/o資源需求記錄在錄制文件中,每個客戶終端均保存一份所述錄制文件,將所述錄制文件發(fā)送至服務器;所述I/o資源需求在錄制文件中的格式根據(jù)需要自定義;步驟2、所述服務器將各所述錄制文件匯總成總錄制文件,所述服務器將所述總錄制文件發(fā)送至壓力驗證終端;所述壓力驗證終端為承載有復數(shù)臺虛擬機的物理宿主主機,所述虛擬機是基于虛擬化操作系統(tǒng)上的虛擬機;為每臺虛擬機分配存儲陣列上不同LUN上的虛擬磁盤,所述存儲陣列為所述物理宿主主機的存儲陣列;步驟3 :各所述虛擬機按照所述總錄制文件中記錄的I/O資源需求通過多線程操作模擬位于不同LUN上的虛擬磁盤的讀寫操作,從而執(zhí)行壓力模擬驗證;步驟4:各所述虛擬機將執(zhí)行結果分別保存在回放文件中,然后將各所述回放文件發(fā)送至服務器;所述執(zhí)行結果在所述回放文件中的格式根據(jù)需要自定義;步驟5 :所述服務器將各所述回放文件匯總成總回放文件,所述服務器將所述總錄制文件和所述總回放文件進行分析,給出所述壓力模擬驗證終端上各所述虛擬機的資源配置狀況是否能滿足客戶終端的資源需求的結論,為I/o存儲方案設計提供依據(jù)。進一步地,所述步驟I中的I/O資源需求包括客戶終端的I/O請求類型、I/O請求隊列、I/o請求執(zhí)行時序、每個I/O請求延時以及每個I/O請求響應時間。進一步地,所述步驟4中的執(zhí)行結果包括所述虛擬機的I/O請求類型、I/O請求隊列、I/o請求執(zhí)行時序、每個I/O請求延時以及每個I/O請求響應時間。進一步地,所述步驟3具體為所述壓力驗證終端上的虛擬機讀取所述總錄制文件的I/o請求類型、I/O請求隊列以及I/O請求執(zhí)行時序,通過虛擬機中的虛擬磁盤控制器和虛擬磁盤驅(qū)動,向所述虛擬磁盤發(fā)送所述I/o請求類型、I/O請求隊列以及I/O請求執(zhí)行時序;所述虛擬磁盤在接收到所述I/o請求類型、I/O請求隊列以及I/O請求執(zhí)行時序后,按照所述I/o請求類型、I/O請求隊列以及I/O請求執(zhí)行時序在虛擬磁盤上執(zhí)行同樣的操作,得到所述虛擬機的每個I/O請求延時和每個I/O的請求響應時間,從而執(zhí)行所述壓力模擬驗證。進一步地,所述步驟5中服務器將所述總錄制文件和所述總回放文件進行分析,具體為將所述總錄制文件中I/o資源需求的每個I/O請求延時以及每個I/O請求響應時間與所述總回放文件中執(zhí)行結果的每個I/o請求延時以及每個I/O請求響應時間分別對比;若虛擬機的執(zhí)行結果的每個I/o請求延時小于或等于總錄制文件中I/O資源需求的每個I/O請求延時,且虛擬機的執(zhí)行結果的每個I/O請求響應時間小于或等于總錄制文件中I/o資源需求的每個I/O請求響應時間,則可以做出判定結論,所述壓力模擬驗證終端上各所述虛擬機的資源配置狀況能滿足客戶終端的資源需求;反之,則不滿足。進一步地,所述客戶終端采集所述I/O資源需求的時間段能根據(jù)需要自定義。本發(fā)明具有如下優(yōu)點真實錄制不同客戶終端的存儲I/O資源需求,并將存儲I/O資源需求按定義好的格式保存在錄制文件中,然后通過壓力驗證終端回放所述錄制文件來模擬真實的壓力,真實體現(xiàn)不同類型、不同配置的存儲I/o的虛擬桌面負載能力,保證虛擬桌面用戶體驗,避免資源過?;蛸Y源不足,為存儲方案設計提供有利依據(jù),保證所設計的存儲方案的適用性;同時,需求錄制與多線程壓力回放模擬自動化,降低需求收集及方案設計工作量。
下面參照附圖結合實施例對本發(fā)明作進一步的說明。·
圖I為本發(fā)明方法結構示意圖。
具體實施方式請參閱圖1,對本發(fā)明具體實施例進行詳細說明。用于存儲I/O需求錄制與壓力模擬驗證的方法,具體步驟如下步驟I、客戶終端在VDI環(huán)境下,在客戶終端上采集客戶應用過程中對虛擬桌面下占用磁盤I/o的各進程進行錄制,錄制所述各進程在客戶應用過程中的I/O資源需求,并將所述I/o資源需求記錄在錄制文件中,每個客戶終端均保存一份所述錄制文件,將所述錄制文件發(fā)送至服務器;所述I/o資源需求在錄制文件中的格式根據(jù)需要自定義;所述客戶終端采集所述I/o資源需求的時間段能根據(jù)需要自定義;所述I/O資源需求包括客戶終端的I/o請求類型、I/O請求隊列、I/O請求執(zhí)行時序、每個I/O請求延時以及每個I/O請求響應時間;在本實施例中,客戶終端的數(shù)量至少為一臺,但數(shù)量越多,所采集到的I/o資源需求越真實體現(xiàn)真正的I/O資源需求;步驟2、所述服務器將各所述錄制文件匯總成總錄制文件,所述服務器將所述總錄制文件發(fā)送至壓力驗證終端;所述壓力驗證終端為承載有復數(shù)臺虛擬機的物理宿主主機,所述虛擬機是基于虛擬化操作系統(tǒng)上的虛擬機;為每臺虛擬機分配存儲陣列上不同LUN上的虛擬磁盤,所述存儲陣列為所述物理宿主主機的存儲陣列;所述LUN的全稱是LogicalUnit Number,中文邏輯單元號,是存儲陣列中一個磁盤空間的號碼。所述總錄制文件可在服務器端進行格式轉(zhuǎn)換,轉(zhuǎn)換成服務器可識別的播放格式,例如服務器端的操作系統(tǒng)為windows系統(tǒng),則可以轉(zhuǎn)換為windows識別的1/0播放格式,如big格式,轉(zhuǎn)換過程為本領域CN 102915270 A
書
明
說
4/4頁
現(xiàn)有技術;步驟3、各所述虛擬機按照所述總錄制文件中記錄的I/O資源需求通過多線程操作模擬位于不同LUN上的虛擬磁盤的讀寫操作,從而執(zhí)行壓カ模擬驗證;具體地,所述壓カ驗證終端上的虛擬機讀取所述總錄制文件的I/O請求類型、I/·O請求隊列以及I/O請求執(zhí)行時序,通過虛擬機中的虛擬磁盤控制器和虛擬磁盤驅(qū)動,向所述虛擬磁盤發(fā)送所述I/o請求類型、I/O請求隊列以及I/O請求執(zhí)行時序;所述虛擬磁盤在接收到所述I/o請求類型、I/O請求隊列以及I/O請求執(zhí)行時序后,按照所述I/O請求類型、I/o請求隊列以及I/O請求執(zhí)行時序在虛擬磁盤上執(zhí)行同樣的操作,得到所述虛擬機的每個I/o請求延時和每個I/O的請求響應時間,從而執(zhí)行所述壓カ模擬驗證。步驟4、各所述虛擬機將執(zhí)行結果分別保存在回放文件中,然后將各所述回放文件發(fā)送至服務器;所述執(zhí)行結果在所述回放文件中的格式根據(jù)需要自定義;所述執(zhí)行結果在回放文件中的格式根據(jù)需要自定義;所述執(zhí)行結果包括所述虛擬機的I/O請求類型、I/O請求隊列、I/o請求執(zhí)行時序、每個I/O請求延時以及每個I/O請求響應時間;步驟5、所述服務器將各所述回放文件匯總成總回放文件,所述服務器將所述總錄制文件和所述總回放文件進行分析,具體為將所述總錄制文件中I/o資源需求的每個I/O請求延時以及每個I/O請求響應時間與所述總回放文件中執(zhí)行結果的每個I/O請求延時以及每個I/o請求響應時間分別對比;若虛擬機的執(zhí)行結果的每個I/o請求延時小于或等于總錄制文件中I/o資源需求的每個I/O請求延吋,且虛擬機的執(zhí)行結果的每個I/O請求響應時間小于或等于總錄制文件中I/o資源需求的每個I/O請求響應時間,則可以做出判定結論,所述壓カ模擬驗證終端上各所述虛擬機的資源配置狀況能滿足客戶終端的資源需求;反之,則不滿足,為I/o存儲方案設計提供依據(jù)。所述資源配置狀況包括虛擬磁盤提供的I/o總數(shù)、I/O讀寫請求延時、和I/O讀寫響應時間。需要說明的是,本發(fā)明可以通過所述服務器控制采集和驗證,在所述服務器下達采集指令后,在客戶終端上采集客戶應用過程中應用對磁盤的I/o資源需求;在服務器下達開始測試驗證指令后執(zhí)行壓カ模擬驗證。本發(fā)明具有如下優(yōu)點真實錄制不同客戶終端的存儲I/O資源需求,并將存儲I/O資源需求按定義好的格式保存在錄制文件中,然后通過壓カ驗證終端回放所述錄制文件來模擬真實的壓力,真實體現(xiàn)不同類型、不同配置的存儲I/o的虛擬桌面負載能力,保證虛擬桌面用戶體驗,避免資源過剩或資源不足,為存儲方案設計提供有利依據(jù),保證所設計的存儲方案的適用性;同吋,需求錄制與多線程壓力回放模擬自動化,降低需求收集及方案設計工作量。雖然以上描述了本發(fā)明的具體實施方式
,但是熟悉本技術領域的技術人員應當理解,我們所描述的具體的實施例只是說明性的,而不是用于對本發(fā)明的范圍的限定,熟悉本領域的技術人員在依照本發(fā)明的精神所作的等效的修飾以及變化,都應當涵蓋在本發(fā)明的權利要求所保護的范圍內(nèi)。
權利要求
1.用于存儲I/O需求錄制與壓力模擬驗證的方法,其特征在于,包括如下步驟 步驟I、客戶終端在VDI環(huán)境下,在客戶終端上采集客戶應用過程中對虛擬桌面下占用磁盤I/o的各進程進行錄制,錄制所述各進程在客戶應用過程中的I/O資源需求,并將所述I/o資源需求記錄在錄制文件中,每個客戶終端均保存一份所述錄制文件,將所述錄制文件發(fā)送至服務器;所述I/o資源需求在錄制文件中的格式根據(jù)需要自定義; 步驟2、所述服務器將各所述錄制文件匯總成總錄制文件,所述服務器將所述總錄制文件發(fā)送至壓力驗證終端;所述壓力驗證終端為承載有復數(shù)臺虛擬機的物理宿主主機,所述虛擬機是基于虛擬化操作系統(tǒng)上的虛擬機;為每臺虛擬機分配存儲陣列上不同LUN上的虛擬磁盤,所述存儲陣列為所述物理宿主主機的存儲陣列; 步驟3 :各所述虛擬機按照所述總錄制文件中記錄的I/O資源需求通過多線程操作模擬位于不同LUN上的虛擬磁盤的讀寫操作,從而執(zhí)行壓力模擬驗證; 步驟4:各所述虛擬機將執(zhí)行結果分別保存在回放文件中,然后將各所述回放文件發(fā)送至服務器;所述執(zhí)行結果在所述回放文件中的格式根據(jù)需要自定義; 步驟5 :所述服務器將各所述回放文件匯總成總回放文件,所述服務器將所述總錄制文件和所述總回放文件進行分析,給出所述壓力模擬驗證終端上各所述虛擬機的資源配置狀況是否能滿足客戶終端的資源需求的結論,為I/O存儲方案設計提供依據(jù)。
2.根據(jù)權利要求I所述的用于存儲I/O需求錄制與壓力模擬驗證的方法,其特征在于所述步驟I中的I/O資源需求包括客戶終端的I/O請求類型、I/O請求隊列、I/O請求執(zhí)行時序、每個I/o請求延時以及每個I/O請求響應時間。
3.根據(jù)權利要求I所述的用于存儲I/O需求錄制與壓力模擬驗證的方法,其特征在于所述步驟4中的執(zhí)行結果包括所述虛擬機的I/O請求類型、I/O請求隊列、I/O請求執(zhí)行時序、每個I/o請求延時以及每個I/O請求響應時間。
4.根據(jù)權利要求I所述的用于存儲I/O需求錄制與壓力模擬驗證的方法,其特征在于所述步驟3具體為所述壓力驗證終端上的虛擬機讀取所述總錄制文件的I/O請求類型、I/O請求隊列以及I/O請求執(zhí)行時序,通過虛擬機中的虛擬磁盤控制器和虛擬磁盤驅(qū)動,向所述虛擬磁盤發(fā)送所述I/O請求類型、I/O請求隊列以及I/O請求執(zhí)行時序;所述虛擬磁盤在接收到所述I/o請求類型、I/O請求隊列以及I/O請求執(zhí)行時序后,按照所述I/O請求類型、I/O請求隊列以及I/O請求執(zhí)行時序在虛擬磁盤上執(zhí)行同樣的操作,得到所述虛擬機的每個I/o請求延時和每個I/O的請求響應時間,從而執(zhí)行所述壓力模擬驗證。
5.根據(jù)權利要求4所述的用于存儲I/O需求錄制與壓力模擬驗證的方法,其特征在于所述步驟5中服務器將所述總錄制文件和所述總回放文件進行分析,具體為將所述總錄制文件中I/o資源需求的每個I/O請求延時以及每個I/O請求響應時間與所述總回放文件中執(zhí)行結果的每個I/o請求延時以及每個I/O請求響應時間分別對比;若虛擬機的執(zhí)行結果的每個I/o請求延時小于或等于總錄制文件中I/O資源需求的每個I/O請求延時,且虛擬機的執(zhí)行結果的每個I/o請求響應時間小于或等于總錄制文件中I/O資源需求的每個I/O請求響應時間,則可以做出判定結論,所述壓力模擬驗證終端上各所述虛擬機的資源配置狀況能滿足客戶終端的資源需求;反之,則不滿足。
6.根據(jù)權利要求I所述的用于存儲I/O需求錄制與壓力模擬驗證的方法,其特征在于所述客戶終端采集所述I/o資源需求的時間段能根據(jù)需要自定義。
全文摘要
本發(fā)明提供一種用于存儲I/O需求錄制與壓力模擬驗證的方法,首先在VDI環(huán)境下,真實錄制不同客戶終端的存儲I/O資源需求,并將錄制文件通過服務器轉(zhuǎn)發(fā)至壓力驗證終端,回放總錄制文件模擬真實的壓力,并生成回放文件,所述服務器將所述總錄制文件和總回放文件進行分析,給出所述壓力模擬驗證終上各虛擬機的資源配置狀況是否能滿足客戶終端的資源需求的結論,為I/O存儲方案設計提供依據(jù),避免資源過?;蛸Y源不足,保證所設計的存儲方案的適用性;同時,需求錄制與多線程壓力回放模擬自動化,降低需求收集及方案設計工作量。
文檔編號G06F11/36GK102915270SQ20121034292
公開日2013年2月6日 申請日期2012年9月14日 優(yōu)先權日2012年9月14日
發(fā)明者張輝 申請人:福建升騰資訊有限公司