專利名稱:基于云存儲(chǔ)的快速訪問(wèn)虛擬機(jī)鏡像的緩存系統(tǒng)及其方法
技術(shù)領(lǐng)域:
本發(fā)明涉及云計(jì)算技術(shù)領(lǐng)域,特指一種基于云存儲(chǔ)的快速訪問(wèn)虛擬機(jī)鏡像的緩存系統(tǒng)及其方法。
背景技術(shù):
云計(jì)算是分布式處理(Distributed Computing)、并行處理(Parallel Computing)和網(wǎng)格計(jì)算(Grid Computing)的發(fā)展,其基本原理是在網(wǎng)絡(luò)中通過(guò)大量的計(jì)算機(jī)同時(shí)運(yùn)行同一個(gè)任務(wù),每臺(tái)計(jì)算機(jī)就稱為一個(gè)節(jié)點(diǎn)。而這些節(jié)點(diǎn)并不是傳統(tǒng)意義上的依靠CPU、主板、內(nèi)存條等硬件組裝起來(lái)的計(jì)算機(jī),而是在傳統(tǒng)的計(jì)算機(jī)上通過(guò)虛擬化技術(shù)虛擬出來(lái)的計(jì)算機(jī),這些虛擬出來(lái)的計(jì)算機(jī)就叫虛擬機(jī),云計(jì)算的核心就是以虛擬機(jī)作為分配計(jì)算資源的單位。云存儲(chǔ)是在云計(jì)算(cloud computing)概念上延伸和發(fā)展出來(lái)的一個(gè)新的概念, 是指通過(guò)集群應(yīng)用、網(wǎng)格技術(shù)或分布式文件系統(tǒng)等功能,將網(wǎng)絡(luò)中大量各種不同類型的存儲(chǔ)設(shè)備通過(guò)應(yīng)用軟件集合起來(lái)協(xié)同工作,共同對(duì)外提供數(shù)據(jù)存儲(chǔ)和業(yè)務(wù)訪問(wèn)功能的一個(gè)系統(tǒng)。由此可見(jiàn),云計(jì)算和云存儲(chǔ)系統(tǒng)是互有關(guān)聯(lián)的,與云計(jì)算系統(tǒng)相比,云存儲(chǔ)可以認(rèn)為是配置了大容量存儲(chǔ)空間的一個(gè)云計(jì)算系統(tǒng)。如何能有效的將云計(jì)算和云存儲(chǔ)結(jié)合起來(lái)是一個(gè)很值得探討的話題。然而在云存儲(chǔ)基礎(chǔ)之上來(lái)提供虛擬機(jī)鏡像的快速存取卻還沒(méi)有見(jiàn)到很好的實(shí)現(xiàn)。
發(fā)明內(nèi)容
本發(fā)明解決問(wèn)題技術(shù)問(wèn)題之一在于提供一種基于云存儲(chǔ)的快速訪問(wèn)虛擬機(jī)鏡像的緩存系統(tǒng),該系統(tǒng)利用云存儲(chǔ)系統(tǒng)強(qiáng)大的存儲(chǔ)能力,提供虛擬機(jī)鏡像的存儲(chǔ),在此基礎(chǔ)上實(shí)現(xiàn)對(duì)虛擬機(jī)鏡像緩存的快速訪問(wèn)。本發(fā)明解決問(wèn)題技術(shù)問(wèn)題之二在于提供一種基于云存儲(chǔ)的快速訪問(wèn)虛擬機(jī)鏡像的方法。本發(fā)明解決上述技術(shù)問(wèn)題之一的技術(shù)方案是包括有服務(wù)處理模塊、節(jié)點(diǎn)緩存管理模塊、云存儲(chǔ)服務(wù)處理模塊和云存儲(chǔ)服務(wù)處理模塊;所述的服務(wù)處理模塊部署于計(jì)算節(jié)點(diǎn)上,用于接收請(qǐng)求、處理請(qǐng)求、決定是否執(zhí)行請(qǐng)求以及分發(fā)請(qǐng)求;所述的節(jié)點(diǎn)緩存管理模塊部署于計(jì)算節(jié)點(diǎn)上,用于將新的鏡像文件保存到本地節(jié)點(diǎn)緩存,查找本地節(jié)點(diǎn)上已緩存的虛擬機(jī)鏡像;所述的云存儲(chǔ)服務(wù)處理模塊部署于管理節(jié)點(diǎn)上,用于從云存儲(chǔ)系統(tǒng)獲取鏡像文件塊,并對(duì)這些文件塊進(jìn)行操作,使其還原為一個(gè)可用的鏡像文件;所述的前端緩存管理模塊部署于管理節(jié)點(diǎn)上,管理前端管理節(jié)點(diǎn)上的緩存文件, 在本地緩存中查找虛擬機(jī)鏡像,將虛擬機(jī)鏡像文件保存到本地緩存。
本發(fā)明解決上述技術(shù)問(wèn)題之二的技術(shù)方案是包括以下步驟第1步,計(jì)算節(jié)點(diǎn)的服務(wù)處理模塊接收到創(chuàng)建虛擬機(jī)的Web服務(wù)請(qǐng)求;第2步,計(jì)算節(jié)點(diǎn)上的服務(wù)處理模塊判斷本地節(jié)點(diǎn)是否有足夠的資源執(zhí)行該請(qǐng)求;如果能,執(zhí)行第3步;如果否,計(jì)算節(jié)點(diǎn)上的服務(wù)處理模塊會(huì)將該Web服務(wù)請(qǐng)求分發(fā)給其他計(jì)算節(jié)點(diǎn);第3步,計(jì)算節(jié)點(diǎn)上的節(jié)點(diǎn)緩存管理模塊根據(jù)Web服務(wù)請(qǐng)求查找匹配的虛擬機(jī)鏡像文件;如果存在,節(jié)點(diǎn)緩存管理模塊將匹配的緩存結(jié)果返回給服務(wù)處理模塊,服務(wù)處理模塊處理該請(qǐng)求;如果不存在,服務(wù)處理模塊將請(qǐng)求中的鏡像文件信息發(fā)送到管理節(jié)點(diǎn)上, 執(zhí)行第4步;第4步,管理節(jié)點(diǎn)接收到Web Service請(qǐng)求后,前端緩存管理模塊查找相匹配的緩存數(shù)據(jù);如果存在,前端節(jié)點(diǎn)將緩存結(jié)果返回給計(jì)算節(jié)點(diǎn)上的服務(wù)處理模塊,同時(shí)計(jì)算節(jié)點(diǎn)上的服務(wù)處理模塊將緩存該結(jié)果;如果不存在,執(zhí)行第5步;第5步,管理節(jié)點(diǎn)上的云存儲(chǔ)服務(wù)處理模塊根據(jù)虛擬機(jī)鏡像文件的描述,前往云存儲(chǔ)系統(tǒng)中查找虛擬機(jī)鏡像文件塊;如果存在,執(zhí)行第6步;如果不存在,將查詢結(jié)果返回給發(fā)送該請(qǐng)求的計(jì)算節(jié)點(diǎn);第6步,管理節(jié)點(diǎn)上的云存儲(chǔ)服務(wù)處理模塊對(duì)虛擬機(jī)鏡像文件塊進(jìn)行解密,并將文件塊合并后還原成完整的虛擬機(jī)鏡像;第7步,管理節(jié)點(diǎn)上的前端緩存管理模塊將新的虛擬機(jī)鏡像放入緩存中。所述Web服務(wù)請(qǐng)求包括服務(wù)請(qǐng)求類別、參數(shù)和結(jié)果。所述第2步,如果本地計(jì)算節(jié)點(diǎn)沒(méi)有足夠的資源執(zhí)行該Web服務(wù)請(qǐng)求,本地計(jì)算節(jié)點(diǎn)上的服務(wù)處理模塊將該請(qǐng)求類別和參數(shù)以Web服務(wù)格式發(fā)送給其他計(jì)算節(jié)點(diǎn)。所述第4步,如果管理節(jié)點(diǎn)上的前端緩存處理模塊在緩存系統(tǒng)中查到了相匹配的虛擬機(jī)鏡像文件,計(jì)算節(jié)點(diǎn)在執(zhí)行Web服務(wù)請(qǐng)求時(shí)也會(huì)緩存該虛擬機(jī)鏡像到本地緩存中。所述第5步,如果云存儲(chǔ)系統(tǒng)中不存在符合虛擬機(jī)鏡像描述的記錄,計(jì)算節(jié)點(diǎn)會(huì)提示系統(tǒng)出現(xiàn)錯(cuò)誤。所述第7步,管理節(jié)點(diǎn)上緩存數(shù)據(jù)的元信息是存儲(chǔ)在嵌入式數(shù)據(jù)庫(kù)中。采用本發(fā)明的系統(tǒng)和方法能充分縮短虛擬機(jī)創(chuàng)建時(shí)間,避免各個(gè)節(jié)點(diǎn)之間重復(fù)的數(shù)據(jù)傳輸,加大網(wǎng)絡(luò)帶寬利用率;提高運(yùn)行速度。
下面結(jié)合附圖對(duì)本發(fā)明進(jìn)一步說(shuō)明圖1是本發(fā)明基于云存儲(chǔ)的快速訪問(wèn)虛擬機(jī)鏡像的緩存系統(tǒng)示意圖;圖2是本發(fā)明基于云存儲(chǔ)的快速訪問(wèn)虛擬機(jī)鏡像的緩存系統(tǒng)實(shí)施步驟的示意圖。
具體實(shí)施方式
見(jiàn)圖1所示,本發(fā)明包括有服務(wù)處理模塊1、節(jié)點(diǎn)緩存管理模塊2、云存儲(chǔ)服務(wù)處理模塊3和云存儲(chǔ)服務(wù)處理模塊4 ;服務(wù)處理模塊1部署于計(jì)算節(jié)點(diǎn)上,用于接收請(qǐng)求、處理請(qǐng)求、決定是否執(zhí)行請(qǐng)求以及分發(fā)請(qǐng)求。節(jié)點(diǎn)緩存管理模塊2部署于計(jì)算節(jié)點(diǎn)上,用于將新的鏡像文件保存到本地節(jié)點(diǎn)緩存,查找本地節(jié)點(diǎn)上已緩存的虛擬機(jī)鏡像。云存儲(chǔ)服務(wù)處理模塊3部署于管理節(jié)點(diǎn)上,用于從云存儲(chǔ)系統(tǒng)獲取鏡像文件塊,并對(duì)這些文件塊進(jìn)行操作, 使其還原為一個(gè)可用的鏡像文件。前端緩存管理模塊4部署于管理節(jié)點(diǎn)上,管理前端管理節(jié)點(diǎn)上的緩存文件,在本地緩存中查找虛擬機(jī)鏡像,將虛擬機(jī)鏡像文件保存到本地緩存。見(jiàn)圖2所示,本發(fā)明基于云存儲(chǔ)的快速訪問(wèn)虛擬機(jī)鏡像的緩存系統(tǒng),其緩存方法包括以下步驟第1步,計(jì)算節(jié)點(diǎn)的服務(wù)處理模塊1接收到創(chuàng)建虛擬機(jī)的Web服務(wù)請(qǐng)求;第2步,計(jì)算節(jié)點(diǎn)上的服務(wù)處理模塊1判斷本地節(jié)點(diǎn)是否有足夠的資源執(zhí)行該請(qǐng)求;如果能,執(zhí)行第3步;如果否,計(jì)算節(jié)點(diǎn)上的服務(wù)處理模塊1會(huì)將該Web服務(wù)請(qǐng)求分發(fā)給其他計(jì)算節(jié)點(diǎn);第3步,計(jì)算節(jié)點(diǎn)上的節(jié)點(diǎn)緩存管理模塊2根據(jù)Web服務(wù)請(qǐng)求查找匹配的虛擬機(jī)鏡像文件;如果存在,節(jié)點(diǎn)緩存管理模塊2將匹配的緩存結(jié)果返回給服務(wù)處理模塊1,服務(wù)處理模塊1處理該請(qǐng)求;如果不存在,服務(wù)處理模塊1將請(qǐng)求中的鏡像文件信息發(fā)送到管理節(jié)點(diǎn)上,執(zhí)行第4步;第4步,管理節(jié)點(diǎn)接收到Web Service請(qǐng)求后,前端緩存管理模塊4查找相匹配的緩存數(shù)據(jù);如果存在,前端節(jié)點(diǎn)將緩存結(jié)果返回給計(jì)算節(jié)點(diǎn)上的服務(wù)處理模塊1,同時(shí)計(jì)算節(jié)點(diǎn)上的服務(wù)處理模塊1將緩存該結(jié)果;如果不存在,執(zhí)行第5步;第5步,管理節(jié)點(diǎn)上的云存儲(chǔ)服務(wù)處理模塊3根據(jù)虛擬機(jī)鏡像文件的描述,前往云存儲(chǔ)系統(tǒng)中查找虛擬機(jī)鏡像文件塊;如果存在,執(zhí)行第6步;如果不存在,將查詢結(jié)果返回給發(fā)送該請(qǐng)求的計(jì)算節(jié)點(diǎn);第6步,管理節(jié)點(diǎn)上的云存儲(chǔ)服務(wù)處理模塊3對(duì)虛擬機(jī)鏡像文件塊進(jìn)行解密,并將文件塊合并后還原成完整的虛擬機(jī)鏡像;第7步,管理節(jié)點(diǎn)上的前端緩存管理模塊4將新的虛擬機(jī)鏡像放入緩存中。在前述方法步驟中,Web服務(wù)請(qǐng)求包括服務(wù)請(qǐng)求類別、參數(shù)和結(jié)果。第2步,如果本地計(jì)算節(jié)點(diǎn)沒(méi)有足夠的資源執(zhí)行該Web服務(wù)請(qǐng)求,本地計(jì)算節(jié)點(diǎn)上的服務(wù)處理模塊1將該請(qǐng)求類別和參數(shù)以Web服務(wù)格式發(fā)送給其他計(jì)算節(jié)點(diǎn)。第4步,如果管理節(jié)點(diǎn)上的前端緩存處理模塊4在緩存系統(tǒng)中查到了相匹配的虛擬機(jī)鏡像文件,計(jì)算節(jié)點(diǎn)在執(zhí)行Web服務(wù)請(qǐng)求時(shí)也會(huì)緩存該虛擬機(jī)鏡像到本地緩存中。第5步,如果云存儲(chǔ)系統(tǒng)中不存在符合虛擬機(jī)鏡像描述的記錄,計(jì)算節(jié)點(diǎn)會(huì)提示系統(tǒng)出現(xiàn)錯(cuò)誤。第7步,管理節(jié)點(diǎn)上緩存數(shù)據(jù)的元信息是存儲(chǔ)在嵌入式數(shù)據(jù)庫(kù)中。
權(quán)利要求
1.基于云存儲(chǔ)的快速訪問(wèn)虛擬機(jī)鏡像的緩存系統(tǒng),其特征在于包括有服務(wù)處理模塊 (1)、節(jié)點(diǎn)緩存管理模塊(2)、云存儲(chǔ)服務(wù)處理模塊(3)和云存儲(chǔ)服務(wù)處理模塊(4);所述的服務(wù)處理模塊(1)部署于計(jì)算節(jié)點(diǎn)上,用于接收請(qǐng)求、處理請(qǐng)求、決定是否執(zhí)行請(qǐng)求以及分發(fā)請(qǐng)求;所述的節(jié)點(diǎn)緩存管理模塊(2)部署于計(jì)算節(jié)點(diǎn)上,用于將新的鏡像文件保存到本地節(jié)點(diǎn)緩存,查找本地節(jié)點(diǎn)上已緩存的虛擬機(jī)鏡像;所述的云存儲(chǔ)服務(wù)處理模塊(3)部署于管理節(jié)點(diǎn)上,用于從云存儲(chǔ)系統(tǒng)獲取鏡像文件塊,并對(duì)這些文件塊進(jìn)行操作,使其還原為一個(gè)可用的鏡像文件;所述的前端緩存管理模塊(4)部署于管理節(jié)點(diǎn)上,管理前端管理節(jié)點(diǎn)上的緩存文件, 在本地緩存中查找虛擬機(jī)鏡像,將虛擬機(jī)鏡像文件保存到本地緩存。
2.—種權(quán)利要求1所述的緩存系統(tǒng)的緩存方法,其特征在于包括以下步驟 第1步,計(jì)算節(jié)點(diǎn)的服務(wù)處理模塊(1)接收到創(chuàng)建虛擬機(jī)的Web服務(wù)請(qǐng)求;第2步,計(jì)算節(jié)點(diǎn)上的服務(wù)處理模塊(1)判斷本地節(jié)點(diǎn)是否有足夠的資源執(zhí)行該請(qǐng)求;如果能,執(zhí)行第3步;如果否,計(jì)算節(jié)點(diǎn)上的服務(wù)處理模塊(1)會(huì)將該Web服務(wù)請(qǐng)求分發(fā)給其他計(jì)算節(jié)點(diǎn);第3步,計(jì)算節(jié)點(diǎn)上的節(jié)點(diǎn)緩存管理模塊(2)根據(jù)Web服務(wù)請(qǐng)求查找匹配的虛擬機(jī)鏡像文件;如果存在,節(jié)點(diǎn)緩存管理模塊(2)將匹配的緩存結(jié)果返回給服務(wù)處理模塊(1),服務(wù)處理模塊(1)處理該請(qǐng)求;如果不存在,服務(wù)處理模塊(1)將請(qǐng)求中的鏡像文件信息發(fā)送到管理節(jié)點(diǎn)上,執(zhí)行第4步;第4步,管理節(jié)點(diǎn)接收到Web Service請(qǐng)求后,前端緩存管理模塊(4)查找相匹配的緩存數(shù)據(jù);如果存在,前端節(jié)點(diǎn)將緩存結(jié)果返回給計(jì)算節(jié)點(diǎn)上的服務(wù)處理模塊(1),同時(shí)計(jì)算節(jié)點(diǎn)上的服務(wù)處理模塊(1)將緩存該結(jié)果; 如果不存在,執(zhí)行第5步;第5步,管理節(jié)點(diǎn)上的云存儲(chǔ)服務(wù)處理模塊(3)根據(jù)虛擬機(jī)鏡像文件的描述,前往云存儲(chǔ)系統(tǒng)中查找虛擬機(jī)鏡像文件塊;如果存在,執(zhí)行第6步;如果不存在,將查詢結(jié)果返回給發(fā)送該請(qǐng)求的計(jì)算節(jié)點(diǎn); 第6步,管理節(jié)點(diǎn)上的云存儲(chǔ)服務(wù)處理模塊(3)對(duì)虛擬機(jī)鏡像文件塊進(jìn)行解密,并將文件塊合并后還原成完整的虛擬機(jī)鏡像;第7步,管理節(jié)點(diǎn)上的前端緩存管理模塊(4)將新的虛擬機(jī)鏡像放入緩存中。
3.根據(jù)權(quán)利要求2所述的緩存方法,其特征在于所述Web服務(wù)請(qǐng)求包括服務(wù)請(qǐng)求類別、參數(shù)和結(jié)果。
4.根據(jù)權(quán)利要求2所述的緩存方法,其特征在于所述第2步,如果本地計(jì)算節(jié)點(diǎn)沒(méi)有足夠的資源執(zhí)行該Web服務(wù)請(qǐng)求,本地計(jì)算節(jié)點(diǎn)上的服務(wù)處理模塊(1)將該請(qǐng)求類別和參數(shù)以Web服務(wù)格式發(fā)送給其他計(jì)算節(jié)點(diǎn)。
5.根據(jù)權(quán)利要求3所述的緩存方法,其特征在于所述第2步,如果本地計(jì)算節(jié)點(diǎn)沒(méi)有足夠的資源執(zhí)行該Web服務(wù)請(qǐng)求,本地計(jì)算節(jié)點(diǎn)上的服務(wù)處理模塊(1)將該請(qǐng)求類別和參數(shù)以Web服務(wù)格式發(fā)送給其他計(jì)算節(jié)點(diǎn)。
6.根據(jù)權(quán)利要求2、3、4或5所述的緩存方法,其特征在于所述第4步,如果管理節(jié)點(diǎn)上的前端緩存處理模塊(4)在緩存系統(tǒng)中查到了相匹配的虛擬機(jī)鏡像文件,計(jì)算節(jié)點(diǎn)在執(zhí)行Web服務(wù)請(qǐng)求時(shí)也會(huì)緩存該虛擬機(jī)鏡像到本地緩存中。
7.根據(jù)權(quán)利要求2、3、4或5所述的緩存方法,其特征在于所述第5步,如果云存儲(chǔ)系統(tǒng)中不存在符合虛擬機(jī)鏡像描述的記錄,計(jì)算節(jié)點(diǎn)會(huì)提示系統(tǒng)出現(xiàn)錯(cuò)誤。
8.根據(jù)權(quán)利要求6所述的緩存方法,其特征在于所述第5步,如果云存儲(chǔ)系統(tǒng)中不存在符合虛擬機(jī)鏡像描述的記錄,計(jì)算節(jié)點(diǎn)會(huì)提示系統(tǒng)出現(xiàn)錯(cuò)誤。
9.根據(jù)權(quán)利要求2、3、4或5所述的緩存方法,其特征在于所述第7步,管理節(jié)點(diǎn)上緩存數(shù)據(jù)的元信息是存儲(chǔ)在嵌入式數(shù)據(jù)庫(kù)中。
10.根據(jù)權(quán)利要求6所述的緩存方法,其特征在于所述第7步,管理節(jié)點(diǎn)上緩存數(shù)據(jù)的元信息是存儲(chǔ)在嵌入式數(shù)據(jù)庫(kù)中。
11.根據(jù)權(quán)利要求7所述的緩存方法,其特征在于所述第7步,管理節(jié)點(diǎn)上緩存數(shù)據(jù)的元信息是存儲(chǔ)在嵌入式數(shù)據(jù)庫(kù)中。
12.根據(jù)權(quán)利要求8所述的緩存方法,其特征在于所述第7步,管理節(jié)點(diǎn)上緩存數(shù)據(jù)的元信息是存儲(chǔ)在嵌入式數(shù)據(jù)庫(kù)中。
全文摘要
本發(fā)明涉及云計(jì)算技術(shù)領(lǐng)域,特指一種基于云存儲(chǔ)的快速訪問(wèn)虛擬機(jī)鏡像的緩存系統(tǒng)及其方法。包括有服務(wù)處理模塊部署于計(jì)算節(jié)點(diǎn)上,接收請(qǐng)求、處理請(qǐng)求、決定是否執(zhí)行請(qǐng)求以及分發(fā)請(qǐng)求;節(jié)點(diǎn)緩存管理模塊部署于計(jì)算節(jié)點(diǎn)上,將新的鏡像文件保存到本地節(jié)點(diǎn)緩存,查找本地節(jié)點(diǎn)上已緩存的虛擬機(jī)鏡像;云存儲(chǔ)服務(wù)處理模塊部署于管理節(jié)點(diǎn)上,從云存儲(chǔ)系統(tǒng)獲取鏡像文件塊,并對(duì)這些文件塊進(jìn)行操作;前端緩存管理模塊部署于管理節(jié)點(diǎn)上,管理前端管理節(jié)點(diǎn)上的緩存文件,在本地緩存中查找虛擬機(jī)鏡像,將虛擬機(jī)鏡像文件保存到本地緩存。本發(fā)明能充分縮短虛擬機(jī)創(chuàng)建時(shí)間,避免各個(gè)節(jié)點(diǎn)之間重復(fù)的數(shù)據(jù)傳輸,加大網(wǎng)絡(luò)帶寬利用率??蓮V泛應(yīng)用于虛擬機(jī)鏡像的緩存上。
文檔編號(hào)H04L29/08GK102307206SQ20101029210
公開(kāi)日2012年1月4日 申請(qǐng)日期2010年9月25日 優(yōu)先權(quán)日2010年9月25日
發(fā)明者季統(tǒng)凱, 岳強(qiáng), 楊松, 肖翱, 莫展鵬 申請(qǐng)人:廣東電子工業(yè)研究院有限公司