亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

提供虛擬裝置的方法和設(shè)備的制作方法

文檔序號(hào):6500189閱讀:166來源:國知局
提供虛擬裝置的方法和設(shè)備的制作方法
【專利摘要】本發(fā)明公開了一種提供虛擬裝置的方法和設(shè)備,該方法包括:基于接收到的獲取特定虛擬裝置的請求,獲取所述特定虛擬裝置的元數(shù)據(jù),其描述特定虛擬裝置涉及的虛擬機(jī)的信息;根據(jù)所述元數(shù)據(jù),確定所述特定虛擬裝置與至少一個(gè)其他虛擬裝置的關(guān)聯(lián)關(guān)系;根據(jù)所述關(guān)聯(lián)關(guān)系,提供用于獲取所述特定虛擬裝置的資源信息,該資源信息包括多個(gè)資源地址,其中的至少一個(gè)指向所述至少一個(gè)其他虛擬裝置的存儲(chǔ)位置。所述設(shè)備與上述方法對應(yīng)。利用本發(fā)明實(shí)施例的方法和設(shè)備,可以響應(yīng)于用戶請求提供更多獲取特定虛擬裝置的資源選擇,從而提高獲取的效率,減小對云數(shù)據(jù)中心的網(wǎng)絡(luò)傳輸壓力。
【專利說明】提供虛擬裝置的方法和設(shè)備
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及虛擬裝置,更具體地,涉及一種提供虛擬裝置的方法和設(shè)備。
【背景技術(shù)】
[0002]隨著虛擬化技術(shù)的發(fā)展,虛擬機(jī)能夠如同一個(gè)真實(shí)的、獨(dú)立的計(jì)算機(jī)一樣提供各種應(yīng)用和服務(wù)。在此基礎(chǔ)上,可以將一個(gè)或多個(gè)虛擬機(jī)封裝在一起,提供一種預(yù)構(gòu)建的軟件環(huán)境,從而構(gòu)成一個(gè)虛擬裝置(virtual appliance)。例如,在一個(gè)例子中,可以利用3個(gè)虛擬機(jī)VM1,VM2和VM3構(gòu)建一個(gè)虛擬裝置,其中這3個(gè)虛擬機(jī)分別安裝不同的軟件程序,從而分別執(zhí)行不同的功能。例如,虛擬機(jī)VMl可以用于執(zhí)行各種應(yīng)用,VM2可以用于提供數(shù)據(jù)庫,VM3可以用作代理服務(wù)器。這幾個(gè)“專用”的虛擬機(jī)封裝在一起,共同提供一個(gè)完整的運(yùn)行環(huán)境,從而形成一個(gè)虛擬裝置。在這樣的情況下,將構(gòu)成虛擬裝置的多個(gè)虛擬機(jī)作為一個(gè)整體,共同進(jìn)行維護(hù)、更新和管理。
[0003]為了形成所需的虛擬裝置,現(xiàn)有技術(shù)中提出了多種封裝虛擬機(jī)的標(biāo)準(zhǔn)和方式。OVF(開放虛擬化格式)是目前較為常用的一種標(biāo)準(zhǔn),用于封裝和分布虛擬裝置。利用OVF標(biāo)準(zhǔn),可以簡單靈活地跨平臺(tái)進(jìn)行虛擬裝置的安裝和部署。根據(jù)OVF標(biāo)準(zhǔn),將多個(gè)虛擬機(jī)封裝為一個(gè)OVF包。典型地,一個(gè)OVF包包括后綴為.0vf的OVF描述文件,還選擇性地包含后綴為.mf的清單文件以及后綴為.cert的證書文件。OVF描述文件用于描述該OVF包中包含的各個(gè)虛擬機(jī)的配置信息。此外,OVF包中通常還包含形成虛擬裝置的各個(gè)虛擬機(jī)的磁盤映像文件。這些文件以映像的形式存儲(chǔ)虛擬磁盤中的數(shù)據(jù)。相應(yīng)地,磁盤映像文件通常比較大,往往為數(shù)百G字節(jié)。
[0004]根據(jù)用戶對各種虛擬裝置的需要,許多數(shù)據(jù)中心配置為根據(jù)用戶需求,向用戶提供例如OVF包形式的虛擬裝置。特別地,在云計(jì)算環(huán)境下,尤其是基礎(chǔ)架構(gòu)即服務(wù)(IaaS)模式下,云數(shù)據(jù)中心可以向眾多不同用戶提供各種虛擬機(jī)和虛擬裝置。然而,如前所述,虛擬裝置所涉及的映像文件往往達(dá)到數(shù)百G字節(jié),因此,讀取這樣的文件并將其通過網(wǎng)絡(luò)傳輸?shù)接脩艚K端通常要花費(fèi)較長時(shí)間。例如,當(dāng)前的云數(shù)據(jù)中心需要花費(fèi)幾十分鐘的時(shí)間來提供單個(gè)虛擬機(jī)。另一方面,許多云數(shù)據(jù)中心采用集中式的服務(wù)器來存儲(chǔ)和分發(fā)虛擬機(jī)相關(guān)數(shù)據(jù)。這樣的集中式服務(wù)器具有有限的網(wǎng)絡(luò)接口,從而成為處理大量網(wǎng)絡(luò)請求的瓶頸。因此,在大量用戶同時(shí)請求獲得虛擬裝置的情況下,云數(shù)據(jù)中心提供虛擬裝置的性能會(huì)進(jìn)一步降低。
[0005]因此,希望對現(xiàn)有的方案進(jìn)行改進(jìn),以優(yōu)化提供虛擬裝置的性能。

【發(fā)明內(nèi)容】

[0006]考慮到以上問題,提出本發(fā)明,旨在對現(xiàn)有技術(shù)中提供虛擬裝置的方案進(jìn)行優(yōu)化,提高效率。
[0007]根據(jù)本發(fā)明的一個(gè)方面,提出了一種提供虛擬裝置的方法,包括:基于接收到的獲取特定虛擬裝置的請求,獲取所述特定虛擬裝置的元數(shù)據(jù),所述元數(shù)據(jù)描述所述特定虛擬裝置涉及的虛擬機(jī)的信息;根據(jù)所述元數(shù)據(jù),確定所述特定虛擬裝置與至少一個(gè)其他虛擬裝置的關(guān)聯(lián)關(guān)系;根據(jù)所述關(guān)聯(lián)關(guān)系,提供用于獲取所述特定虛擬裝置的資源信息,所述資源信息包括多個(gè)資源地址,所述多個(gè)資源地址中的至少一個(gè)指向所述至少一個(gè)其他虛擬裝置的存儲(chǔ)位置。
[0008]根據(jù)本發(fā)明的另一個(gè)方面,提出了一種提供虛擬裝置的設(shè)備,包括:元數(shù)據(jù)獲取單元,配置為,基于接收到的獲取特定虛擬裝置的請求,獲取所述特定虛擬裝置的元數(shù)據(jù),所述元數(shù)據(jù)描述所述特定虛擬裝置涉及的虛擬機(jī)的信息;關(guān)聯(lián)關(guān)系確定單元,配置為,根據(jù)所述元數(shù)據(jù),確定所述特定虛擬裝置與至少一個(gè)其他虛擬裝置的關(guān)聯(lián)關(guān)系;資源信息提供單元,配置為,根據(jù)所述關(guān)聯(lián)關(guān)系,提供用于獲取所述特定虛擬裝置的資源信息,所述資源信息包括多個(gè)資源地址,所述多個(gè)資源地址中的至少一個(gè)指向所述至少一個(gè)其他虛擬裝置的存儲(chǔ)位置。
[0009]利用本發(fā)明實(shí)施例的方法和設(shè)備,可以在用戶向云數(shù)據(jù)中心請求獲得虛擬裝置時(shí),為用戶提供更多資源選擇,從而提高用戶獲取虛擬裝置的效率,減小對云數(shù)據(jù)中心的網(wǎng)絡(luò)傳輸壓力。
【專利附圖】

