一種異構混合云環(huán)境下提高映像管理效率的方法
【技術領域】
[0001]本發(fā)明涉及云計算及虛擬機映像管理領域,具體為一種異構混合云環(huán)境下提高映像管理效率的方法。
【背景技術】
[0002]隨著公有云和私有云的發(fā)展與應用,云計算技術的逐步成熟,混合云的概念應運而生。混合云模式是一般由兩個或兩個以上的云(可以為私有或公共云)組成。其核心優(yōu)勢在于,通過使用虛擬化技術,使得用戶不需要預先支付巨大的資本開銷就可以開始運營業(yè)務,并且隨著業(yè)務的發(fā)展可以彈性的改變IT基礎設施的規(guī)模大小,而不需要擔心設備過?;虿蛔?。當面對突然爆發(fā)的峰值環(huán)境下的計算需求時,可以相應地為用戶提供必需的計算資源,而不需要增加額外的基礎設施。
[0003]云計算系統(tǒng)中映像管理主要用來為用戶提供注冊映像、刪除映像、查看映像詳情、更改映像屬性等一系列管理功能,以便于對云計算系統(tǒng)環(huán)境中的虛擬機映像進行統(tǒng)一管理,把所有虛擬機映像構建為一個映像庫,在云計算系統(tǒng)環(huán)境中創(chuàng)建虛擬機時統(tǒng)一從映像庫中獲取映像。因此,虛擬機映像是云計算應用運行的平臺,其執(zhí)行效率對整個云計算系統(tǒng)的運行起到了至關重要的作用。
【發(fā)明內容】
[0004]本發(fā)明為提高云環(huán)境下映像管理效率設計了一種虛擬機映像預取機制,該方法包含了運行在用戶端的虛擬機管理器、預取客戶程序以及運行在服務器端的預取服務程序。預取客戶程序運行在用戶端,是實現(xiàn)預取的關鍵,它主要包含如下三個模塊:按需取塊模塊、預取模塊、預取策略模塊。預取服務程序接收來自預取客戶程序的取塊請求,從服務器端存儲的COW磁盤中讀取請求的磁盤塊,并發(fā)送給用戶端的預取客戶程序。虛擬機管理器的COW虛擬塊設備和預取客戶程序通過共享內存的方式實現(xiàn)通信,它們在虛擬機運行過程中會分別創(chuàng)建兩塊共享內存區(qū):訪問統(tǒng)計信息區(qū)和塊緩存區(qū)。虛擬機管理器和預取客戶程序通過某種同步機制來實現(xiàn)對共享內存區(qū)的讀寫互斥,如鎖、信號量等。
[0005]所述的按需取塊模塊執(zhí)行按需取塊過程,從服務器端獲取虛擬機請求但未在本地緩存的塊。
[0006]所述的預取模塊在按需取塊模塊空閑時,預取模塊在預取策略模塊的配合下執(zhí)行預取過程,從服務器端存儲的COW磁盤中讀取塊并緩存到用戶端。
[0007]所述的預取策略模塊用于實現(xiàn)特定的預取策略和算法,以確定預取目標、預取位置和預取量。
[0008]更進一步的確定預取目標就是確定需要預取的COW磁盤,需要利用虛擬機管理器來實時地獲取虛擬機的磁盤訪問信息,并利用這些信息來實時地識別用戶所使用軟件對應的COW磁盤。預取目標可以是一個或多個COW磁盤,但為了提高預取的針對性,預取目標的數(shù)量不宜過多。確定了預取目標COW磁盤之后,還需要確定從預取目標COW磁盤中何處開始預取。
[0009]所述的預取服務程序采用的隊列調度策略,優(yōu)先服務按需取塊請求隊列中的取塊請求。只有按需取塊請求隊列為空時,才服務預取請求隊列中的預取請求,以減小由于按需取塊給用戶端虛擬機性能造成的影響。對于每條隊列,預取服務程序按照先來先服務(FIFO)的策略來服務隊列中的取塊請求。
[0010]所述的訪問統(tǒng)計信息區(qū)由虛擬機管理器層的COW虛擬塊設備驅動在塊設備初始化時創(chuàng)建,用于記錄虛擬機管理器的COW磁盤訪問統(tǒng)計信息,如COW磁盤訪問計數(shù)值,按需取塊次數(shù)和歷史訪問信息等。預取客戶程序的預取策略模塊利用訪問統(tǒng)計信息區(qū)的信息來確定預取目標。
[0011 ]所述的塊緩存區(qū)由預取客戶程序在程序啟動時創(chuàng)建,用于緩存預取客戶程序從服務器端獲取的COW磁盤塊以提高預取客戶程序的取塊效率和虛擬機管理器的磁盤訪問性能。按需取塊模塊和預取模塊都會將從服務器端獲取的塊保存到塊緩存區(qū)中。
[0012]更進一步的如果虛擬機管理器發(fā)現(xiàn)要讀取的塊不在最新COW磁盤中,則會試圖從塊緩存區(qū)中讀取;塊緩存區(qū)命中的塊越多,越有利于提高虛擬機的磁盤訪問性能。當塊緩存區(qū)中的塊超過一定數(shù)量時,預取客戶程序可以采用一些替換策略將部分磁盤塊寫回對應的影子COW磁盤。
[0013]本申請實施例中提供的一個或多個技術方案,至少具有如下技術效果或優(yōu)點:利用該機制,用戶能夠從未緩存任何虛擬機映像的用戶端直接啟動虛擬機,不需要等待虛擬機映像從服務器端完全傳輸?shù)接脩舳?;同時該預取機制也能夠保證虛擬機在用戶端具有較好的運行性能,提高了運行效率。
【附圖說明】
[0014]下面結合附圖和【具體實施方式】對本發(fā)明作進一步詳細的說明。
[0015]圖1為本發(fā)明的系統(tǒng)框圖。
[0016]圖中:I為虛擬機管理器,2為影子COW磁盤,3為塊緩存區(qū),4為訪問統(tǒng)計信息區(qū),5為本地COW磁盤,6為預取客戶程序,7為預取策略模塊,8為按需取塊模塊,9為預取模塊,10為預取服務程序,11為本地COW磁盤
【具體實施方式】
[0017]如圖1所示,本發(fā)明為一種異構混合云環(huán)境下提高映像管理效率的方法,包括:虛擬機管理器1、預取客戶程序6以及預取服務程序10。預取客戶程序包含三個模塊:按需取塊模塊8、預取模塊9、預取策略模塊7。虛擬機運行過程中會分別創(chuàng)建兩塊共享內存區(qū):訪問統(tǒng)計信息區(qū)4和塊緩存區(qū)3。本地用戶操作影子COW磁盤2、用戶本地COW磁盤5使用云服務。預取服務程序與其服務器端的本地COW磁盤11相連。
[0018]預取過程在后臺異步地進行,對虛擬機管理器是透明的。預取過程的優(yōu)先級比其它取塊過程低。一旦虛擬機管理器有按需取塊請求,按需取塊過程將被優(yōu)先執(zhí)行。預取過程由預取客戶程序的預取模塊和預取服務程序程序實現(xiàn),主要包含如下步驟:
[0019]1.預取策略模塊利用訪問統(tǒng)計信息區(qū)的信息執(zhí)行特定的預取策略,以確定預取目標(COW磁盤)、預取位置(起始塊號)和預取量;
[0020]2.預取模塊根據(jù)預取策略模塊的執(zhí)行結果,向服務器端的預取服務程序發(fā)送取塊請求;
[0021 ] 3.服務器端的預取服務程序接收到請求后,首先將該請求插入預取請求隊列尾部。當服務到該請求時,預取服務程序從相應的COW磁盤中讀取塊并發(fā)送給用戶端的預取模塊模塊,然后返回繼續(xù)處理或等待其它取塊請求;
[0022]4.用戶端的預取模塊模塊將接收到的塊寫入塊緩存區(qū),然后繼續(xù)下一輪預取,SP執(zhí)行步驟1-4。
[0023]更進一步的預取模塊沒有和虛擬機管理器直接交互,而是將預取的塊寫入塊緩存區(qū)后繼續(xù)下一輪預取,不需要虛擬機管理器等待。由于塊緩存區(qū)命中的塊越多,越有利于提高虛擬機的磁盤訪問性能,因此上述預取過程對于提高塊緩存命中率,進而減少按需取塊次數(shù)和提高虛擬機的磁盤訪問效率起著重要作用。
[0024]上述實施例,僅為對本發(fā)明的目的、技術方案和有益效果進一步詳細說明的具體個例,本發(fā)明并非限定于此。凡在本發(fā)明的公開的范圍之內所做的任何修改、等同替換、改進等,均包含在本發(fā)明的保護范圍之內。
【主權項】
1.一種異構混合云環(huán)境下提高映像管理效率方法,其特征在于:該方法包含了運行在用戶端的虛擬機管理器、預取客戶程序以及運行在服務器端的預取服務程序。2.按照權利要求1所述的異構混合云環(huán)境下提高映像管理效率方法,其特征在于,所述預取客戶程序運行在用戶端,主要包含如下三個模塊:按需取塊模塊、預取模塊、預取策略豐旲塊。3.按照權利要求1所述的異構混合云環(huán)境下提高映像管理效率方法,其特征在于,所述預取服務程序接收來自預取客戶程序的取塊請求,從服務器端存儲的COW磁盤中讀取請求的磁盤塊,并發(fā)送給用戶端的預取客戶程序。4.按照權利要求1所述的異構混合云環(huán)境下提高映像管理效率方法,其特征在于,所述虛擬機管理器中的COW虛擬塊設備和預取客戶程序通過共享內存的方式實現(xiàn)通信,它們在虛擬機運行過程中會分別創(chuàng)建兩塊共享內存區(qū):訪問統(tǒng)計信息區(qū)和塊緩存區(qū)。5.按照權利要求2所述的異構混合云環(huán)境下提高映像管理效率方法,其特征在于:所述的預取模塊在按需取塊模塊空閑時,預取模塊在預取策略模塊的配合下執(zhí)行預取過程,從服務器端存儲的COW磁盤中讀取塊并緩存到用戶端。6.按照權利要求2所述的異構混合云環(huán)境下提高映像管理效率方法,其特征在于:所述的預取策略模塊用于實現(xiàn)特定的預取策略和算法,以確定預取目標、預取位置和預取量。7.按照權利要求3所述的異構混合云環(huán)境下提高映像管理效率方法,其特征在于:所述的預取服務程序采用的隊列調度策略,優(yōu)先服務按需取塊請求隊列中的取塊請求。只有按需取塊請求隊列為空時,才服務預取請求隊列中的預取請求。8.按照權利要求4所述的異構混合云環(huán)境下提高映像管理效率方法,其特征在于:所述的訪問統(tǒng)計信息區(qū)由虛擬機管理器層的COW虛擬塊設備驅動在塊設備初始化時創(chuàng)建,用于記錄虛擬機管理器的COW磁盤訪問統(tǒng)計信息。預取客戶程序的預取策略模塊利用訪問統(tǒng)計信息區(qū)的信息來確定預取目標。9.按照權利要求4所述的異構混合云環(huán)境下提高映像管理效率方法,其特征在于:所述的塊緩存區(qū)由預取客戶程序在程序啟動時創(chuàng)建,用于緩存預取客戶程序從服務器端獲取的COW磁盤塊以提高預取客戶程序的取塊效率和虛擬機管理器的磁盤訪問性能。預取模塊都將從服務器端獲取的塊保存到塊緩存區(qū)中。
【專利摘要】本發(fā)明公開了一種異構混合云環(huán)境下提高映像管理效率的方法。該方法包含了運行在用戶端的虛擬機管理器、預取客戶程序以及運行在服務器端的預取服務程序。該方法主要通虛擬機映像預取的方式實現(xiàn),在用戶端虛擬機運行過程中,通過預取客戶程序在后臺預取更多的磁盤塊到用戶端,以使得盡可能多的磁盤訪問在本地進行。預取客戶程序主要包含如下三個模塊:按需取塊模塊、預取模塊、預取策略模塊。一旦用戶所使用軟件對應的底層磁盤塊通過按需取塊和預取過程完全緩存到本地,則用戶能夠獲得和軟件完全本地運行相同的性能,其效率得到極大的提高。
【IPC分類】G06F3/06
【公開號】CN105549913
【申請?zhí)枴緾N201510961349
【發(fā)明人】靜永健, 高靜
【申請人】內蒙古農業(yè)大學
【公開日】2016年5月4日
【申請日】2015年12月22日