專利名稱:一種虛擬機(jī)控制方法、系統(tǒng)及裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及網(wǎng)絡(luò)通信技術(shù)領(lǐng)域,尤其涉及一種虛擬機(jī)控制方法、系統(tǒng)及裝置。
背景技術(shù):
服務(wù)器虛擬化技術(shù)在一臺(tái)物理機(jī)中構(gòu)建出多個(gè)相互獨(dú)立的虛擬機(jī),各虛擬機(jī)可共享CPU、內(nèi)存、I/O等原有物理機(jī)底層的硬件平臺(tái),有助于實(shí)現(xiàn)IT系統(tǒng)的整合以及建立資源動(dòng)態(tài)共享的服務(wù)器池。虛擬化產(chǎn)品同時(shí)提供配套的管理工具,與虛擬化服務(wù)器一起,為用戶提供資源統(tǒng)一管理和動(dòng)態(tài)調(diào)度,并具備一定可用性的IT基礎(chǔ)設(shè)施。通過(guò)虛擬化技術(shù)能夠?qū)崿F(xiàn)增量部署、應(yīng)用隔離、資源調(diào)度和服務(wù)器整合等技術(shù),從而大大提高硬件資源利用率,簡(jiǎn)化服務(wù)器安裝過(guò)程、降低IT管理和維護(hù)成本。一個(gè)典型的虛擬化平臺(tái)管理系統(tǒng)如圖1所示,大量的物理機(jī)組成了硬件資源池,在每個(gè)物理機(jī)上運(yùn)行虛擬機(jī)監(jiān)控器(VMM),虛擬機(jī)監(jiān)控器負(fù)責(zé)管理底層的硬件資源和上層的虛擬機(jī),每個(gè)虛擬機(jī)監(jiān)控器可以啟動(dòng)和管理運(yùn)行在本地物理機(jī)上的多個(gè)虛擬機(jī);在每個(gè)虛擬機(jī)中可以安裝不同的操作系統(tǒng)(如windows或Linux)以及應(yīng)用。由于每個(gè)虛擬機(jī)監(jiān)控器只能管理其所在物理機(jī)上的虛擬機(jī),因此在上層需要一個(gè)虛擬平臺(tái)管理器,負(fù)責(zé)調(diào)度所有的底層硬件資源,通過(guò)每個(gè)物理機(jī)上的虛擬機(jī)監(jiān)控器,動(dòng)態(tài)創(chuàng)建和管理虛擬機(jī),從而達(dá)到資源按需供應(yīng)的目的。在對(duì)虛擬機(jī)進(jìn)行部署時(shí),將不同類型的操作系統(tǒng)分別制作為虛擬機(jī)鏡像文件,以該鏡像文件作為模版,當(dāng)需要?jiǎng)討B(tài)創(chuàng)建虛擬機(jī)時(shí),只需要對(duì)模版鏡像文件進(jìn)行拷貝,就可以將該鏡像文件作為虛擬機(jī)的虛擬磁盤進(jìn)行啟動(dòng),模板鏡像文件中包含安裝好的操作系統(tǒng), 虛擬機(jī)啟動(dòng)后用戶可以使用虛擬機(jī),而不需要進(jìn)行操作系統(tǒng)安裝的過(guò)程。但實(shí)際應(yīng)用中,考慮到一臺(tái)虛擬機(jī)可能在任意的物理機(jī)上部署運(yùn)行,因此當(dāng)用戶實(shí)際使用時(shí),虛擬機(jī)管理系統(tǒng)往往需要臨時(shí)部署虛擬機(jī)鏡像文件。通常的做法是在每臺(tái)物理機(jī)上保存一份虛擬機(jī)鏡像文件,每當(dāng)一位用戶申請(qǐng)一個(gè)虛擬機(jī)時(shí),系統(tǒng)就復(fù)制一份鏡像文件;或者,在物理環(huán)境中使用共享的SAN存儲(chǔ)設(shè)備,每當(dāng)一位用戶申請(qǐng)一個(gè)虛擬機(jī)時(shí),系統(tǒng)從SAN設(shè)備上復(fù)制一份鏡像文件到物理機(jī)上。虛擬機(jī)鏡像文件一般都在IOG以上,這使得復(fù)制整個(gè)鏡像文件要花費(fèi)較長(zhǎng)時(shí)間, 如果用戶使用SAN網(wǎng)絡(luò)存儲(chǔ)設(shè)備,復(fù)制一個(gè)虛擬機(jī)鏡像文件還會(huì)引起大量網(wǎng)絡(luò)通信。針對(duì)此問(wèn)題,目前的解決方法是將不同類型的數(shù)據(jù)分離存儲(chǔ)為不同類型的鏡像文件,具體地,將操作系統(tǒng)部分作為模板鏡像文件,將應(yīng)用程序以及用戶數(shù)據(jù)部分作為增量鏡像文件,采用該方法,通常對(duì)于請(qǐng)求使用相同操作系統(tǒng)的用戶,無(wú)需復(fù)制模板鏡像文件,從而減少了所需復(fù)制的數(shù)據(jù)量。但根據(jù)該方法,每次將運(yùn)行虛擬機(jī)所需要的各鏡像文件復(fù)制到目標(biāo)物理機(jī)之后,系統(tǒng)需要將增量鏡像文件與模板鏡像文件合并后才能使用,由于增量鏡像文件以及模板鏡像文件本身都占有較大數(shù)據(jù)量,因此,該合并過(guò)程需要耗費(fèi)較多時(shí)間,從而使得虛擬機(jī)的啟動(dòng)時(shí)間過(guò)長(zhǎng)
發(fā)明內(nèi)容
有鑒于此,本發(fā)明實(shí)施例提供一種虛擬機(jī)控制方法、系統(tǒng)及裝置,采用該技術(shù)方案,縮短了啟動(dòng)虛擬機(jī)耗費(fèi)的時(shí)長(zhǎng)。本發(fā)明實(shí)施例通過(guò)如下技術(shù)方案實(shí)現(xiàn)根據(jù)本發(fā)明實(shí)施例的一個(gè)方面,提供了一種虛擬機(jī)控制方法。根據(jù)本發(fā)明實(shí)施例提供的虛擬機(jī)控制方法,包括接收用戶的虛擬機(jī)啟動(dòng)請(qǐng)求,所述啟動(dòng)請(qǐng)求包括請(qǐng)求啟動(dòng)的虛擬機(jī)對(duì)應(yīng)的鏡像文件描述信息;根據(jù)所述鏡像文件描述信息確定虛擬機(jī)操作系統(tǒng)對(duì)應(yīng)的模板鏡像文件以及增量鏡像文件;將確定的所述模板鏡像文件以及所述增量鏡像文件分別與用于啟動(dòng)所述虛擬機(jī)的物理機(jī)本地保存的鏡像文件匹配,根據(jù)匹配結(jié)果確定啟動(dòng)所述虛擬機(jī)的索引鏡像文件并加載。根據(jù)本發(fā)明實(shí)施例的另一個(gè)方面,還提供了一種虛擬機(jī)控制系統(tǒng)。根據(jù)本發(fā)明實(shí)施例提供的虛擬機(jī)控制系統(tǒng),包括虛擬平臺(tái)管理器以及至少一臺(tái)物理機(jī);所述虛擬平臺(tái)管理器,用于接收用戶的虛擬機(jī)啟動(dòng)請(qǐng)求,所述啟動(dòng)請(qǐng)求包括請(qǐng)求啟動(dòng)的虛擬機(jī)對(duì)應(yīng)的鏡像文件描述信息;根據(jù)所述鏡像文件描述信息確定虛擬機(jī)操作系統(tǒng)對(duì)應(yīng)的模板鏡像文件以及增量鏡像文件;將確定的所述模板鏡像文件以及所述增量鏡像文件分別與用于啟動(dòng)所述虛擬機(jī)的物理機(jī)本地保存的鏡像文件匹配,根據(jù)匹配結(jié)果確定啟動(dòng)所述虛擬機(jī)的索引鏡像文件并加載;所述物理機(jī),用于根據(jù)所述虛擬平臺(tái)管理器的指示,獲取指定鏡像文件、建立用于關(guān)聯(lián)指定鏡像文件的索引鏡像文件、以及加載索引鏡像文件。根據(jù)本發(fā)明實(shí)施例的另一個(gè)方面,還提供了一種虛擬機(jī)控制裝置。根據(jù)本發(fā)明實(shí)施例提供的虛擬機(jī)控制裝置,包括接收單元,用于接收用戶的虛擬機(jī)啟動(dòng)請(qǐng)求,所述啟動(dòng)請(qǐng)求包括請(qǐng)求啟動(dòng)的虛擬機(jī)對(duì)應(yīng)的鏡像文件描述信息;鏡像文件確定單元,用于根據(jù)所述鏡像文件描述信息確定虛擬機(jī)操作系統(tǒng)對(duì)應(yīng)的模板鏡像文件以及虛擬機(jī)應(yīng)用程序或/和用戶個(gè)人數(shù)據(jù)對(duì)應(yīng)的增量鏡像文件;控制單元,用于將確定的所述模板鏡像文件以及所述增量鏡像文件分別與用于啟動(dòng)所述虛擬機(jī)的物理機(jī)本地保存的鏡像文件匹配,根據(jù)匹配結(jié)果確定啟動(dòng)所述虛擬機(jī)的索引鏡像文件并加載。通過(guò)本發(fā)明實(shí)施例提供的上述至少一個(gè)技術(shù)方案,接收用戶的虛擬機(jī)啟動(dòng)請(qǐng)求, 該啟動(dòng)請(qǐng)求包括請(qǐng)求啟動(dòng)的虛擬機(jī)對(duì)應(yīng)的鏡像文件描述信息,進(jìn)一步根據(jù)鏡像文件描述信息確定虛擬機(jī)操作系統(tǒng)對(duì)應(yīng)的模板鏡像文件以及增量鏡像文件,并將確定的模板鏡像文件以及增量鏡像文件分別與用于啟動(dòng)虛擬機(jī)的物理機(jī)本地保存的鏡像文件匹配,根據(jù)匹配結(jié)果確定啟動(dòng)虛擬機(jī)的索引鏡像文件并加載。根據(jù)本發(fā)明實(shí)施例提供的技術(shù)方案,僅需要確定索引鏡像文件并加載,而無(wú)需如現(xiàn)有技術(shù)所述需要合并鏡像文件,由于索引鏡像文件占用的數(shù)據(jù)量很小,加載操作需要耗費(fèi)的時(shí)間很短,從而縮短了啟動(dòng)虛擬機(jī)耗費(fèi)的時(shí)長(zhǎng)。
本發(fā)明的其它特征和優(yōu)點(diǎn)將在隨后的說(shuō)明書中闡述,并且,部分地從說(shuō)明書中變得顯而易見,或者通過(guò)實(shí)施本發(fā)明而了解。本發(fā)明的目的和其他優(yōu)點(diǎn)可通過(guò)在所寫的說(shuō)明書、權(quán)利要求書、以及附圖中所特別指出的結(jié)構(gòu)來(lái)實(shí)現(xiàn)和獲得。
附圖用來(lái)提供對(duì)本發(fā)明的進(jìn)一步理解,并且構(gòu)成說(shuō)明書的一部分,與本發(fā)明實(shí)施例一起用于解釋本發(fā)明,并不構(gòu)成對(duì)本發(fā)明的限制。在附圖中圖1為本發(fā)明背景技術(shù)提供的虛擬機(jī)系統(tǒng)示意圖;圖2為傳統(tǒng)虛擬機(jī)每個(gè)鏡像文件的結(jié)構(gòu)示意圖;圖3為本發(fā)明實(shí)施例提供的鏡像文件的結(jié)構(gòu)示意圖;圖4為本發(fā)明實(shí)施例提供的虛擬機(jī)控制方法流程圖;圖5為本發(fā)明實(shí)施例提供的虛擬機(jī)控制系統(tǒng)示意圖;圖6為本發(fā)明實(shí)施例提供的虛擬機(jī)控制裝置結(jié)構(gòu)圖一;圖7為本發(fā)明實(shí)施例提供的虛擬機(jī)控制裝置結(jié)構(gòu)圖二 ;圖8為本發(fā)明實(shí)施例提供的虛擬機(jī)控制裝置結(jié)構(gòu)圖三;圖9為本發(fā)明實(shí)施例提供的虛擬機(jī)控制裝置結(jié)構(gòu)圖四;圖10為本發(fā)明實(shí)施例提供的虛擬機(jī)控制裝置結(jié)構(gòu)圖五。
具體實(shí)施例方式為了給出縮短啟動(dòng)虛擬機(jī)耗費(fèi)的時(shí)長(zhǎng)的實(shí)現(xiàn)方案,本發(fā)明實(shí)施例提供了一種虛擬機(jī)控制方法、系統(tǒng)及裝置,以下結(jié)合說(shuō)明書附圖對(duì)本發(fā)明的優(yōu)選實(shí)施例進(jìn)行說(shuō)明,應(yīng)當(dāng)理解,此處所描述的優(yōu)選實(shí)施例僅用于說(shuō)明和解釋本發(fā)明,并不用于限定本發(fā)明。并且在不沖突的情況下,本申請(qǐng)中的實(shí)施例及實(shí)施例中的特征可以相互組合。本發(fā)明實(shí)施例實(shí)現(xiàn)了虛擬機(jī)操作系統(tǒng),用戶安裝的應(yīng)用程序和用戶個(gè)人數(shù)據(jù)的分離,通過(guò)使用索引鏡像文件減少了各鏡像文件合并的操作,從而提高了系統(tǒng)整體響應(yīng)速度。 如圖2所示,傳統(tǒng)虛擬機(jī)每個(gè)鏡像文件都包含操作系統(tǒng)、應(yīng)用程序以及用戶個(gè)人數(shù)據(jù)三類數(shù)據(jù),如果兩個(gè)用戶使用同一個(gè)虛擬機(jī),針對(duì)每個(gè)用戶都對(duì)應(yīng)一個(gè)完整的鏡像文件,即包含操作系統(tǒng)對(duì)應(yīng)的數(shù)據(jù)、應(yīng)用程序?qū)?yīng)的數(shù)據(jù)以及用戶個(gè)人數(shù)據(jù)。而實(shí)際上,在兩個(gè)用戶使用同一個(gè)虛擬機(jī)的情況下,只是用戶個(gè)人數(shù)據(jù)不同,那么只要將用戶個(gè)人數(shù)據(jù)分離為單獨(dú)的鏡像文件存儲(chǔ),就只需存儲(chǔ)一份操作系統(tǒng)的鏡像文件和一份應(yīng)用程序鏡像文件,一方面能夠節(jié)省物理機(jī)存儲(chǔ)資源,另一方面,減少了針對(duì)相同部分?jǐn)?shù)據(jù)復(fù)制以及合并的數(shù)據(jù)量。根據(jù)本發(fā)明實(shí)施例,首先提供了一種鏡像文件的存儲(chǔ)方法,在各物理機(jī)中,虛擬機(jī)啟動(dòng)需要的鏡像文件如圖3所示,虛擬機(jī)每個(gè)鏡像文件的操作系統(tǒng)對(duì)應(yīng)的鏡像文件、應(yīng)用程序?qū)?yīng)的鏡像文件以及用戶個(gè)人數(shù)據(jù)對(duì)應(yīng)的鏡像文件分離存儲(chǔ),其中,操作系統(tǒng)對(duì)應(yīng)的鏡像文件即為模板鏡像文件,應(yīng)用程序?qū)?yīng)的鏡像文件以及用戶個(gè)人數(shù)據(jù)對(duì)應(yīng)的鏡像文件即為增量鏡像文件。在將各類型的鏡像文件分離存儲(chǔ)后,需要建立用于關(guān)聯(lián)模板鏡像文件以及增量鏡像文件的索引鏡像文件,該索引鏡像文件一方面標(biāo)識(shí)了存在關(guān)聯(lián)關(guān)系的模板鏡像文件以及增量鏡像文件,另一方面標(biāo)識(shí)了模板鏡像文件以及增量鏡像文件在物理機(jī)的存儲(chǔ)位置。
一個(gè)在物理機(jī)中對(duì)鏡像文件分離的具體實(shí)施例如下1、首先準(zhǔn)備一個(gè)虛擬機(jī)鏡像模板,這個(gè)模板只包含最基本的操作系統(tǒng),命名為 DO ;2、基于D0,用戶無(wú)論是安裝其他應(yīng)用程序或?qū)懭雮€(gè)人數(shù)據(jù)文件,都是對(duì)這個(gè)鏡像的數(shù)據(jù)操作,因此可以按照數(shù)據(jù)的變化與否進(jìn)行歸類。索引鏡像文件的建立過(guò)程即將初始鏡像文件與更新后鏡像文件(即經(jīng)過(guò)用戶操作的鏡像文件)之間進(jìn)行比較的過(guò)程,比較結(jié)果可分為相同部分(即沒有改變的部分)和不同部分,其中,不同部分對(duì)應(yīng)的鏡像文件可能是由于更改初始鏡像文件或在初始鏡像文件的基礎(chǔ)上新增鏡像文件產(chǎn)生。在具體實(shí)現(xiàn)時(shí), 可以將不同部分對(duì)應(yīng)的鏡像文件單獨(dú)保存為一個(gè)鏡像(為方便后續(xù)描述,記為Dl鏡像), 并將對(duì)于Dl鏡像的索引保存為用于關(guān)聯(lián)原始鏡像以及Dl鏡像的一個(gè)索引鏡像文件(為方便后續(xù)描述,記為D0-1),DO-I表示將DO和Dl兩個(gè)鏡像關(guān)聯(lián)起來(lái)的索引數(shù)據(jù)。因此,(DO, DO-I, Dl)這個(gè)三元組唯一標(biāo)識(shí)了經(jīng)過(guò)用戶修改后的鏡像文件。根據(jù)以上鏡像文件的存儲(chǔ)方式,如果用戶想使用初始鏡像,DO即可滿足;如果用戶想使用某一應(yīng)用軟件或數(shù)據(jù),需要與此應(yīng)用程序?qū)?yīng)的(D0,D0-1,D1)即可。在用戶使用虛擬機(jī)的過(guò)程中,可以對(duì)鏡像文件進(jìn)行修改,即根據(jù)用戶的操作行為實(shí)時(shí)地對(duì)鏡像文件進(jìn)行更新,以方便下次啟動(dòng)虛擬機(jī)時(shí)使用。具體地,如果用戶想在鏡像文件(DO,DO-I, Dl)上進(jìn)行修改,可以通過(guò)3次比較操作產(chǎn)生如下鏡像文件a) DO 初始鏡像文件(即操作系統(tǒng)對(duì)應(yīng)的鏡像文件);b)Dl 第一次修改的新增數(shù)據(jù)(如應(yīng)用程序或/和用戶個(gè)人數(shù)據(jù)對(duì)應(yīng)的鏡像文件);c)DO-I 第一次修改對(duì)應(yīng)的索引鏡像文件(即用于關(guān)聯(lián)DO和Dl的索引鏡像文件)d)D2 第二次修改的新增(如添加應(yīng)用程序或/和修改用戶個(gè)人數(shù)據(jù)產(chǎn)生的鏡像文件)e)D0-l-2 第二次修改中對(duì)于(D0,D0_1)的索引鏡像文件(即用于關(guān)聯(lián)D2與(D0, D0-1)的索引鏡像文件);f)Dl-2 第二次修改中對(duì)于Dl的索引鏡像文件(即用于關(guān)聯(lián)D2與Dl的索引鏡像文件)。在實(shí)際操作中,無(wú)論用戶安裝大型應(yīng)用軟件或?qū)懭氪罅總€(gè)人數(shù)據(jù),由此產(chǎn)生的數(shù)
據(jù)索引(如D0-l、D0-l-2......D1-2等)總是很小,因此借助這些索引,我們可以大大減少
鏡像合并操作的時(shí)間?;谏鲜鲧R像文件的存儲(chǔ)方式,本發(fā)明實(shí)施例提供的虛擬機(jī)控制方法,如圖4所示,包括如下步驟步驟401、接收用戶的虛擬機(jī)啟動(dòng)請(qǐng)求,該啟動(dòng)請(qǐng)求中包括請(qǐng)求啟動(dòng)的虛擬機(jī)對(duì)應(yīng)的鏡像文件描述信息。該步驟中,鏡像文件描述信息即用于指定需要啟動(dòng)的虛擬機(jī)的操作系統(tǒng)類型的信息。優(yōu)選地,該鏡像文件描述信息還可以進(jìn)指定需要啟動(dòng)的虛擬機(jī)要安裝的應(yīng)用程序或/ 和要調(diào)用的用戶個(gè)人數(shù)據(jù)等信息。步驟402、根據(jù)鏡像文件描述信息確定虛擬機(jī)操作系統(tǒng)對(duì)應(yīng)的模板鏡像文件以及虛擬機(jī)應(yīng)用程序或/和用戶個(gè)人數(shù)據(jù)對(duì)應(yīng)的增量鏡像文件。
該步驟中,根據(jù)鏡像文件描述信息中針對(duì)操作系統(tǒng)類型等要求,既可以確定模板鏡像文件,根據(jù)鏡像文件描述信息中針對(duì)應(yīng)用程序或/和用戶個(gè)人數(shù)據(jù)的要求,既可以確定增量鏡像文件(即應(yīng)用程序或/和用戶個(gè)人數(shù)據(jù)對(duì)應(yīng)的鏡像文件)。步驟403、選定用于啟動(dòng)虛擬機(jī)的物理機(jī)。該步驟中,可以任意選定用于啟動(dòng)虛擬機(jī)的物理機(jī),也可以根據(jù)各物理機(jī)的運(yùn)行狀態(tài)信息確定用于啟動(dòng)虛擬機(jī)的,其中,物理機(jī)的運(yùn)行狀態(tài)信息包括該物理機(jī)上已經(jīng)運(yùn)行的虛擬機(jī)數(shù)目,剩余資源數(shù)目(如CPU、Memory, Disk等),系統(tǒng)資源利用狀況等信息,實(shí)際應(yīng)用中,此類信息由每個(gè)物理機(jī)上運(yùn)行的虛擬機(jī)監(jiān)控器(VMM)監(jiān)控并上報(bào)。進(jìn)一步地,用戶發(fā)送的虛擬機(jī)啟動(dòng)請(qǐng)求還可能包括對(duì)請(qǐng)求啟動(dòng)的虛擬機(jī)的配置要求,相應(yīng)地,該步驟中,選定用于啟動(dòng)虛擬機(jī)的物理機(jī)時(shí)也需要參考此信息,即選定滿足配置要求的物理機(jī)。步驟404、將選定的物理機(jī)本地保存的鏡像文件與確定的模板鏡像文件以及增量鏡像文件進(jìn)行匹配。該步驟中,匹配過(guò)程即判斷物理機(jī)本地是否保存了本次虛擬機(jī)啟動(dòng)所需要的鏡像文件,若物理機(jī)本地均保存了模板鏡像文件以及增量鏡像文件,則匹配結(jié)果為完全匹配;若物理機(jī)本地均未保存模板鏡像文件以及增量鏡像文件,則匹配結(jié)果為不匹配;以上兩種情況之外為部分匹配,例如,物理機(jī)本地僅保存了啟動(dòng)虛擬機(jī)需要的模板鏡像文件,或模板鏡像文件以及部分增量鏡像文件。例如,對(duì)于用戶個(gè)人數(shù)據(jù)對(duì)應(yīng)的鏡像文件,可以根據(jù)用戶名或用戶注冊(cè)信息等進(jìn)行匹配。步驟405、根據(jù)匹配結(jié)果確定啟動(dòng)虛擬機(jī)的索引鏡像文件并加載。步驟405中,根據(jù)匹配結(jié)果確定啟動(dòng)虛擬機(jī)的索引鏡像文件的具體執(zhí)行過(guò)程如下一、步驟404的確定結(jié)果為完全匹配即選定的用于啟動(dòng)虛擬機(jī)的物理機(jī)本地保存的鏡像文件與步驟402確定的模板鏡像文件以及增量鏡像文件匹配,則確定物理機(jī)本地保存的用于關(guān)聯(lián)該模板鏡像文件以及該增量鏡像文件的索引鏡像文件為啟動(dòng)虛擬機(jī)的索引鏡像文件。二、步驟404的確定結(jié)果為不匹配即選定的用于啟動(dòng)虛擬機(jī)的物理機(jī)本地保存的鏡像文件步驟402確定的模板鏡像文件以及增量鏡像文件均不匹配,則獲取該模板鏡像文件以及增量鏡像文件,并建立用于關(guān)聯(lián)該模板鏡像文件以及該增量鏡像文件的索引鏡像文件并確定建立的索引鏡像文件為啟動(dòng)虛擬機(jī)的索引鏡像文件。具體地,可以從鏡像庫(kù)服務(wù)器中獲取需要的模板鏡像文件以及增量鏡像文件。三、步驟404的確定結(jié)果為部分匹配即選定的用于啟動(dòng)虛擬機(jī)的物理機(jī)本地保存的鏡像文件與步驟402確定的模板鏡像文件以及增量鏡像文件部分匹配,則獲取該模板鏡像文件以及該增量鏡像文件中與該物理機(jī)本地保存的鏡像文件未匹配的鏡像文件,建立用于關(guān)聯(lián)獲取的鏡像文件與匹配部分鏡像文件的索引鏡像文件,并將建立的索引鏡像文件與物理機(jī)中保存的匹配部分鏡像文件對(duì)應(yīng)的索引鏡像文件合并,確定合并得到的索引鏡像文件為啟動(dòng)虛擬機(jī)的索引鏡像文件。
具體地,建立用于關(guān)聯(lián)獲取的鏡像文件與匹配部分鏡像文件的索引鏡像文件,包括獲取匹配部分鏡像文件對(duì)應(yīng)的索引鏡像文件;根據(jù)獲取的索引鏡像文件標(biāo)識(shí)的匹配部分鏡像文件在物理機(jī)中的存儲(chǔ)位置以及獲取的鏡像文件在所述物理機(jī)中的存儲(chǔ)位置,建立用于關(guān)聯(lián)獲取的未匹配的鏡像文件與匹配部分鏡像文件的索引鏡像文件。通過(guò)上述過(guò)程建立得到的鏡像文件可參見上述實(shí)施例中用戶在鏡像文件(D0, D0-LD1)上進(jìn)行修改的得到的鏡像文件。完成索引鏡像文件的加載后,虛擬機(jī)可以正常運(yùn)行。其中,索引鏡像文件的建立過(guò)程在上述實(shí)施例中已詳細(xì)說(shuō)明,此處不再贅述。以上流程中,若鏡像文件描述信息僅指定了需要啟動(dòng)的虛擬機(jī)的操作系統(tǒng)類型的信息,即用戶請(qǐng)求啟動(dòng)的虛擬機(jī)僅需要使用操作系統(tǒng)對(duì)應(yīng)的鏡像文件,則后續(xù)處理過(guò)程中不包括增量鏡像文件的匹配過(guò)程、建立增量鏡像文件與模板鏡像文件的索引鏡像文件的過(guò)程等于增量鏡像文件相關(guān)的處理操作,此處不再一一列舉。進(jìn)一步地,本發(fā)明優(yōu)選實(shí)施例中,用戶發(fā)送的虛擬機(jī)啟動(dòng)請(qǐng)求,還可以進(jìn)一步包括請(qǐng)求啟動(dòng)的虛擬機(jī)個(gè)數(shù);相應(yīng)地,針對(duì)每個(gè)虛擬機(jī)可以采用上述控制過(guò)程,該多個(gè)虛擬機(jī)可以在一臺(tái)物理機(jī)中啟動(dòng),也可以在多臺(tái)物理機(jī)中啟動(dòng),具體可根據(jù)資源調(diào)度確定。本發(fā)明優(yōu)選實(shí)施例中,還包括對(duì)鏡像文件的更新過(guò)程,以方便用戶下次啟動(dòng)。具體地,在完成加載后,還包括如下處理過(guò)程根據(jù)用戶的操作信息,更新與該用戶個(gè)人數(shù)據(jù)對(duì)應(yīng)的增量鏡像文件以及與該增量鏡像文件對(duì)應(yīng)的索引鏡像文件。具體地,首查找到該用戶對(duì)應(yīng)的用戶個(gè)人數(shù)據(jù)部分的鏡像文件,并根據(jù)用戶操作信息更新該增量鏡像文件,進(jìn)而根據(jù)增量鏡像文件的更新內(nèi)容更新相應(yīng)的索引鏡像文件。本發(fā)明優(yōu)選實(shí)施例中,在執(zhí)行上述步驟403之前,即在確定用于啟動(dòng)所述虛擬機(jī)的物理機(jī)之前,還包括對(duì)用戶進(jìn)行鑒權(quán)的過(guò)程,并在用戶鑒權(quán)通過(guò)后執(zhí)行步驟403,否則拒絕用戶的請(qǐng)求,具體鑒權(quán)技術(shù)采用現(xiàn)有鑒權(quán)手段,例如,對(duì)用戶登陸賬號(hào)進(jìn)行驗(yàn)證等。相應(yīng)地,與上述方法流程對(duì)應(yīng),本發(fā)明實(shí)施例還提供了一種虛擬機(jī)控制系統(tǒng),如圖 5所示,該系統(tǒng)包括虛擬平臺(tái)管理器501以及至少一臺(tái)物理機(jī)502 ;其中,至少一臺(tái)物理機(jī)502組成了服務(wù)器資源池,各物理機(jī)502中可以運(yùn)行虛擬機(jī),具體地虛擬平臺(tái)管理器501,用于接收用戶的虛擬機(jī)啟動(dòng)請(qǐng)求,該啟動(dòng)請(qǐng)求包括請(qǐng)求啟動(dòng)的虛擬機(jī)對(duì)應(yīng)的鏡像文件描述信息;根據(jù)該鏡像文件描述信息確定虛擬機(jī)操作系統(tǒng)對(duì)應(yīng)的模板鏡像文件以及增量鏡像文件;將確定的所述模板鏡像文件以及所述增量鏡像文件分別與用于啟動(dòng)所述虛擬機(jī)的物理機(jī)本地保存的鏡像文件匹配,根據(jù)匹配結(jié)果確定啟動(dòng)所述虛擬機(jī)的索引鏡像文件并加載;物理機(jī)502,用于根據(jù)虛擬平臺(tái)管理器501的指示加載索引鏡像文件。例如,在該物理機(jī)502本地保存的鏡像文件與所述模板鏡像文件以及所述增量鏡像文件匹配時(shí),根據(jù)虛擬平臺(tái)管理器501的指示,獲取用于關(guān)聯(lián)所述模板鏡像文件以及所述增量鏡像文件的索引鏡像文件并加載;在該物理機(jī)502本地保存的鏡像文件與所述模板鏡像文件以及所述增量鏡像文件均不匹配時(shí),根據(jù)虛擬平臺(tái)管理器501的指示,獲取所述模板鏡像文件以及所述增量鏡像文件,并建立用于關(guān)聯(lián)所述模板鏡像文件以及所述增量鏡像文件的索引鏡像文件并加載;在該物理機(jī)502本地保存的鏡像文件與所述模板鏡像文件以及所述增量鏡像文件部分匹配時(shí),根據(jù)虛擬平臺(tái)管理器501的指示,獲取所述模板鏡像文件以及所述增量鏡像文件中與所述物理機(jī)本地保存的鏡像文件未匹配的鏡像文件,建立用于關(guān)聯(lián)獲取的所述鏡像文件與匹配部分鏡像文件的索引鏡像文件,并將建立的所述索引鏡像文件與所述物理機(jī)中保存的匹配部分鏡像文件對(duì)應(yīng)的索引鏡像文件合并后加載。虛擬平臺(tái)管理器501負(fù)責(zé)接收用戶提交的虛擬機(jī)啟動(dòng)請(qǐng)求,通過(guò)各種調(diào)度機(jī)制在服務(wù)器資源池中選擇用于啟動(dòng)虛擬機(jī)的物理機(jī)(即選擇空閑服務(wù)器資源,進(jìn)行虛擬機(jī)分配和調(diào)度);服務(wù)器資源池包含了一系列物理機(jī),服務(wù)器資源池監(jiān)控每個(gè)物理機(jī)的運(yùn)行狀態(tài), 為虛擬機(jī)調(diào)度提供參考依據(jù)。該系統(tǒng)以外部署的配置管理服務(wù)器負(fù)責(zé)管理和分配網(wǎng)絡(luò)資源,通過(guò)對(duì)DHCP和DNS等服務(wù)器的配置管理實(shí)現(xiàn)對(duì)虛擬機(jī)網(wǎng)絡(luò)環(huán)境的動(dòng)態(tài)配置;鏡像庫(kù)服務(wù)器通過(guò)網(wǎng)絡(luò)存儲(chǔ)讀取虛擬機(jī)鏡像文件。下面結(jié)合上述系統(tǒng)架構(gòu)對(duì)本發(fā)明實(shí)施例提供的虛擬機(jī)控制過(guò)程進(jìn)行簡(jiǎn)單描述,對(duì)于實(shí)現(xiàn)的詳細(xì)過(guò)程已在上述方法實(shí)施例中詳細(xì)描述,此處不再贅述1、用戶提交了一個(gè)虛擬機(jī)啟動(dòng)請(qǐng)求,請(qǐng)求的內(nèi)容包括虛擬機(jī)的個(gè)數(shù),每個(gè)虛擬機(jī)的配置要求(如CPU、內(nèi)存和磁盤的需求等),每個(gè)虛擬機(jī)需要的鏡像文件等信息。2、虛擬平臺(tái)管理器對(duì)用戶請(qǐng)求進(jìn)行認(rèn)證,認(rèn)證通過(guò)將進(jìn)行虛擬機(jī)調(diào)度,在服務(wù)器資源池中查找是否存在符合調(diào)度策略的物理機(jī),如果資源無(wú)法滿足請(qǐng)求,則拒絕用戶的請(qǐng)求;否則,進(jìn)入步驟3的部署過(guò)程。3、虛擬平臺(tái)管理器將指定的虛擬機(jī)操作系統(tǒng)鏡像拷貝到調(diào)度步驟中選定的物理機(jī)的本地目錄。這其中包括了初始操作系統(tǒng)模板鏡像,用戶指定需要使用的應(yīng)用程序或軟件(包括索引鏡像和新增數(shù)據(jù)鏡像)以及用戶個(gè)人數(shù)據(jù)等。如果目標(biāo)物理機(jī)上已經(jīng)存在了初始操作系統(tǒng)模板鏡像文件,那么物理機(jī)就不用復(fù)制。由于索引鏡像里包含了由于安裝應(yīng)用軟件而引起變化的數(shù)據(jù),因此當(dāng)虛擬機(jī)啟動(dòng)時(shí),虛擬機(jī)可以發(fā)現(xiàn)用戶安裝的軟件的記錄。4、當(dāng)所有鏡像文件都復(fù)制到目標(biāo)物理機(jī)上后,虛擬平臺(tái)管理器執(zhí)行a)將索引鏡像與它關(guān)聯(lián)的鏡像進(jìn)行合并,即DO與所有D0_n合并,Dl與索引Dl_n 合并。由于索引鏡像文件占用的數(shù)據(jù)量很小,因此這些合并能夠很快完成。b)、當(dāng)虛擬機(jī)運(yùn)行中,由于D0-m(m= 1、2......η)中包含了新增數(shù)據(jù)對(duì)應(yīng)的索引
數(shù)據(jù),因此用戶可以找到新增的數(shù)據(jù)。虛擬機(jī)訪問(wèn)鏡像文件讀取數(shù)據(jù),當(dāng)虛擬機(jī)所要讀取的
數(shù)據(jù)在D0-m中不存在時(shí),產(chǎn)生IO中斷,文件系統(tǒng)截獲這些中斷,在Dl-m(m= 1、2......η)
至Dn-m(m= 1、2......η)中查找對(duì)應(yīng)的數(shù)據(jù),找到后返回給虛擬機(jī)。相應(yīng)地,與上述方法流程對(duì)應(yīng),本發(fā)明實(shí)施例還提供了一種虛擬機(jī)控制裝置,如圖 6所示,該裝置包括接收單元601、鏡像文件確定單元602、控制單元603 ;各單元實(shí)現(xiàn)的詳細(xì)功能如下接收單元601,用于接收用戶的虛擬機(jī)啟動(dòng)請(qǐng)求,所述啟動(dòng)請(qǐng)求包括請(qǐng)求啟動(dòng)的虛擬機(jī)對(duì)應(yīng)的鏡像文件描述信息;
鏡像文件確定單元602,用于根據(jù)所述鏡像文件描述信息確定虛擬機(jī)操作系統(tǒng)對(duì)應(yīng)的模板鏡像文件以及虛擬機(jī)應(yīng)用程序或/和用戶個(gè)人數(shù)據(jù)對(duì)應(yīng)的增量鏡像文件;控制單元603,用于將鏡像文件確定單元602確定的模板鏡像文件以及增量鏡像文件分別與用于啟動(dòng)虛擬機(jī)的物理機(jī)本地保存的鏡像文件匹配,根據(jù)匹配結(jié)果確定啟動(dòng)虛擬機(jī)的索引鏡像文件并加載。如圖7所示,本發(fā)明優(yōu)選實(shí)施例中,圖6所示的控制單元603可以包括第一控制模塊603A、第二控制模塊60 以及第三控制模塊603C ;當(dāng)然,根據(jù)該裝置所實(shí)現(xiàn)的功能,控制單元603也可以包括第一控制模塊603A、第二控制模塊60 以及第三控制模塊603C中的一個(gè)或兩個(gè)。具體地第一控制模塊603A,用于在用于啟動(dòng)所述虛擬機(jī)的物理機(jī)本地保存的鏡像文件與所述模板鏡像文件以及所述增量鏡像文件匹配時(shí),確定該物理機(jī)本地保存的用于關(guān)聯(lián)所述模板鏡像文件以及所述增量鏡像文件的索引鏡像文件為啟動(dòng)所述虛擬機(jī)的索引鏡像文件;第二控制模塊60 ,用于在用于啟動(dòng)所述虛擬機(jī)的物理機(jī)本地保存的鏡像文件與所述模板鏡像文件以及所述增量鏡像文件均不匹配時(shí),指示物理機(jī)獲取所述模板鏡像文件以及所述增量鏡像文件,并建立用于關(guān)聯(lián)所述模板鏡像文件以及所述增量鏡像文件的索引鏡像文件,確定建立的所述索引鏡像文件為啟動(dòng)所述虛擬機(jī)的索引鏡像文件;第三控制模塊603C,用于在用于啟動(dòng)所述虛擬機(jī)的物理機(jī)本地保存的鏡像文件與所述模板鏡像文件以及所述增量鏡像文件部分匹配時(shí),指示物理機(jī)獲取所述模板鏡像文件以及所述增量鏡像文件中與所述物理機(jī)本地保存的鏡像文件未匹配的鏡像文件,建立用于關(guān)聯(lián)獲取的所述鏡像文件與匹配部分鏡像文件的索引鏡像文件,并將建立的所述索引鏡像文件與所述物理機(jī)中保存的匹配部分鏡像文件對(duì)應(yīng)的索引鏡像文件合并;并確定合并得到的索引鏡像文件為啟動(dòng)所述虛擬機(jī)的索引鏡像文件。本發(fā)明優(yōu)選實(shí)施例中,上述第二控制模塊60;3B,具體用于指示物理機(jī)根據(jù)模板鏡像文件以及增量鏡像文件分別在物理機(jī)本地的存儲(chǔ)位置, 建立用于關(guān)聯(lián)所述模板鏡像文件以及所述增量鏡像文件的索引鏡像文件。本發(fā)明優(yōu)選實(shí)施例中,上述第三控制模塊603C,具體用于獲取匹配部分鏡像文件對(duì)應(yīng)的索引鏡像文件;根據(jù)匹配部分鏡像文件在所述物理機(jī)中的存儲(chǔ)位置以及獲取的所述未匹配的鏡像文件在所述物理機(jī)中的存儲(chǔ)位置,建立用于關(guān)聯(lián)獲取的所述未匹配的鏡像文件與所述匹配部分鏡像文件的索引鏡像文件。如圖8所示,本發(fā)明優(yōu)選實(shí)施例中,圖6所示的裝置還可以進(jìn)一步包括更新單元604,用于在所述物理機(jī)完成索引鏡像文件的加載后,指示所述物理機(jī)根據(jù)所述用戶的操作信息,更新保存的與所述用戶個(gè)人數(shù)據(jù)對(duì)應(yīng)的增量鏡像文件以及與所述增量鏡像文件對(duì)應(yīng)的索引鏡像文件。如圖9所示,本發(fā)明優(yōu)選實(shí)施例中,圖6所示的裝置還可以進(jìn)一步包括配置單元605,用于接收用戶的虛擬機(jī)啟動(dòng)請(qǐng)求后,根據(jù)各物理機(jī)的運(yùn)行狀態(tài)信息以及所述虛擬機(jī)啟動(dòng)請(qǐng)求包括的請(qǐng)求啟動(dòng)的虛擬機(jī)的配置要求信息,確定用于啟動(dòng)所述虛擬機(jī)的物理機(jī)。如圖10所示,本發(fā)明優(yōu)選實(shí)施例中,圖9所示的裝置還可以進(jìn)一步包括鑒權(quán)單元606,用于對(duì)所述用戶進(jìn)行鑒權(quán),并在對(duì)所述用戶鑒權(quán)通過(guò)后,指示所述配置單元確定用于啟動(dòng)所述虛擬機(jī)的物理機(jī)。應(yīng)當(dāng)理解,以上虛擬機(jī)控制裝置包括的單元僅為根據(jù)該裝置實(shí)現(xiàn)的功能進(jìn)行的邏輯劃分,實(shí)際應(yīng)用中,可以進(jìn)行上述單元的疊加或拆分。并且該實(shí)施例提供的虛擬機(jī)控制裝置所實(shí)現(xiàn)的功能與上述實(shí)施例提供的虛擬機(jī)控制的方法流程一一對(duì)應(yīng),對(duì)于該裝置所實(shí)現(xiàn)的更為詳細(xì)的處理流程,在上述方法實(shí)施例中已做詳細(xì)描述,此處不再詳細(xì)描述。通過(guò)本發(fā)明實(shí)施例提供的上述至少一個(gè)技術(shù)方案,接收用戶的虛擬機(jī)啟動(dòng)請(qǐng)求, 該啟動(dòng)請(qǐng)求包括請(qǐng)求啟動(dòng)的虛擬機(jī)對(duì)應(yīng)的鏡像文件描述信息,進(jìn)一步根據(jù)鏡像文件描述信息確定虛擬機(jī)操作系統(tǒng)對(duì)應(yīng)的模板鏡像文件以及增量鏡像文件,并將確定的模板鏡像文件以及增量鏡像文件分別與用于啟動(dòng)虛擬機(jī)的物理機(jī)本地保存的鏡像文件匹配,根據(jù)匹配結(jié)果確定啟動(dòng)虛擬機(jī)的索引鏡像文件并加載。根據(jù)本發(fā)明實(shí)施例提供的技術(shù)方案,僅需要確定索引鏡像文件并加載,而無(wú)需如現(xiàn)有技術(shù)所述需要合并鏡像文件,由于索引鏡像文件占用的數(shù)據(jù)量很小,加載操作需要耗費(fèi)的時(shí)間很短,從而縮短了啟動(dòng)虛擬機(jī)耗費(fèi)的時(shí)長(zhǎng)。進(jìn)一步地,根據(jù)本發(fā)明實(shí)施例提供的技術(shù)方案,對(duì)于多個(gè)用戶使用同一臺(tái)虛擬機(jī)的情況,相同數(shù)據(jù)部分僅需保存一份,從而節(jié)省了物理機(jī)的存儲(chǔ)資源。顯然,本領(lǐng)域的技術(shù)人員可以對(duì)本發(fā)明進(jìn)行各種改動(dòng)和變型而不脫離本發(fā)明的精神和范圍。這樣,倘若本發(fā)明的這些修改和變型屬于本發(fā)明權(quán)利要求及其等同技術(shù)的范圍之內(nèi),則本發(fā)明也意圖包含這些改動(dòng)和變型在內(nèi)。
權(quán)利要求
1.一種虛擬機(jī)控制方法,其特征在于,包括接收用戶的虛擬機(jī)啟動(dòng)請(qǐng)求,所述啟動(dòng)請(qǐng)求包括請(qǐng)求啟動(dòng)的虛擬機(jī)對(duì)應(yīng)的鏡像文件描述信息;根據(jù)所述鏡像文件描述信息確定虛擬機(jī)操作系統(tǒng)對(duì)應(yīng)的模板鏡像文件以及增量鏡像文件;將確定的所述模板鏡像文件以及所述增量鏡像文件分別與用于啟動(dòng)所述虛擬機(jī)的物理機(jī)本地保存的鏡像文件匹配,根據(jù)匹配結(jié)果確定啟動(dòng)所述虛擬機(jī)的索引鏡像文件并加載。
2.如權(quán)利要求1所述的方法,其特征在于,在匹配結(jié)果為用于啟動(dòng)所述虛擬機(jī)的物理機(jī)本地保存的鏡像文件與所述模板鏡像文件以及所述增量鏡像文件匹配時(shí),確定啟動(dòng)所述虛擬機(jī)的索引鏡像文件,具體包括確定所述物理機(jī)本地保存的用于關(guān)聯(lián)所述模板鏡像文件以及所述增量鏡像文件的索引鏡像文件為啟動(dòng)所述虛擬機(jī)的索引鏡像文件。
3.如權(quán)利要求1所述的方法,其特征在于,在匹配結(jié)果為用于啟動(dòng)所述虛擬機(jī)的物理機(jī)本地保存的鏡像文件與所述模板鏡像文件以及所述增量鏡像文件均不匹配時(shí),確定啟動(dòng)所述虛擬機(jī)的索引鏡像文件,具體包括獲取所述模板鏡像文件以及所述增量鏡像文件;建立用于關(guān)聯(lián)所述模板鏡像文件以及所述增量鏡像文件的索引鏡像文件;確定建立的所述索引鏡像文件為啟動(dòng)所述虛擬機(jī)的索引鏡像文件。
4.如權(quán)利要求3所述的方法,其特征在于,建立用于關(guān)聯(lián)所述模板鏡像文件以及所述增量鏡像文件的索引鏡像文件,包括根據(jù)所述模板鏡像文件以及所述增量鏡像文件分別在所述物理機(jī)本地的存儲(chǔ)位置,建立用于關(guān)聯(lián)所述模板鏡像文件以及所述增量鏡像文件的索引鏡像文件。
5.如權(quán)利要求1所述的方法,其特征在于,在匹配結(jié)果為用于啟動(dòng)所述虛擬機(jī)的物理機(jī)本地保存的鏡像文件與所述模板鏡像文件以及所述增量鏡像文件部分匹配時(shí),確定啟動(dòng)所述虛擬機(jī)的索引鏡像文件,具體包括獲取所述模板鏡像文件以及所述增量鏡像文件中與所述物理機(jī)本地保存的鏡像文件未匹配的鏡像文件;建立用于關(guān)聯(lián)獲取的所述鏡像文件與匹配部分鏡像文件的索引鏡像文件;將建立的所述索引鏡像文件與所述物理機(jī)中保存的匹配部分鏡像文件對(duì)應(yīng)的索引鏡像文件合并;確定合并得到的索引鏡像文件為啟動(dòng)所述虛擬機(jī)的索引鏡像文件。
6.如權(quán)利要求5所述的方法,其特征在于,建立用于關(guān)聯(lián)獲取的所述鏡像文件與匹配部分鏡像文件的索引鏡像文件,包括根據(jù)所述匹配部分鏡像文件在所述物理機(jī)中的存儲(chǔ)位置以及獲取的所述未匹配的鏡像文件在所述物理機(jī)中的存儲(chǔ)位置,建立用于關(guān)聯(lián)獲取的所述未匹配的鏡像文件與所述匹配部分鏡像文件的索引鏡像文件。
7.如權(quán)利要求1至6任一項(xiàng)所述的方法,其特征在于,完成索引鏡像文件的加載后,還包括根據(jù)所述用戶的操作信息,更新與所述用戶個(gè)人數(shù)據(jù)對(duì)應(yīng)的增量鏡像文件以及與所述增量鏡像文件對(duì)應(yīng)的索引鏡像文件。
8.如權(quán)利要求1所述的方法,其特征在于,所述虛擬機(jī)啟動(dòng)請(qǐng)求還包括 請(qǐng)求啟動(dòng)的虛擬機(jī)個(gè)數(shù);或/和對(duì)請(qǐng)求啟動(dòng)的虛擬機(jī)的配置要求。
9.如權(quán)利要求8所述的方法,其特征在于,用于啟動(dòng)所述虛擬機(jī)的物理機(jī)根據(jù)各物理機(jī)的運(yùn)行狀態(tài)信息以及對(duì)請(qǐng)求啟動(dòng)的虛擬機(jī)的配置要求信息來(lái)確定。
10.如權(quán)利要求1所述的方法,其特征在于,所述增量鏡像文件包括 虛擬機(jī)應(yīng)用程序?qū)?yīng)的增量鏡像文件;或/和用戶個(gè)人數(shù)據(jù)對(duì)應(yīng)的增量鏡像文件。
11.一種虛擬機(jī)控制系統(tǒng),其特征在于,包括 虛擬平臺(tái)管理器以及至少一臺(tái)物理機(jī);所述虛擬平臺(tái)管理器,用于接收用戶的虛擬機(jī)啟動(dòng)請(qǐng)求,所述啟動(dòng)請(qǐng)求包括請(qǐng)求啟動(dòng)的虛擬機(jī)對(duì)應(yīng)的鏡像文件描述信息;根據(jù)所述鏡像文件描述信息確定虛擬機(jī)操作系統(tǒng)對(duì)應(yīng)的模板鏡像文件以及增量鏡像文件;將確定的所述模板鏡像文件以及所述增量鏡像文件分別與用于啟動(dòng)所述虛擬機(jī)的物理機(jī)本地保存的鏡像文件匹配,根據(jù)匹配結(jié)果定啟動(dòng)所述虛擬機(jī)的索引鏡像文件并加載;所述物理機(jī),用于根據(jù)所述虛擬平臺(tái)管理器的指示加載索引鏡像文件。
12.—種虛擬機(jī)控制裝置,其特征在于,包括接收單元,用于接收用戶的虛擬機(jī)啟動(dòng)請(qǐng)求,所述啟動(dòng)請(qǐng)求包括請(qǐng)求啟動(dòng)的虛擬機(jī)對(duì)應(yīng)的鏡像文件描述信息;鏡像文件確定單元,用于根據(jù)所述鏡像文件描述信息確定虛擬機(jī)操作系統(tǒng)對(duì)應(yīng)的模板鏡像文件以及增量鏡像文件;控制單元,用于將確定的所述模板鏡像文件以及所述增量鏡像文件分別與用于啟動(dòng)所述虛擬機(jī)的物理機(jī)本地保存的鏡像文件匹配,根據(jù)匹配結(jié)果確定啟動(dòng)所述虛擬機(jī)的索引鏡像文件并加載。
13.如權(quán)利要求12所述的裝置,其特征在于,所述控制單元,包括第一控制模塊,用于在匹配結(jié)果為用于啟動(dòng)所述虛擬機(jī)的物理機(jī)本地保存的鏡像文件與所述模板鏡像文件以及所述增量鏡像文件匹配時(shí),確定所述物理機(jī)本地保存的用于關(guān)聯(lián)所述模板鏡像文件以及所述增量鏡像文件的索引鏡像文件為啟動(dòng)所述虛擬機(jī)的索引鏡像文件;第二控制模塊,用于在匹配結(jié)果為用于啟動(dòng)所述虛擬機(jī)的物理機(jī)本地保存的鏡像文件與所述模板鏡像文件以及所述增量鏡像文件均不匹配時(shí),指示所述物理機(jī)獲取所述模板鏡像文件以及所述增量鏡像文件,并建立用于關(guān)聯(lián)所述模板鏡像文件以及所述增量鏡像文件的索引鏡像文件,確定建立的所述索引鏡像文件為啟動(dòng)所述虛擬機(jī)的索引鏡像文件;第三控制模塊,用于在匹配結(jié)果為用于啟動(dòng)所述虛擬機(jī)的物理機(jī)本地保存的鏡像文件與所述模板鏡像文件以及所述增量鏡像文件部分匹配時(shí),指示所述物理機(jī)獲取所述模板鏡像文件以及所述增量鏡像文件中與所述物理機(jī)本地保存的鏡像文件未匹配的鏡像文件,建立用于關(guān)聯(lián)獲取的所述鏡像文件與匹配部分鏡像文件的索引鏡像文件,并將建立的所述索引鏡像文件與所述物理機(jī)中保存的匹配部分鏡像文件對(duì)應(yīng)的索引鏡像文件合并;并確定合并得到的索引鏡像文件為啟動(dòng)所述虛擬機(jī)的索引鏡像文件。
14.如權(quán)利要求13所述的裝置,其特征在于,所述第二控制模塊,具體用于 指示物理機(jī)根據(jù)所述模板鏡像文件以及所述增量鏡像文件分別在所述物理機(jī)本地的存儲(chǔ)位置,建立用于關(guān)聯(lián)所述模板鏡像文件以及所述增量鏡像文件的索引鏡像文件。
15.如權(quán)利要求13所述的裝置,其特征在于,所述第三控制模塊,具體用于 根據(jù)所述匹配部分鏡像文件在所述物理機(jī)中的存儲(chǔ)位置以及獲取的所述未匹配的鏡像文件在所述物理機(jī)中的存儲(chǔ)位置,建立用于關(guān)聯(lián)獲取的所述未匹配的鏡像文件與所述匹配部分鏡像文件的索引鏡像文件。
16.如權(quán)利要求12至15任一項(xiàng)所述的裝置,其特征在于,還包括更新單元,用于在所述物理機(jī)完成索引鏡像文件的加載后,指示所述物理機(jī)根據(jù)所述用戶的操作信息,更新保存的與所述用戶個(gè)人數(shù)據(jù)對(duì)應(yīng)的增量鏡像文件以及與所述增量鏡像文件對(duì)應(yīng)的索引鏡像文件。
17.如權(quán)利要求12所述的裝置,其特征在于,還包括配置單元,用于接收用戶的虛擬機(jī)啟動(dòng)請(qǐng)求后,根據(jù)各物理機(jī)的運(yùn)行狀態(tài)信息以及所述虛擬機(jī)啟動(dòng)請(qǐng)求包括的請(qǐng)求啟動(dòng)的虛擬機(jī)的配置要求信息,確定用于啟動(dòng)所述虛擬機(jī)的物理機(jī)。
18.如權(quán)利要求17所述的裝置,其特征在于,還包括鑒權(quán)單元,用于對(duì)所述用戶進(jìn)行鑒權(quán),并在對(duì)所述用戶鑒權(quán)通過(guò)后,指示所述配置單元確定用于啟動(dòng)所述虛擬機(jī)的物理機(jī)。
全文摘要
本發(fā)明公開了一種虛擬機(jī)控制方法、系統(tǒng)及裝置,采用該技術(shù)方案,縮短了啟動(dòng)虛擬機(jī)耗費(fèi)的時(shí)長(zhǎng)。主要技術(shù)方案包括接收用戶的虛擬機(jī)啟動(dòng)請(qǐng)求,所述啟動(dòng)請(qǐng)求包括請(qǐng)求啟動(dòng)的虛擬機(jī)對(duì)應(yīng)的鏡像文件描述信息;根據(jù)所述鏡像文件描述信息確定虛擬機(jī)操作系統(tǒng)對(duì)應(yīng)的模板鏡像文件以及增量鏡像文件;進(jìn)一步將用于啟動(dòng)該虛擬機(jī)的物理機(jī)本地保存的鏡像文件與確定的模板鏡像文件以及增量鏡像文件匹配,根據(jù)匹配結(jié)果確定啟動(dòng)虛擬機(jī)的索引鏡像文件并加載。根據(jù)該技術(shù)方案,僅需要合并索引鏡像文件,由于索引鏡像文件占用的數(shù)據(jù)量很小,合并操作需要耗費(fèi)的時(shí)間很短,從而縮短了啟動(dòng)虛擬機(jī)耗費(fèi)的時(shí)長(zhǎng)。
文檔編號(hào)G06F9/455GK102214118SQ20101014433
公開日2011年10月12日 申請(qǐng)日期2010年4月8日 優(yōu)先權(quán)日2010年4月8日
發(fā)明者張志宏, 趙鵬 申請(qǐng)人:中國(guó)移動(dòng)通信集團(tuán)公司