【附圖說明】
[0010]通過結(jié)合附圖對本公開示例性實(shí)施方式進(jìn)行更詳細(xì)的描述,本公開的上述以及其它目的、特征和優(yōu)勢將變得更加明顯,其中,在本公開示例性實(shí)施方式中,相同的參考標(biāo)號(hào)通常代表相同部件。
[0011]圖1表示根據(jù)本發(fā)明一實(shí)施例的云計(jì)算節(jié)點(diǎn);
[0012]圖2表示根據(jù)本發(fā)明一實(shí)施例的云計(jì)算環(huán)境;
[0013]圖3表示根據(jù)本發(fā)明一實(shí)施例的抽象模型層;
[0014]圖4示出根據(jù)本發(fā)明一個(gè)實(shí)施例的提供虛擬裝置的方法的流程圖;
[0015]圖5示出根據(jù)本發(fā)明一個(gè)實(shí)施例確定關(guān)聯(lián)關(guān)系的子步驟;
[0016]圖6示出根據(jù)一個(gè)例子的OVF描述文件的一個(gè)區(qū)段的內(nèi)容;
[0017]圖7示出根據(jù)一個(gè)實(shí)施例的提供資源信息的步驟;
[0018]圖8示出本發(fā)明一個(gè)實(shí)施例的應(yīng)用場景;以及
[0019]圖9示出根據(jù)本發(fā)明一個(gè)實(shí)施例的設(shè)備的框圖。
【具體實(shí)施方式】
[0020]下面將參照附圖更詳細(xì)地描述本公開的優(yōu)選實(shí)施方式。雖然附圖中顯示了本公開的優(yōu)選實(shí)施方式,然而應(yīng)該理解,可以以各種形式實(shí)現(xiàn)本公開而不應(yīng)被這里闡述的實(shí)施方式所限制。相反,提供這些實(shí)施方式是為了使本公開更加透徹和完整,并且能夠?qū)⒈竟_的范圍完整的傳達(dá)給本領(lǐng)域的技術(shù)人員。
[0021]首先應(yīng)當(dāng)理解,盡管本公開包括關(guān)于云計(jì)算的詳細(xì)描述,但其中記載的技術(shù)方案的實(shí)現(xiàn)卻不限于云計(jì)算環(huán)境,而是能夠結(jié)合現(xiàn)在已知或以后開發(fā)的任何其它類型的計(jì)算環(huán)境而實(shí)現(xiàn)。
[0022]云計(jì)算是一種服務(wù)交付模式,用于對共享的可配置計(jì)算資源池進(jìn)行方便、按需的網(wǎng)絡(luò)訪問??膳渲糜?jì)算資源是能夠以最小的管理成本或與服務(wù)提供者進(jìn)行最少的交互就能快速部署和釋放的資源,例如可以是網(wǎng)絡(luò)、網(wǎng)絡(luò)帶寬、服務(wù)器、處理、內(nèi)存、存儲(chǔ)、應(yīng)用、虛擬機(jī)和服務(wù)。這種云模式可以包括至少五個(gè)特征、至少三個(gè)服務(wù)模型和至少四個(gè)部署模型。
[0023]特征包括:
[0024]按需自助式服務(wù):云的消費(fèi)者在無需與服務(wù)提供者進(jìn)行人為交互的情況下能夠單方面自動(dòng)地按需部署諸如服務(wù)器時(shí)間和網(wǎng)絡(luò)存儲(chǔ)等的計(jì)算能力。
[0025]廣泛的網(wǎng)絡(luò)接入:計(jì)算能力可以通過標(biāo)準(zhǔn)機(jī)制在網(wǎng)絡(luò)上獲取,這種標(biāo)準(zhǔn)機(jī)制促進(jìn)了通過不同種類的瘦客戶機(jī)平臺(tái)或厚客戶機(jī)平臺(tái)(例如移動(dòng)電話、膝上型電腦、個(gè)人數(shù)字助理PDA)對云的使用。
[0026]資源池:提供者的計(jì)算資源被歸入資源池并通過多租戶(mult1-tenant)模式服務(wù)于多重消費(fèi)者,其中按需將不同的實(shí)體資源和虛擬資源動(dòng)態(tài)地分配和再分配。一般情況下,消費(fèi)者不能控制或甚至并不知曉所提供的資源的確切位置,但可以在較高抽象程度上指定位置(例如國家、州或數(shù)據(jù)中心),因此具有位置無關(guān)性。
[0027]迅速彈性:能夠迅速、有彈性地(有時(shí)是自動(dòng)地)部署計(jì)算能力,以實(shí)現(xiàn)快速擴(kuò)展,并且能迅速釋放來快速縮小。在消費(fèi)者看來,用于部署的可用計(jì)算能力往往顯得是無限的,并能在任意時(shí)候都能獲取任意數(shù)量的計(jì)算能力。
[0028]可測量的服務(wù):云系統(tǒng)通過利用適于服務(wù)類型(例如存儲(chǔ)、處理、帶寬和活躍用戶帳號(hào))的某種抽象程度的計(jì)量能力,自動(dòng)地控制和優(yōu)化資源效用??梢员O(jiān)測、控制和報(bào)告資源使用情況,為服務(wù)提供者和消費(fèi)者雙方提供透明度。
[0029]服務(wù)模型如下:
[0030]軟件即服務(wù)(SaaS):向消費(fèi)者提供的能力是使用提供者在云基礎(chǔ)架構(gòu)上運(yùn)行的應(yīng)用。可以通過諸如網(wǎng)絡(luò)瀏覽器的瘦客戶機(jī)接口(例如基于網(wǎng)絡(luò)的電子郵件)從各種客戶機(jī)設(shè)備訪問應(yīng)用。除了有限的特定于用戶的應(yīng)用配置設(shè)置外,消費(fèi)者既不管理也不控制包括網(wǎng)絡(luò)、服務(wù)器、操作系統(tǒng)、存儲(chǔ)、乃至單個(gè)應(yīng)用能力等的底層云基礎(chǔ)架構(gòu)。
[0031]平臺(tái)即服務(wù)(PaaS):向消費(fèi)者提供的能力是在云基礎(chǔ)架構(gòu)上部署消費(fèi)者創(chuàng)建或獲得的應(yīng)用,這些應(yīng)用利用提供者支持的程序設(shè)計(jì)語言和工具創(chuàng)建。消費(fèi)者既不管理也不控制包括網(wǎng)絡(luò)、服務(wù)器、操作系統(tǒng)或存儲(chǔ)的底層云基礎(chǔ)架構(gòu),但對其部署的應(yīng)用具有控制權(quán),對應(yīng)用托管環(huán)境配置可能也具有控制權(quán)。
[0032]基礎(chǔ)架構(gòu)即服務(wù)(IaaS):向消費(fèi)者提供的能力是消費(fèi)者能夠在其中部署并運(yùn)行包括操作系統(tǒng)和應(yīng)用的任意軟件的處理、存儲(chǔ)、網(wǎng)絡(luò)和其他基礎(chǔ)計(jì)算資源。消費(fèi)者既不管理也不控制底層的云基礎(chǔ)架構(gòu),但是對操作系統(tǒng)、存儲(chǔ)和其部署的應(yīng)用具有控制權(quán),對選擇的網(wǎng)絡(luò)組件(例如主機(jī)防火墻)可能具有有限的控制權(quán)。
[0033]部署模型如下:
[0034]私有云:云基礎(chǔ)架構(gòu)單獨(dú)為某個(gè)組織運(yùn)行。云基礎(chǔ)架構(gòu)可以由該組織或第三方管理并且可以存在于該組織內(nèi)部或外部。
[0035]共同體云:云基礎(chǔ)架構(gòu)被若干組織共享并支持有共同利害關(guān)系(例如任務(wù)使命、安全要求、政策和合規(guī)考慮)的特定共同體。共同體云可以由共同體內(nèi)的多個(gè)組織或第三方管理并且可以存在于該共同體內(nèi)部或外部。
[0036]公共云:云基礎(chǔ)架構(gòu)向公眾或大型產(chǎn)業(yè)群提供并由出售云服務(wù)的組織擁有。
[0037]混合云:云基礎(chǔ)架構(gòu)由兩個(gè)或更多部署模型的云(私有云、共同體云或公共云)組成,這些云依然是獨(dú)特的實(shí)體,但是通過使數(shù)據(jù)和應(yīng)用能夠移植的標(biāo)準(zhǔn)化技術(shù)或私有技術(shù)(例如用于云之間的負(fù)載平衡的云突發(fā)流量分擔(dān)技術(shù))綁定在一起。
[0038]云計(jì)算環(huán)境是面向服務(wù)的,特點(diǎn)集中在無狀態(tài)性、低耦合性、模塊性和語意的互操作性。云計(jì)算的核心是包含互連節(jié)點(diǎn)網(wǎng)絡(luò)的基礎(chǔ)架構(gòu)。
[0039]現(xiàn)在參考圖1,其中顯示了云計(jì)算節(jié)點(diǎn)的一個(gè)例子。圖1顯示的云計(jì)算節(jié)點(diǎn)10僅僅是適合的云計(jì)算節(jié)點(diǎn)的一個(gè)示例,不應(yīng)對本發(fā)明實(shí)施例的功能和使用范圍帶來任何限制??傊?,云計(jì)算節(jié)點(diǎn)10能夠被用來實(shí)現(xiàn)和/或執(zhí)行以上所述的任何功能。
[0040]云計(jì)算節(jié)點(diǎn)10具有計(jì)算機(jī)系統(tǒng)/服務(wù)器12,其可與眾多其它通用或?qū)S糜?jì)算系統(tǒng)環(huán)境或配置一起操作。眾所周知,適于與計(jì)算機(jī)系統(tǒng)/服務(wù)器12 —起操作的計(jì)算系統(tǒng)、環(huán)境和/或配置的例子包括但不限于:個(gè)人計(jì)算機(jī)系統(tǒng)、服務(wù)器計(jì)算機(jī)系統(tǒng)、瘦客戶機(jī)、厚客戶機(jī)、手持或膝上設(shè)備、基于微處理器的系統(tǒng)、機(jī)頂盒、可編程消費(fèi)電子產(chǎn)品、網(wǎng)絡(luò)個(gè)人電腦、小型計(jì)算機(jī)系統(tǒng)、大型計(jì)算機(jī)系統(tǒng)和包括上述任意系統(tǒng)的分布式云計(jì)算技術(shù)環(huán)境,等
坐寸ο
[0041]計(jì)算機(jī)系統(tǒng)/服務(wù)器12可以在由計(jì)算機(jī)系統(tǒng)執(zhí)行的計(jì)算機(jī)系統(tǒng)可執(zhí)行指令(諸如程序模塊)的一般語境下描述。通常,程序模塊可以包括執(zhí)行特定的任務(wù)或者實(shí)現(xiàn)特定的抽象數(shù)據(jù)類型的例程、程序、目標(biāo)程序、組件、邏輯、數(shù)據(jù)結(jié)構(gòu)等。計(jì)算機(jī)系統(tǒng)/服務(wù)器12可以在通過通信網(wǎng)絡(luò)鏈接的遠(yuǎn)程處理設(shè)備執(zhí)行任務(wù)的分布式云計(jì)算環(huán)境中實(shí)施。在分布式云計(jì)算環(huán)境中,程序模塊可以位于包括存儲(chǔ)設(shè)備的本地或遠(yuǎn)程計(jì)算系統(tǒng)存儲(chǔ)介質(zhì)上。
[0042]如圖1所示,云計(jì)算節(jié)點(diǎn)10中的計(jì)算機(jī)系統(tǒng)/服務(wù)器12以通用計(jì)算設(shè)備的形式表現(xiàn)。計(jì)算機(jī)系統(tǒng)/服務(wù)器12的組件可以包括但不限于:一個(gè)或者多個(gè)處理器或者處理單元16,系統(tǒng)存儲(chǔ)器28,連接不同系統(tǒng)組件(包括系統(tǒng)存儲(chǔ)器28和處理單元16)的總線18。
[0043]總線18表示幾類總線結(jié)構(gòu)中的一種或多種,包括存儲(chǔ)器總線或者存儲(chǔ)器控制器,外圍總線,圖形加速端口,處理器或者使用多種總線結(jié)構(gòu)中的任意總線結(jié)構(gòu)的局域總線。舉例來說,這些體系結(jié)構(gòu)包括但不限于工業(yè)標(biāo)準(zhǔn)體系結(jié)構(gòu)(ISA)總線,微通道體系結(jié)構(gòu)(MAC)總線,增強(qiáng)型ISA總線、視頻電子標(biāo)準(zhǔn)協(xié)會(huì)(VESA)局域總線以及外圍組件互連(PCI)總線。
[0044]計(jì)算機(jī)系統(tǒng)/服務(wù)器12典型地包括多種計(jì)算機(jī)系統(tǒng)可讀介質(zhì)。這些介質(zhì)可以是能夠被計(jì)算機(jī)系統(tǒng)/服務(wù)器12訪問的任意可獲得的介質(zhì),包括易失性和非易失性介質(zhì),可移動(dòng)的和不可移動(dòng)的介質(zhì)。
[0045]系統(tǒng)存儲(chǔ)器28可以包括易失性存儲(chǔ)器形式的計(jì)算機(jī)系統(tǒng)可讀介質(zhì),例如隨機(jī)存取存儲(chǔ)器(RAM)30和/或高速緩存存儲(chǔ)器32。計(jì)算機(jī)系統(tǒng)/服務(wù)器12可以進(jìn)一步包括其它可移動(dòng)/不可移動(dòng)的、易失性/非易失性計(jì)算機(jī)系統(tǒng)存儲(chǔ)介質(zhì)。僅作為舉例,存儲(chǔ)系統(tǒng)34可以用于讀寫不可移動(dòng)的、非易失性磁介質(zhì)(圖1未顯示,通常稱為“硬盤驅(qū)動(dòng)器”)。盡管圖1中未示出,可以提供用于對可移動(dòng)非易失性磁盤(例如“軟盤”)讀寫的磁盤驅(qū)動(dòng)器,以及對可移動(dòng)非易失性光盤(例如⑶-ROM,DVD-ROM或者其它光介質(zhì))讀寫的光盤驅(qū)動(dòng)器。在這些情況下,每個(gè)驅(qū)動(dòng)器可以通過一個(gè)或者多個(gè)數(shù)據(jù)介質(zhì)接口與總線18相連。存儲(chǔ)器28可以包括至少一個(gè)程序產(chǎn)品,該程序產(chǎn)品具有一組(例如至少一個(gè))程序模塊,這些程序模塊被配置以執(zhí)行本發(fā)明各實(shí)施例的功能。
[0046]具有一組(至少一個(gè))程序模塊42的程序/實(shí)用工具40,可以存儲(chǔ)在存儲(chǔ)器28中,這樣的程序模塊42包括但不限于操作系統(tǒng)、一個(gè)或者多個(gè)應(yīng)用程序、其它程序模塊以及程序數(shù)據(jù),這些示例中的每一個(gè)或某種組合中可能包括網(wǎng)絡(luò)環(huán)境的實(shí)現(xiàn)。程序模塊42通常執(zhí)行本發(fā)明所描述的實(shí)施例中的功能和/或方法。
[0047]計(jì)算機(jī)系統(tǒng)/服務(wù)器12也可以與一個(gè)或多個(gè)外部設(shè)備14 (例如鍵盤、指向設(shè)備、顯示器24等)通信,還可與一個(gè)或者多個(gè)使得用戶能與該計(jì)算機(jī)系統(tǒng)/服務(wù)器12交互的設(shè)備通信,和/或與使得該計(jì)算機(jī)系統(tǒng)/服務(wù)器12能與一個(gè)或多個(gè)其它計(jì)算設(shè)備進(jìn)行通信的任何設(shè)備(例如網(wǎng)卡,調(diào)制解調(diào)器等等)通信。這種通信可以通過輸入/輸出(I/O)接口 22進(jìn)行。并且,計(jì)算機(jī)系統(tǒng)/服務(wù)器12還可以通過網(wǎng)絡(luò)適配器20與一個(gè)或者多個(gè)網(wǎng)絡(luò)(例如局域網(wǎng)(LAN),廣域網(wǎng)(WAN)和/或公共網(wǎng)絡(luò),例如因特網(wǎng))通信。如圖所示,網(wǎng)絡(luò)適配器20通過總線18與計(jì)算機(jī)系統(tǒng)/服務(wù)器12的其它模塊通信。應(yīng)當(dāng)明白,盡管圖中未示出,其它硬件和/或軟件模塊可以與計(jì)算機(jī)系統(tǒng)/服務(wù)器12 —起操作,包括但不限于:微代碼、設(shè)備驅(qū)動(dòng)器、冗余處理單元、外部磁盤驅(qū)動(dòng)陣列、RAID系統(tǒng)、磁帶驅(qū)動(dòng)器以及數(shù)據(jù)備份存儲(chǔ)系統(tǒng)
坐寸ο
[0048]現(xiàn)在參考圖2,其中顯示了示例性的云計(jì)算環(huán)境50。如圖所示,云計(jì)算環(huán)境50包括云計(jì)算消費(fèi)者使用的本地計(jì)算設(shè)備可以與其相通信的一個(gè)或者多個(gè)云計(jì)算節(jié)點(diǎn)10,本地計(jì)算設(shè)備例如可以是個(gè)人數(shù)字助理(PDA)或移動(dòng)電話54A,臺(tái)式電腦54B、筆記本電腦54C和/或汽車計(jì)算機(jī)系統(tǒng)54N。云計(jì)算節(jié)點(diǎn)10之間可以相互通信??梢栽诎ǖ幌抻谌缟纤龅乃接性啤⒐餐w云、公共云或混合云或者它們的組合的一個(gè)或者多個(gè)網(wǎng)絡(luò)中將云計(jì)算節(jié)點(diǎn)10進(jìn)行物理或虛擬分組(圖中未顯示)。這樣,云的消費(fèi)者無需在本地計(jì)算設(shè)備上維護(hù)資源就能請求云計(jì)算環(huán)境50提供的基礎(chǔ)架構(gòu)即服務(wù)(IaaS)、平臺(tái)即服務(wù)(PaaS)和/或軟件即服務(wù)(SaaS)。應(yīng)當(dāng)理解,圖2顯示的各類計(jì)算設(shè)備54A-N僅僅是示意性的,云計(jì)算節(jié)點(diǎn)10以及云計(jì)算環(huán)境50 可以與任意類型網(wǎng)絡(luò)上和/或網(wǎng)絡(luò)可尋址連接的任意類型的計(jì)算設(shè)備(例如使用網(wǎng)絡(luò)瀏覽器)通信。
[0049]現(xiàn)在參考圖3,其中顯示了云計(jì)算環(huán)境50 (圖2)提供的一組功能抽象層。首先應(yīng)當(dāng)理解,圖3所示的組件、層以及功能都僅僅是示意性的,本發(fā)明的實(shí)施例不限于此。如圖3所示,提供下列層和對應(yīng)功能:
[0050]硬件和軟件層60包括硬件和軟件組件。硬件組件的例子包括:主機(jī),例如IBM? zSeries?系統(tǒng);基于RISC (精簡指令集計(jì)算機(jī))體系結(jié)構(gòu)的服務(wù)器,例如IBM pSeries?系統(tǒng);]BM xSeries?系統(tǒng);丨BM BladeCenter?系統(tǒng);存儲(chǔ)設(shè)備;網(wǎng)絡(luò)和
網(wǎng)絡(luò)組件。軟件組件的例子包括:網(wǎng)絡(luò)應(yīng)用服務(wù)器軟件,例如IBM WebSphere?應(yīng)用服務(wù)器軟件;數(shù)據(jù)庫軟件,例如IBM DB2?數(shù)據(jù)庫軟件。(IBM, zSeries, pSeries, xSeries, BladeCenter, WebSphere以及DB2是國際商業(yè)機(jī)器公司在全世界各地的注冊商標(biāo))。
[0051]虛擬層62提供一個(gè)抽象層,該層可以提供下列虛擬實(shí)體的例子:虛擬服務(wù)器、虛擬存儲(chǔ)、虛擬網(wǎng)絡(luò)(包括虛擬私有網(wǎng)絡(luò))、虛擬應(yīng)用和操作系統(tǒng),以及虛擬客戶端。
[0052]在一個(gè)示例中,管理層64可以提供下述功能:資源供應(yīng)功能:提供用于在云計(jì)算環(huán)境中執(zhí)行任務(wù)的計(jì)算資源和其它資源的動(dòng)態(tài)獲?。挥?jì)量和定價(jià)功能:在云計(jì)算環(huán)境內(nèi)對資源的使用進(jìn)行成本跟蹤,并為此提供帳單和發(fā)票。在一個(gè)例子中,該資源可以包括應(yīng)用軟件許可。安全功能:為云的消費(fèi)者和任務(wù)提供身份認(rèn)證,為數(shù)據(jù)和其它資源提供保護(hù)。用戶門戶功能:為消費(fèi)者和系統(tǒng)管理員提供對云計(jì)算環(huán)境的訪問。服務(wù)水平管理功能:提供云計(jì)算資源的分配和管理,以滿足必需的服務(wù)水平。服務(wù)水平協(xié)議(SLA)計(jì)劃和履行功能--為根據(jù)SLA預(yù)測的對云計(jì)算資源未來需求提供預(yù)先安排和供應(yīng)。
[0053]工作負(fù)載層66提供云計(jì)算環(huán)境可能實(shí)現(xiàn)的功能的示例。在該層中,可提供的工作負(fù)載或功能的示例包括:地圖繪制與導(dǎo)航;軟件開發(fā)及生命周期管理;虛擬教室的教學(xué)提供;數(shù)據(jù)分析處理;交易處理;以及虛擬裝置的提供。
[0054]下面描述本發(fā)明實(shí)施例的具體執(zhí)行方式。在本發(fā)明的實(shí)施例中,為了向用戶提供虛擬裝置,首先分析虛擬裝置對應(yīng)的元數(shù)據(jù),該元數(shù)據(jù)用于描述虛擬裝置所涉及的虛擬機(jī)的信息。通過分析這樣的元數(shù)據(jù),可以確定該虛擬裝置與其他虛擬裝置的關(guān)聯(lián)關(guān)系,或“依賴性”關(guān)系,該關(guān)聯(lián)關(guān)系示出不同虛擬裝置之間是否共享相同或相似的虛擬機(jī)?;谶@樣的關(guān)聯(lián)關(guān)系,可以在用戶請求獲得該虛擬裝置時(shí),向用戶返回多個(gè)資源地址,其中不僅有資源地址指向該虛擬裝置在云數(shù)據(jù)中心的存儲(chǔ)位置,還有部分資源地址指向與該虛擬裝置關(guān)聯(lián)的其他虛擬裝置。由此,用戶可以選擇性地通過指向其他虛擬裝置的資源地址獲取需要的虛擬裝置,從而提高下載速度,降低云數(shù)據(jù)中心的傳輸壓力。
[0055]圖4示出根據(jù)本發(fā)明一個(gè)實(shí)施例的提供虛擬裝置的方法的流程圖。如圖4所示,提供虛擬裝置的方法包括:步驟42,基于接收到的獲取特定虛擬裝置的請求,獲取所述特定虛擬裝置的元數(shù)據(jù),所述元數(shù)據(jù)描述所述特定虛擬裝置涉及的虛擬機(jī)的信息;步驟44,根據(jù)上述元數(shù)據(jù),確定所述特定虛擬裝置與至少一個(gè)其他虛擬裝置的關(guān)聯(lián)關(guān)系;步驟46,根據(jù)所述關(guān)聯(lián)關(guān)系,提供用于獲取所述特定虛擬裝置的資源信息,所述資源信息包括多個(gè)資源地址,所述多個(gè)資源地址中的至少一個(gè)指向所述至少一個(gè)其他虛擬裝置的存儲(chǔ)位置。下面結(jié)合具體例子描述上述各個(gè)步驟的執(zhí)行。
[0056]首先,在步驟42,基于接收到的獲取特定虛擬裝置的請求,獲取用于描述該虛擬裝置的元數(shù)據(jù)。更具體地,步驟42包括,首先基于接收到的請求確定要獲取的特定虛擬裝置,然后,基于確定的虛擬裝置獲取對應(yīng)的元數(shù)據(jù)。
[0057]一般地,用戶請求包含要獲取的特定虛擬裝置的唯一標(biāo)識(shí)符?;谠摌?biāo)識(shí)符,云數(shù)據(jù)中心可以確定出所述特定虛擬裝置。在一個(gè)實(shí)施例中,用戶也可以在請求中指定將一個(gè)或多個(gè)虛擬機(jī)封裝成特定虛擬裝置。在這樣的情況下,云數(shù)據(jù)中心可以根據(jù)用戶請求,對指定的虛擬機(jī)進(jìn)行封裝,從而形成所需要的虛擬裝置。所形成的虛擬裝置也就是上述要獲取的特定虛擬裝置。
[0058]在一個(gè)實(shí)施例中,為了加快虛擬裝置中映像文件的傳輸速度,希望采用P2P傳輸方式。P2P傳輸方式已為本領(lǐng)域技術(shù)人員所熟知。為了進(jìn)行P2P傳輸,用戶首先要獲取torrent種子文件,其包含服務(wù)器信息和目標(biāo)文件信息。具體地,服務(wù)器信息指定服務(wù)器的地址和針對服務(wù)器的設(shè)置。然而,該服務(wù)器只是負(fù)責(zé)提供目標(biāo)文件的可用下載源的信息,并不必然存儲(chǔ)有目標(biāo)文件。而目標(biāo)文件信息則是由服務(wù)器將目標(biāo)文件虛擬地劃分為塊,并對各個(gè)塊進(jìn)行特定編碼而生成的文件。一旦用戶通過種子文件連接到服務(wù)器,服務(wù)器識(shí)別出種子文件所涉及的目標(biāo)文件,并將目標(biāo)文件的可用下載源的信息返回給用戶。用戶于是可以從可用的下載源獲取目標(biāo)文件。在通過云數(shù)據(jù)中心提供虛擬裝置的情況下,云數(shù)據(jù)中心可以作用為上述P2P傳輸?shù)姆?wù)器。相應(yīng)地,在一個(gè)實(shí)施例中,用戶可以利用torrent種子文件來請求獲取特定虛擬裝置。響應(yīng)于這樣利用torrent文件發(fā)出的請求,在步驟42中,可以通過分析該torrent文件中的目標(biāo)文件信息確定出要獲取的特定虛擬裝置。
[0059]在確定出要獲取的特定虛擬裝置的基礎(chǔ)上,就可以獲得該特定虛擬裝置對應(yīng)的元數(shù)據(jù)。一般地,虛擬裝置由一個(gè)或多個(gè)虛擬機(jī)經(jīng)過壓縮和封裝而形成,相應(yīng)地,一個(gè)虛擬裝置可以對應(yīng)于一個(gè)壓縮包或一個(gè)封裝形成的數(shù)據(jù)包,其中包含所封裝的各個(gè)虛擬機(jī)的磁盤映像文件。在一個(gè)實(shí)施例中,虛擬裝置的元數(shù)據(jù)可以體現(xiàn)為壓縮包或數(shù)據(jù)包的屬性信息。在另一實(shí)施例中,上述數(shù)據(jù)包中直接包含對各個(gè)虛擬機(jī)進(jìn)行描述的描述文件。這樣的描述文件可以作為對應(yīng)的虛擬裝置的元數(shù)據(jù)。因此,獲取特定虛擬裝置的元數(shù)據(jù)的過程可以包括,從與所述特定虛擬裝置對應(yīng)的封裝數(shù)據(jù)包中提取出對涉及的虛擬機(jī)進(jìn)行描述的描述文件,將該描述文件作為特定虛擬裝置的元數(shù)據(jù)。
[0060]在一個(gè)實(shí)施例中,上述特定虛擬裝置通過將虛擬機(jī)利用OVF標(biāo)準(zhǔn)來封裝而形成,因此對應(yīng)于云數(shù)據(jù)中心存儲(chǔ)的一個(gè)OVF包。如前所述,OVF包中包含有OVF描述文件,用于描述虛擬裝置所涉及的各個(gè)虛擬機(jī)的配置信息。因此,該OVF描述文件可以作用為所述特定虛擬裝置的元數(shù)據(jù)。相應(yīng)地,在步驟42中,可以通過從對應(yīng)的OVF包中提取OVF描述文件,來獲取所述特定虛擬裝置的元數(shù)據(jù)。
[0061]在另一實(shí)施例中,特定虛擬裝置利用其他標(biāo)準(zhǔn)而封裝,從而對應(yīng)于不同格式的數(shù)據(jù)包。在這樣的情況下,可以針對數(shù)據(jù)包的格式類似地提取出不同格式的描述文件作為虛擬裝置的元數(shù)據(jù)。
[0062]在獲取到用戶所請求的特定虛擬裝置的元數(shù)據(jù)的基礎(chǔ)上,在步驟44,根據(jù)上述元數(shù)據(jù),確定所述特定虛擬裝置與至少一個(gè)其他虛擬裝置的關(guān)聯(lián)關(guān)系,所述關(guān)聯(lián)關(guān)系旨在示出所述特定虛擬裝置與其他虛擬裝置之間對于相同或相似虛擬機(jī)的共享。
[0063]圖5示出根據(jù)本發(fā)明一個(gè)實(shí)施例確定上述關(guān)聯(lián)關(guān)系的子步驟,即上述步驟44的子步驟。如圖5所示,為了確定特定虛擬裝置與其他虛擬裝置的關(guān)聯(lián)關(guān)系,首先在步驟441,從所述元數(shù)據(jù)中獲取所述特定虛擬裝置涉及的各個(gè)虛擬機(jī)的虛擬機(jī)信息。如前所述,一般地,元數(shù)據(jù),特別是特定虛擬裝置對應(yīng)的封裝數(shù)據(jù)包中的描述文件,用于描述該特定虛擬裝置所涉及的各個(gè)虛擬機(jī)。因此,基于例如描述文件的元數(shù)據(jù),可以容易地獲取特定虛擬裝置涉及的各個(gè)虛擬機(jī)的虛擬機(jī)信息。上述虛擬機(jī)信息可以包括,虛擬機(jī)名稱、版本、(虛擬)硬件參數(shù)、操作系統(tǒng)信息等??梢岳斫猓摂M機(jī)信息的具體項(xiàng)目可以根據(jù)需要進(jìn)行預(yù)先設(shè)定,因此可以不限于以上舉例的內(nèi)容。
[0064]在一個(gè)具體例子中,特定虛擬裝置的元數(shù)據(jù)為OVF描述文件。如本領(lǐng)域技術(shù)人員所知,OVF描述文件中包含多個(gè)區(qū)段,分別描述磁盤信息、網(wǎng)絡(luò)配置信息、軟件信息等。圖6示出根據(jù)一個(gè)例子的OVF描述文件的一個(gè)區(qū)段的內(nèi)容。具體地,圖6所示的區(qū)段描述了虛擬機(jī)的管理程序(hypervisor)、系統(tǒng)環(huán)境、各種CPU配置等。相應(yīng)地,可以將虛擬機(jī)信息設(shè)定為包含以上這些項(xiàng)目中的一個(gè)或多個(gè)。在其他實(shí)施例中,可以將虛擬機(jī)信息設(shè)定為包含其他項(xiàng)目或更多項(xiàng)目。
[0065]接著,在步驟442,將步驟441獲得的虛擬機(jī)信息與至少一個(gè)其他虛擬裝置所對應(yīng)的虛擬機(jī)信息進(jìn)行比對。可以理解,對于其他虛擬裝置,可以類似地獲取其對應(yīng)的元數(shù)據(jù),進(jìn)而從元數(shù)據(jù)中獲取所涉及的虛擬機(jī)信息。于是,可以將特定虛擬裝置對應(yīng)的虛擬機(jī)信息與其他虛擬裝置對應(yīng)的虛擬機(jī)信息進(jìn)行比對。由于虛擬機(jī)信息可以包含多個(gè)項(xiàng)目,上述比對包括,逐個(gè)比對虛擬機(jī)信息中包含的各個(gè)項(xiàng)目的內(nèi)容。
[0066]進(jìn)一步地,在步驟443,響應(yīng)于所述特定虛擬裝置中某個(gè)虛擬機(jī)的虛擬機(jī)信息與至少一個(gè)其他虛擬裝置中的對應(yīng)虛擬機(jī)的虛擬機(jī)信息相同,將所述關(guān)聯(lián)關(guān)系確定為,所述特定虛擬裝置與所述至少一個(gè)其他虛擬裝置共享上述某個(gè)虛擬機(jī)。
[0067]在一個(gè)實(shí)施例中,如果兩個(gè)虛擬機(jī)的虛擬機(jī)信息中每個(gè)項(xiàng)目分別對應(yīng)相同,則認(rèn)為虛擬機(jī)信息是相同的。在另一實(shí)施例中,可以預(yù)定一比例,如果兩個(gè)虛擬機(jī)的虛擬機(jī)信息中有預(yù)定比例的項(xiàng)目相同,則認(rèn)為虛擬機(jī)信息相同。步驟443中可以采用以上任一準(zhǔn)則來判斷虛擬機(jī)信息是否相同。在判斷特定虛擬裝置中某個(gè)虛擬機(jī)的虛擬機(jī)信息與其他虛擬裝置中的對應(yīng)虛擬機(jī)的虛擬機(jī)信息相同的情況下,在一個(gè)實(shí)施例中,可以認(rèn)為兩個(gè)虛擬機(jī)是相同的,因此,特定虛擬裝置與其他虛擬裝置共享該某個(gè)虛擬機(jī)。
[0068]在一個(gè)實(shí)施例中,元數(shù)據(jù)中對于虛擬機(jī)的描述還附加地包含定制信息,其中定制信息表示用戶對虛擬機(jī)的具體應(yīng)用進(jìn)行的一些設(shè)定。在一個(gè)實(shí)施例中,例如在OVF描述文件的情況下,定制信息記錄為腳本的形式。OVF描述文件通過腳本引用來引入相應(yīng)的定制信息。如果虛擬機(jī)VMl和VM2具有相同的虛擬機(jī)信息,但VM2附加地包含有定制信息,則可以通過在獲得VMl的映像的基礎(chǔ)上進(jìn)一步應(yīng)用VM2的定制信息來獲得VM2。在這樣的情況下,如果兩個(gè)虛擬機(jī)的虛擬機(jī)信息相同但定制信息不同,則可以認(rèn)為這兩個(gè)虛擬機(jī)是相似的虛擬機(jī)。相應(yīng)地,在一個(gè)實(shí)施例中,在步驟443的基礎(chǔ)上,附加地,響應(yīng)于所述某個(gè)虛擬機(jī)的虛擬機(jī)信息和對應(yīng)虛擬機(jī)的虛擬機(jī)信息相同但定制信息不同,將所述關(guān)聯(lián)關(guān)系確定為,所述特定虛擬裝置與所述至少一個(gè)其他虛擬裝置部分地共享上述某個(gè)虛擬機(jī)。
[0069]在一個(gè)實(shí)施例中,所述關(guān)聯(lián)關(guān)系包括所述特定虛擬裝置與至少一個(gè)其他虛擬裝置的直接關(guān)聯(lián)關(guān)系。在一個(gè)實(shí)施例中,所述關(guān)聯(lián)關(guān)系還包括所述特定虛擬裝置與至少一個(gè)其他虛擬裝置之間借由中間虛擬裝置的間接關(guān)聯(lián)關(guān)系。例如,特定虛擬裝置與虛擬裝置I共享若干虛擬機(jī),因而具有直接關(guān)聯(lián)關(guān)系。同時(shí),虛擬裝置I與另一虛擬裝置2之間也存在虛擬機(jī)共享的關(guān)聯(lián)關(guān)系。此時(shí),可以認(rèn)為,特定虛擬裝置與上述虛擬裝置2之間借由中間虛擬裝置I而具有間接關(guān)聯(lián)關(guān)系。
[0070]上述關(guān)聯(lián)關(guān)系可以記錄為多種形式。在個(gè)實(shí)施例中,上述關(guān)聯(lián)關(guān)系記錄為列表形式,該列表列出與特定虛擬裝置相關(guān)聯(lián)的其他虛擬裝置的標(biāo)識(shí)。在另一實(shí)施例中,以拓?fù)鋱D的形式記錄上述關(guān)聯(lián)關(guān)系。這樣的記錄方式尤其適于同時(shí)記錄各個(gè)虛擬裝置之間的直接關(guān)聯(lián)和間接關(guān)系。
[0071]在一個(gè)實(shí)施例中,上述關(guān)聯(lián)關(guān)系還包括特定虛擬裝置與至少一個(gè)其他虛擬裝置的關(guān)聯(lián)程度信息。該關(guān)聯(lián)程度依賴于以下信息:特定虛擬裝置與各個(gè)其他虛擬裝置所共享的虛擬機(jī)的數(shù)據(jù)量,共享的程度(完全共享或是部分共享),關(guān)聯(lián)的類型(直接關(guān)聯(lián)或是間接關(guān)聯(lián)),等等。關(guān)聯(lián)程度可以基于以上信息被量化。
[0072]在一個(gè)實(shí)施例中,響應(yīng)于步驟42的請求,實(shí)時(shí)執(zhí)行以上步驟441-443,由此確定特定虛擬裝置與其他虛擬裝置的關(guān)聯(lián)關(guān)系。在另一實(shí)施例中,基于各個(gè)虛擬裝置的元數(shù)據(jù),預(yù)先計(jì)算并維持各個(gè)虛擬裝置之間的關(guān)聯(lián)關(guān)系記錄。可以理解,通過將云數(shù)據(jù)中心中的各個(gè)虛擬裝置作為“特定虛擬裝置”,由此執(zhí)行上述步驟441-443,可以計(jì)算各個(gè)虛擬裝置之間的關(guān)聯(lián)關(guān)系,由此形成關(guān)聯(lián)關(guān)系記錄。在虛擬裝置的信息發(fā)生變更時(shí),可以更新上述關(guān)聯(lián)關(guān)系,由此維持關(guān)聯(lián)關(guān)系記錄。在這樣的情況下,在步驟44,可以從預(yù)先計(jì)算和維持的關(guān)聯(lián)關(guān)系記錄中讀取與特定虛擬裝置相關(guān)的信息,由此確定該特定虛擬裝置與其他虛擬裝置的關(guān)聯(lián)關(guān)系。
[0073]在確定出特定虛擬裝置與其他虛擬裝置的關(guān)聯(lián)關(guān)系的基礎(chǔ)上,在步驟46,根據(jù)所述關(guān)聯(lián)關(guān)系,提供用于獲取特定虛擬裝置的資源信息,其中包括指向其他虛擬裝置的資源地址。
[0074]圖7示出根據(jù)一個(gè)實(shí)施例的提供資源信息的步驟,即以上步驟46的子步驟。如圖7所示,首先在步驟461,根據(jù)所述關(guān)聯(lián)關(guān)系,確定所述特定虛擬裝置以及與其相關(guān)聯(lián)的所述至少一個(gè)其他虛擬裝置的存儲(chǔ)位置。在一個(gè)實(shí)施例中,上述存儲(chǔ)位置是特定虛擬裝置和所述至少一個(gè)其他虛擬裝置在云數(shù)據(jù)中心中的存儲(chǔ)位置。在一些情況下,云數(shù)據(jù)中心可能采用分布式計(jì)算設(shè)備來實(shí)現(xiàn)。此時(shí),在步驟461中需要確定各個(gè)虛擬裝置存儲(chǔ)在哪個(gè)計(jì)算設(shè)備的什么位置。在一個(gè)實(shí)施例中,用戶與云數(shù)據(jù)中心之間采用P2P傳輸方式,并且用戶也可以作為服務(wù)端來提供文件下載。此時(shí),已經(jīng)下載或正在下載特定虛擬裝置及其相關(guān)聯(lián)的其他虛擬裝置的其他用戶的用戶設(shè)備也可以作為下載源。相應(yīng)地,在步驟461中,確定存儲(chǔ)位置還包括,確定特定虛擬裝置和所述至少一個(gè)其他虛擬裝置在其他用戶的用戶設(shè)備中的存儲(chǔ)位置。
[0075]接著,在步驟462,產(chǎn)生多個(gè)資源地址,其中至少一個(gè)資源地址指向所述至少一個(gè)其他虛擬裝置的存儲(chǔ)位置。具體地,在一個(gè)實(shí)施例中,產(chǎn)生的多個(gè)資源地址包括至少一個(gè)指向所述特定虛擬裝置的存儲(chǔ)位置的資源地址,和至少一個(gè)指向所述至少一個(gè)其他虛擬裝置的存儲(chǔ)位置的資源地址。根據(jù)一個(gè)實(shí)施例中,資源地址提供為http URL鏈接的形式。
[0076]如前所述,在一個(gè)實(shí)施例中,上述存儲(chǔ)位置是在云數(shù)據(jù)中心中的存儲(chǔ)位置?;谶@樣的存儲(chǔ)位置,可以產(chǎn)生指向云數(shù)據(jù)中心的資源地址。由于各個(gè)虛擬裝置在云數(shù)據(jù)中心的存儲(chǔ)位置是固定的,因此,在一個(gè)實(shí)施例中,可以預(yù)先維持各個(gè)虛擬裝置和指向其存儲(chǔ)位置的各個(gè)資源地址的對應(yīng)關(guān)系。在步驟462,可以根據(jù)預(yù)先維持的對應(yīng)關(guān)系產(chǎn)生指向特定虛擬裝置的資源地址和指向所述至少一個(gè)其他虛擬裝置的資源地址。
[0077]在一個(gè)實(shí)施例中,上述存儲(chǔ)位置還包括,特定虛擬裝置和所述至少一個(gè)其他虛擬裝置在其他用戶的用戶設(shè)備中的存儲(chǔ)位置。此時(shí),在步驟462中,產(chǎn)生指向上述其他用戶的用戶設(shè)備的資源地址。在一個(gè)例子中,這樣的資源地址可以包括,其他用戶的用戶設(shè)備的IP地址,端口,訪問路徑等。
[0078]接著,在步驟463,基于所述多個(gè)資源地址提供資源信息。在一個(gè)實(shí)施例中,直接提供步驟462產(chǎn)生的多個(gè)資源地址作為資源信息。在另一實(shí)施例中,將步驟462產(chǎn)生的多個(gè)資源地址進(jìn)行排序。排序可以依照以下標(biāo)準(zhǔn)中的一個(gè)或多個(gè)進(jìn)行:資源地址涉及的虛擬裝置與特定虛擬裝置的關(guān)聯(lián)程度、資源地址指向的下載源的平均訪問速度、實(shí)時(shí)訪問速度等。由此,在資源信息中提供經(jīng)過排序的多個(gè)資源地址。
[0079]在一個(gè)實(shí)施例中,資源信息還包括,針對所述多個(gè)資源地址中的至少一部分提供的注釋信息。這樣的注釋信息可以對資源地址進(jìn)行進(jìn)一步補(bǔ)充說明,例如該資源地址指向的虛擬裝置與要獲取的特點(diǎn)虛擬裝置所共享的數(shù)據(jù)部分(例如,哪個(gè)虛擬機(jī)),共享類型是完全共享還是部分共享等。由此,注釋信息可以幫助用戶經(jīng)由資源地址準(zhǔn)確獲取需要的數(shù)據(jù)部分。
[0080]由于返回給用戶的資源信息為用戶提供了多個(gè)可選的資源地址,用戶可以選擇性地經(jīng)由這些資源地址獲取所需的特定虛擬裝置。特別是,在直接指向特定虛擬裝置在云數(shù)據(jù)中心的存儲(chǔ)位置的資源地址不可用,或下載速度不夠理想時(shí),可以經(jīng)由指向相關(guān)聯(lián)的其他虛擬裝置的資源地址來間接獲得特定虛擬裝置的部分虛擬機(jī)數(shù)據(jù)。更特別地,在P2P傳輸方式下,用戶還可以同時(shí)從其他用戶下載獲得特定虛擬裝置和與之關(guān)聯(lián)的其他虛擬裝置的數(shù)據(jù),從而進(jìn)一步增加了獲取數(shù)據(jù)的速度和效率??梢岳斫?,在這樣的情況下,用戶將從不同資源地址獲取到特定虛擬裝置的各個(gè)數(shù)據(jù)片段。如前所述,針對P2P傳輸而提供的torrent文件中包含有目標(biāo)文件信息,該目標(biāo)文件信息是將目標(biāo)文件劃分為多個(gè)塊,針對各個(gè)塊進(jìn)行特定編碼而生成的文件。這里最常用的是哈希編碼。哈希編碼是利用哈希函數(shù)將輸入的文件內(nèi)容編碼為特定數(shù)字。通過對下載得到的文件內(nèi)容進(jìn)行同樣的哈希編碼,并與torrent文件中存儲(chǔ)的對應(yīng)特定數(shù)字進(jìn)行比較,可以確定下載的文件內(nèi)容是否正確、完整。因此,在用戶從多個(gè)不同資源地址分別獲得特定虛擬裝置的不同數(shù)據(jù)片段的情況下,可以利用torrent文件確保來自不同資源地址的數(shù)據(jù)片段的完整性和正確性。
[0081]圖8示出本發(fā)明一個(gè)實(shí)施例的應(yīng)用場景。在圖8的例子中,用戶A向云數(shù)據(jù)中心請求獲得特定虛擬裝置VAl,其中VAl涉及虛擬機(jī)VM1,VM2和VM3。通過對VAl的元數(shù)據(jù)進(jìn)行分析,云數(shù)據(jù)中心可以確定,VAl與另一虛擬裝置VA2共享同樣的虛擬機(jī)VMl和VM2,并與又一虛擬裝置VM3共享虛擬機(jī)VM3。因此,虛擬裝置VAl與VA2和VA3相關(guān)聯(lián)。并且,云數(shù)據(jù)中心采用分布式計(jì)算設(shè)備,其中VAl存儲(chǔ)在服務(wù)器SI中,VA2存儲(chǔ)在S2中,VA3存儲(chǔ)在S3中。在這樣的情況下,云數(shù)據(jù)中心可以向用戶A提供分別指向VA1,VA2和VA3的資源地址Addl,Add2和Add3。這樣,除了從存儲(chǔ)有VAl的SI直接獲得虛擬裝置VAl的數(shù)據(jù)之外,用戶A還可以基于Add2從存儲(chǔ)VA2的S2獲取虛擬機(jī)VMl和VM2的數(shù)據(jù),基于Add3從存儲(chǔ)VA3的S3獲取虛擬機(jī)VM3的數(shù)據(jù),進(jìn)而獲取到VAl所需的全部虛擬機(jī)數(shù)據(jù)。在VAl與其他虛擬裝置就某個(gè)虛擬機(jī)部分共享的情況下,用戶可以根據(jù)資源地址的注釋信息,在下載的虛擬機(jī)的基礎(chǔ)上進(jìn)一步應(yīng)用定制信息,從而獲得所需的虛擬機(jī)。在支持P2P傳輸?shù)那闆r下,用戶A還可以進(jìn)一步從已經(jīng)下載和正在下載VA1,VA2和VA3的其他用戶的用戶設(shè)備分別獲取VAl,VA2和VA3的數(shù)據(jù),進(jìn)而獲取所需要的特定虛擬裝置VAl的全部數(shù)據(jù)。這些下載路徑由虛線示出。
[0082]相比于現(xiàn)有技術(shù)中僅僅從云數(shù)據(jù)中心直接下載VAl的方式,圖8的例子顯然提供了更多的可用下載源。這樣,用戶可以選擇性地同時(shí)從多個(gè)下載源下載VAl所需的虛擬機(jī)數(shù)據(jù)的片段,從而極大提高了獲取特定虛擬裝置VAl的效率。另一方面,由于用戶可以通過其他下載源獲取VAl的數(shù)據(jù),云數(shù)據(jù)中心的網(wǎng)絡(luò)壓力得以減輕。
[0083]基于同一發(fā)明構(gòu)思,本發(fā)明的實(shí)施例還提出了一種提供虛擬裝置的設(shè)備。圖9示出根據(jù)本發(fā)明一個(gè)實(shí)施例的設(shè)備的框圖。在圖9中,提供虛擬裝置的設(shè)備總體上示出為900。如圖所示,設(shè)備900包括:元數(shù)據(jù)獲取單元92,配置為,基于接收到的獲取特定虛擬裝置的請求,獲取所述特定虛擬裝置的元數(shù)據(jù),所述元數(shù)據(jù)描述所述特定虛擬裝置涉及的虛擬機(jī)的信息;關(guān)聯(lián)關(guān)系確定單元94,配置為,根據(jù)所述元數(shù)據(jù),確定所述特定虛擬裝置與至少一個(gè)其他虛擬裝置的關(guān)聯(lián)關(guān)系;以及資源信息提供單元96,配置為,根據(jù)所述關(guān)聯(lián)關(guān)系,提供用于獲取所述特定虛擬裝置的資源信息,所述資源信息包括多個(gè)資源地址,所述多個(gè)資源地址中的至少一個(gè)指向所述至少一個(gè)其他虛擬裝置的存儲(chǔ)位置。
[0084]在一個(gè)實(shí)施例中,上述元數(shù)據(jù)獲取單元92配置為:基于接收到的所述請求確定要獲取的特定虛擬裝置,基于確定的虛擬裝置獲取對應(yīng)的元數(shù)據(jù)。
[0085]進(jìn)一步地,根據(jù)一個(gè)實(shí)施例,所述獲取特定虛擬裝置的請求利用P2P傳輸中的種子文件發(fā)出;相應(yīng)地,所述元數(shù)據(jù)獲取單元92配置為,通過分析該種子文件中的目標(biāo)文件信息確定出要獲取的特定虛擬裝置。
[0086]根據(jù)一個(gè)實(shí)施例,上述元數(shù)據(jù)獲取單元92還配置為,從與所述特定虛擬裝置對應(yīng)的封裝數(shù)據(jù)包中提取出對涉及的虛擬機(jī)進(jìn)行描述的描述文件,將該描述文件作為所述特定虛擬裝置的元數(shù)據(jù)。
[0087]在一個(gè)實(shí)施例中,上述關(guān)聯(lián)關(guān)系確定單元94包括(未示出):虛擬機(jī)信息獲取模塊,配置為從所述元數(shù)據(jù)中獲取所述特定虛擬裝置涉及的各個(gè)虛擬機(jī)的虛擬機(jī)信息;虛擬機(jī)信息比對模塊,配置為將獲取的所述特定虛擬裝置涉及的各個(gè)虛擬機(jī)的虛擬機(jī)信息與至少一個(gè)其他虛擬裝置所對應(yīng)的虛擬機(jī)信息進(jìn)行比對;以及確定模塊,配置為,響應(yīng)于所述特定虛擬裝置中某個(gè)虛擬機(jī)的虛擬機(jī)信息與至少一個(gè)其他虛擬裝置中的對應(yīng)虛擬機(jī)的虛擬機(jī)信息相同,將所述關(guān)聯(lián)關(guān)系確定為,所述特定虛擬裝置與所述至少一個(gè)其他虛擬裝置共享上述某個(gè)虛擬機(jī)。
[0088]根據(jù)一個(gè)實(shí)施例,上述確定模塊進(jìn)一步配置為,響應(yīng)于所述某個(gè)虛擬機(jī)的虛擬機(jī)信息和對應(yīng)虛擬機(jī)的虛擬機(jī)信息相同但定制信息不同,將所述關(guān)聯(lián)關(guān)系確定為,所述特定虛擬裝置與所述至少一個(gè)其他虛擬裝置部分地共享上述某個(gè)虛擬機(jī)。
[0089]在一個(gè)實(shí)施例中,上述關(guān)聯(lián)關(guān)系確定單元94配置為,從預(yù)先計(jì)算和維持的關(guān)聯(lián)關(guān)系記錄中讀取與所述特定虛擬裝置相關(guān)的信息,由此確定該特定虛擬裝置與至少一個(gè)其他虛擬裝置的關(guān)聯(lián)關(guān)系。
[0090]在一個(gè)實(shí)施例中,上述資源信息提供單元96包括(未示出):存儲(chǔ)位置確定模塊,配置為根據(jù)所述關(guān)聯(lián)關(guān)系,確定所述特定虛擬裝置以及與其相關(guān)聯(lián)的所述至少一個(gè)其他虛擬裝置的存儲(chǔ)位置;資源地址產(chǎn)生模塊,配置為產(chǎn)生多個(gè)資源地址,其中至少一個(gè)資源地址指向所述至少一個(gè)其他虛擬裝置的存儲(chǔ)位置;以及提供模塊,配置為基于所述多個(gè)資源地址提供資源信息。
[0091]根據(jù)一個(gè)實(shí)施例,上述存儲(chǔ)位置包括,所述特定虛擬裝置和所述至少一個(gè)其他虛擬裝置在其他用戶的用戶設(shè)備中的存儲(chǔ)位置。
[0092]根據(jù)一個(gè)實(shí)施例,上述提供模塊配置為,將產(chǎn)生的所述多個(gè)資源地址進(jìn)行排序;在資源信息中提供經(jīng)過排序的所述多個(gè)資源地址。
[0093]根據(jù)一個(gè)實(shí)施例,上述資源信息還包括,針對所述多個(gè)資源地址中的至少一部分提供的注釋信息,所述注釋信息包括以下內(nèi)容中的至少一項(xiàng):共享的數(shù)據(jù)部分和共享類型。
[0094]在一個(gè)實(shí)施例中,上述設(shè)備900包含在云數(shù)據(jù)中心中。在另一實(shí)施例中,上述設(shè)備900作用為單獨(dú)的工具,與云數(shù)據(jù)中心通信,從而輔助云數(shù)據(jù)中心向用戶提供虛擬裝置。
[0095]以上用于提供虛擬裝置的設(shè)備900的具體執(zhí)行方式可以參照之前結(jié)合具體例子對圖4的方法的描述,在此不再贅述。
[0096]利用本發(fā)明實(shí)施例的方法和設(shè)備,可以在用戶向云數(shù)據(jù)中心請求獲得虛擬裝置時(shí),為用戶提供更多資源選擇,從而提高用戶獲取虛擬裝置的效率,減小對云數(shù)據(jù)中心的網(wǎng)絡(luò)傳輸壓力。
[0097]以上已經(jīng)描述了本發(fā)明的各實(shí)施例,上述說明是示例性的,并非窮盡性的,并且也不限于所披露的各實(shí)施例。在不偏離所說明的各實(shí)施例的范圍和精神的情況下,對于本【技術(shù)領(lǐng)域】的普通技術(shù)人員來說許多修改和變更都是顯而易見的。本文中所用術(shù)語的選擇,旨在最好地解釋各實(shí)施例的原理、實(shí)際應(yīng)用或?qū)κ袌鲋械募夹g(shù)的改進(jìn),或者使本【技術(shù)領(lǐng)域】的其它普通技術(shù)人員能理解本文披露的各實(shí)施例。
【權(quán)利要求】
1.一種提供虛擬裝置的方法,包括: 基于接收到的獲取特定虛擬裝置的請求,獲取所述特定虛擬裝置的元數(shù)據(jù),所述元數(shù)據(jù)描述所述特定虛擬裝置涉及的虛擬機(jī)的信息; 根據(jù)所述元數(shù)據(jù),確定所述特定虛擬裝置與至少一個(gè)其他虛擬裝置的關(guān)聯(lián)關(guān)系; 根據(jù)所述關(guān)聯(lián)關(guān)系,提供用于獲取所述特定虛擬裝置的資源信息,所述資源信息包括多個(gè)資源地址,所述多個(gè)資源地址中的至少一個(gè)指向所述至少一個(gè)其他虛擬裝置的存儲(chǔ)位置。
2.根據(jù)權(quán)利要求1所述的方法,其中所述獲取特定虛擬裝置的元數(shù)據(jù)包括:基于接收到的所述請求確定要獲取的特定虛擬裝置,基于確定的虛擬裝置獲取對應(yīng)的元數(shù)據(jù)。
3.根據(jù)權(quán)利要求2所述的方法,其中所述請求利用P2P傳輸中的種子文件發(fā)出,所述確定要獲取的特定虛擬裝置包括,通過分析該種子文件中的目標(biāo)文件信息確定出要獲取的特定虛擬裝置。
4.根據(jù)權(quán)利要 求2所述的方法,其中基于確定的虛擬裝置獲取對應(yīng)的元數(shù)據(jù)包括,從與所述特定虛擬裝置對應(yīng)的封裝數(shù)據(jù)包中提取出對涉及的虛擬機(jī)進(jìn)行描述的描述文件,將該描述文件作為所述特定虛擬裝置的元數(shù)據(jù)。
5.根據(jù)權(quán)利要求1所述的方法,其中確定所述特定虛擬裝置與至少一個(gè)其他虛擬裝置的關(guān)聯(lián)關(guān)系包括: 從所述元數(shù)據(jù)中獲取所述特定虛擬裝置涉及的各個(gè)虛擬機(jī)的虛擬機(jī)信息; 將獲取的所述特定虛擬裝置涉及的各個(gè)虛擬機(jī)的虛擬機(jī)信息與至少一個(gè)其他虛擬裝置所對應(yīng)的虛擬機(jī)信息進(jìn)行比對;以及 響應(yīng)于所述特定虛擬裝置中某個(gè)虛擬機(jī)的虛擬機(jī)信息與至少一個(gè)其他虛擬裝置中的對應(yīng)虛擬機(jī)的虛擬機(jī)信息相同,將所述關(guān)聯(lián)關(guān)系確定為,所述特定虛擬裝置與所述至少一個(gè)其他虛擬裝置共享上述某個(gè)虛擬機(jī)。
6.根據(jù)權(quán)利要求5所述的方法,其中,響應(yīng)于所述某個(gè)虛擬機(jī)的虛擬機(jī)信息和對應(yīng)虛擬機(jī)的虛擬機(jī)信息相同但定制信息不同,將所述關(guān)聯(lián)關(guān)系確定為,所述特定虛擬裝置與所述至少一個(gè)其他虛擬裝置部分地共享上述某個(gè)虛擬機(jī)。
7.根據(jù)權(quán)利要求1所述的方法,其中確定所述特定虛擬裝置與至少一個(gè)其他虛擬裝置的關(guān)聯(lián)關(guān)系包括,從預(yù)先計(jì)算和維持的關(guān)聯(lián)關(guān)系記錄中讀取與所述特定虛擬裝置相關(guān)的信息,由此確定該特定虛擬裝置與至少一個(gè)其他虛擬裝置的關(guān)聯(lián)關(guān)系。
8.根據(jù)權(quán)利要求1所述的方法,其中所述提供用于獲取所述特定虛擬裝置的資源信息包括: 根據(jù)所述關(guān)聯(lián)關(guān)系,確定所述特定虛擬裝置以及與其相關(guān)聯(lián)的所述至少一個(gè)其他虛擬裝置的存儲(chǔ)位置; 產(chǎn)生多個(gè)資源地址,其中至少一個(gè)資源地址指向所述至少一個(gè)其他虛擬裝置的存儲(chǔ)位置;以及 基于所述多個(gè)資源地址提供資源信息。
9.根據(jù)權(quán)利要求7的方法,其中所述存儲(chǔ)位置包括,所述特定虛擬裝置和所述至少一個(gè)其他虛擬裝置在其他用戶的用戶設(shè)備中的存儲(chǔ)位置。
10.根據(jù)權(quán)利要求7的方法,其中基于所述多個(gè)資源地址提供資源信息包括,將產(chǎn)生的所述多個(gè)資源地址進(jìn)行排序;在資源信息中提供經(jīng)過排序的所述多個(gè)資源地址。
11.根據(jù)權(quán)利要求7的方法,其中所述資源信息還包括,針對所述多個(gè)資源地址中的至少一部分提供的注釋信息,所述注釋信息包括以下內(nèi)容中的至少一項(xiàng):共享的數(shù)據(jù)部分和共享類型。
12.一種提供虛擬裝置的設(shè)備,包括: 元數(shù)據(jù)獲取單元,配置為,基于接收到的獲取特定虛擬裝置的請求,獲取所述特定虛擬裝置的元數(shù)據(jù),所述元數(shù)據(jù)描述所述特定虛擬裝置涉及的虛擬機(jī)的信息; 關(guān)聯(lián)關(guān)系確定單元,配置為,根據(jù)所述元數(shù)據(jù),確定所述特定虛擬裝置與至少一個(gè)其他虛擬裝置的關(guān)聯(lián)關(guān)系; 資源信息提供單元,配置為,根據(jù)所述關(guān)聯(lián)關(guān)系,提供用于獲取所述特定虛擬裝置的資源信息,所述資源信息包括多個(gè)資源地址,所述多個(gè)資源地址中的至少一個(gè)指向所述至少一個(gè)其他虛擬裝置的存儲(chǔ)位置。
13.根據(jù)權(quán)利要求12所述的設(shè)備,其中所述元數(shù)據(jù)獲取單元配置為:基于接收到的所述請求確定要獲取的特定虛擬裝置,基于確定的虛擬裝置獲取對應(yīng)的元數(shù)據(jù)。
14.根據(jù)權(quán)利要求13所述的設(shè)備,其中所述請求利用P2P傳輸中的種子文件發(fā)出,所述元數(shù)據(jù)獲取單元配置為,通過分析該種子文件中的目標(biāo)文件信息確定出要獲取的特定虛擬>j-U ρ?α 裝直。
15.根據(jù)權(quán)利要求13所述的設(shè)備,其中所述元數(shù)據(jù)獲取單元配置為,從與所述特定虛擬裝置對應(yīng)的封裝數(shù)據(jù)包中提取出對涉及的虛擬機(jī)進(jìn)行描述的描述文件,將該描述文件作為所述特定虛擬裝置的元數(shù)據(jù)。
16.根據(jù)權(quán)利要求12所述的設(shè)備,其中關(guān)聯(lián)關(guān)系確定單元包括: 虛擬機(jī)信息獲取模塊,配置為從所述元數(shù)據(jù)中獲取所述特定虛擬裝置涉及的各個(gè)虛擬機(jī)的虛擬機(jī)信息; 虛擬機(jī)信息比對模塊,配置為將獲取的所述特定虛擬裝置涉及的各個(gè)虛擬機(jī)的虛擬機(jī)信息與至少一個(gè)其他虛擬裝置所對應(yīng)的虛擬機(jī)信息進(jìn)行比對;以及 確定模塊,配置為,響應(yīng)于所述特定虛擬裝置中某個(gè)虛擬機(jī)的虛擬機(jī)信息與至少一個(gè)其他虛擬裝置中的對應(yīng)虛擬機(jī)的虛擬機(jī)信息相同,將所述關(guān)聯(lián)關(guān)系確定為,所述特定虛擬裝置與所述至少一個(gè)其他虛擬裝置共享上述某個(gè)虛擬機(jī)。
17.根據(jù)權(quán)利要求16所述的設(shè)備,其中,所述確定模塊配置為,響應(yīng)于所述某個(gè)虛擬機(jī)的虛擬機(jī)信息和對應(yīng)虛擬機(jī)的虛擬機(jī)信息相同但定制信息不同,將所述關(guān)聯(lián)關(guān)系確定為,所述特定虛擬裝置與所述至少一個(gè)其他虛擬裝置部分地共享上述某個(gè)虛擬機(jī)。
18.根據(jù)權(quán)利要求12所述的設(shè)備,其中所述關(guān)聯(lián)關(guān)系確定單元配置為,從預(yù)先計(jì)算和維持的關(guān)聯(lián)關(guān)系記錄中讀取與所述特定虛擬裝置相關(guān)的信息,由此確定該特定虛擬裝置與至少一個(gè)其他虛擬裝置的關(guān)聯(lián)關(guān)系。
19.根據(jù)權(quán)利要求12所述的設(shè)備,其中所述資源信息提供單元包括: 存儲(chǔ)位置確定模塊,配置為根據(jù)所述關(guān)聯(lián)關(guān)系,確定所述特定虛擬裝置以及與其相關(guān)聯(lián)的所述至少一個(gè)其他虛擬裝置的存儲(chǔ)位置; 資源地址產(chǎn)生模塊,配置為產(chǎn)生多個(gè)資源地址,其中至少一個(gè)資源地址指向所述至少一個(gè)其他虛擬裝置的存儲(chǔ)位置;以及提供模塊,配置為基于所述多個(gè)資源地址提供資源信息。
20.根據(jù)權(quán)利要求19的設(shè)備,其中所述存儲(chǔ)位置包括,所述特定虛擬裝置和所述至少一個(gè)其他虛擬裝置在其他用戶的用戶設(shè)備中的存儲(chǔ)位置。
21.根據(jù)權(quán)利要求19的設(shè)備,其中所述提供模塊配置為,將產(chǎn)生的所述多個(gè)資源地址進(jìn)行排序;在資源信息中提供經(jīng)過排序的所述多個(gè)資源地址。
22.根據(jù)權(quán)利要求19的設(shè)備,其中所述資源信息還包括,針對所述多個(gè)資源地址中的至少一部分提供的注釋信息,所述注釋信息包括以下內(nèi)容中的至少一項(xiàng):共享的數(shù)據(jù)部分和共享類型。
【文檔編號(hào)】G06F9/455GK104021027SQ201310064426
【公開日】2014年9月3日 申請日期:2013年2月28日 優(yōu)先權(quán)日:2013年2月28日
【發(fā)明者】王夕寧, 曾春光, 芮蘇英, 劉昕鵬, 朱樸 申請人:國際商業(yè)機(jī)器公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會(huì)獲得點(diǎn)贊!
1