欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

虛擬機(jī)升級(jí)方法及裝置與流程

文檔序號(hào):11774115閱讀:317來(lái)源:國(guó)知局
虛擬機(jī)升級(jí)方法及裝置與流程

本發(fā)明涉及通信領(lǐng)域,具體而言,涉及一種虛擬機(jī)升級(jí)方法及裝置。



背景技術(shù):

虛擬化技術(shù)應(yīng)用日益廣泛,虛擬機(jī)基于虛擬磁盤(pán),相關(guān)技術(shù)中會(huì)基于共享父鏡像的方式進(jìn)行部署,圖1是根據(jù)相關(guān)技術(shù)的父子鏡像關(guān)系示意圖,如圖1所示,a1為父鏡像,a2、a3和a4為子鏡像,v1、v2和v3為虛擬機(jī),每個(gè)虛擬機(jī)掛接在對(duì)應(yīng)的子鏡像上,但虛擬機(jī)的基礎(chǔ)運(yùn)行程序和數(shù)據(jù)都放在父鏡像中,子鏡像中放置虛擬機(jī)的變化數(shù)據(jù),當(dāng)虛擬機(jī)進(jìn)行文件讀操作時(shí),先查找子鏡像,如果子鏡像有數(shù)據(jù),則直接從子鏡像中讀取,否則再?gòu)母哥R像中讀取。而當(dāng)虛擬機(jī)進(jìn)行文件寫(xiě)操作時(shí),會(huì)直接寫(xiě)到子鏡像中,這樣后續(xù)讀時(shí),就可以讀到最新修改的數(shù)據(jù)。采用這種方式,所有虛擬機(jī)都共享父鏡像的基礎(chǔ)數(shù)據(jù),在虛擬機(jī)組件升級(jí)時(shí),理論上可以對(duì)父鏡像進(jìn)行升級(jí),其變化可以作用到所有基于父子鏡像關(guān)系的虛擬機(jī)中,形成批量升級(jí)。不過(guò)在實(shí)際操作中,會(huì)遇到許多問(wèn)題。

圖2是根據(jù)相關(guān)技術(shù)中父子鏡像對(duì)虛擬扇區(qū)的占用關(guān)系示意圖,如圖2所示,a1為父鏡像,a2、a3為對(duì)應(yīng)的子鏡像,其中,每個(gè)小格代表虛擬磁盤(pán)對(duì)應(yīng)的虛擬扇區(qū),圖2中,父鏡像的數(shù)據(jù)占用了0-2扇區(qū),當(dāng)a2/a3分類(lèi)掛接虛擬機(jī),且進(jìn)行一段時(shí)間讀寫(xiě)后,a2子鏡像數(shù)據(jù)新增加了3、4、7三個(gè)扇區(qū),而a3子鏡像數(shù)據(jù)新增加了5、7兩個(gè)扇區(qū)。這樣導(dǎo)致的問(wèn)題是,當(dāng)我們希望對(duì)a1父鏡像進(jìn)行直接修改時(shí),必然會(huì)涉及到新的扇區(qū)分配,但我們不知道對(duì)應(yīng)的子鏡像有無(wú)占用了該扇區(qū),如果已經(jīng)占用了該扇區(qū),則對(duì)應(yīng)的虛擬機(jī)在讀取該扇區(qū)內(nèi)容時(shí),會(huì)直接從子鏡像中讀取,這樣父鏡像的修改就不能被虛擬機(jī)感知,批量升級(jí)也就不能成立了。

相關(guān)技術(shù)中的解決方法有多種:1,可以對(duì)所有子鏡像進(jìn)行掃描,分析哪些虛擬扇區(qū)還未使用,可作為對(duì)父鏡像的升級(jí)使用,不過(guò)考慮到虛擬機(jī)在運(yùn)行中會(huì)一直進(jìn)行磁盤(pán)讀寫(xiě)操作,因此該方法必須暫停所有虛擬機(jī),如果虛擬機(jī)數(shù)量很多,無(wú)論是關(guān)閉還是掃描磁盤(pán)都是很大的工作。同時(shí),對(duì)磁盤(pán)扇區(qū)的選擇是文件系統(tǒng)的功能,該功能的實(shí)現(xiàn)還需要對(duì)虛擬機(jī)文件系統(tǒng)的修改,因此,該解決方法難以在工程上實(shí)施。2,可以對(duì)父鏡像進(jìn)行扇區(qū)保留,方法可以在制作父鏡像是,對(duì)其部分虛擬扇區(qū)進(jìn)行特殊標(biāo)識(shí),形成保留扇區(qū),并防止虛擬機(jī)子鏡像占用對(duì)應(yīng)的扇區(qū),這樣,在升級(jí)時(shí),可以直接使用這部分保留扇區(qū),不會(huì)和虛擬機(jī)子鏡像占用重疊。不過(guò)該方式還是面臨著需要修改虛擬機(jī)內(nèi)文件系統(tǒng)的問(wèn)題,因?yàn)樾枰鞔_設(shè)定升級(jí)的磁盤(pán)數(shù)據(jù)放置在保留扇區(qū)上,而這必須要基于虛擬機(jī)文件系統(tǒng)來(lái)進(jìn)行支持。因此,該方法還是復(fù)雜度較高。

針對(duì)相關(guān)技術(shù)中,基于父子鏡像部署的虛擬機(jī)群升級(jí)復(fù)雜的問(wèn)題,目前還沒(méi)有有效地解決方案。



技術(shù)實(shí)現(xiàn)要素:

本發(fā)明提供了一種虛擬機(jī)升級(jí)方法及裝置,以至少解決相關(guān)技術(shù)中基于父子鏡像部署的虛擬機(jī)群升級(jí)復(fù)雜的問(wèn)題。

根據(jù)本發(fā)明的一個(gè)方面,提供了一種虛擬機(jī)升級(jí)方法,包括:

獲取原始鏡像的升級(jí)鏡像,將所述升級(jí)鏡像中的更新文件覆蓋掛接到虛擬機(jī)的獨(dú)立組件鏡像的文件,其中,所述獨(dú)立組件鏡像是通過(guò)文件映射配置信息處理所述虛擬機(jī)的原始鏡像,制作出與所述虛擬機(jī)的系統(tǒng)鏡像存在鏈接關(guān)系的所述獨(dú)立組件鏡像;

將所述獨(dú)立組件鏡像掛接到所述虛擬機(jī)。

進(jìn)一步地,所述制作出與所述虛擬機(jī)的系統(tǒng)鏡像存在鏈接文件關(guān)系的獨(dú)立組件鏡像包括:

將所述原始鏡像的文件移動(dòng)到所述獨(dú)立組件鏡像;

在所述原始鏡像的文件在所述原始鏡像中的位置處建立用于指向所述原始鏡像的文件鏈接。

進(jìn)一步地,所述獲取所述原始鏡像的升級(jí)鏡像包括:

基于所述原始鏡像的備份重新創(chuàng)建虛擬機(jī),所述重新創(chuàng)建的虛擬機(jī)的組件升級(jí)后形成所述升級(jí)鏡像。

進(jìn)一步地,將所述升級(jí)鏡像中的更改文件覆蓋所述獨(dú)立組件鏡像的文件包括:

依據(jù)文件映射配置信息和所述升級(jí)鏡像,掃描所述獨(dú)立組件鏡像中的文件是否有更改,在所述獨(dú)立組件鏡像中的文件存在更改的情況下,將所述升級(jí)鏡像的更該文件覆蓋所述獨(dú)立組件鏡像的文件。

進(jìn)一步地,所述獨(dú)立組件鏡像滿(mǎn)足以下條件:所述獨(dú)立組件鏡像僅允許虛擬機(jī)進(jìn)行讀操作不允許對(duì)所述獨(dú)立組件鏡像進(jìn)行寫(xiě)操作。

根據(jù)本發(fā)明的另一方面,提供了一種虛擬機(jī)升級(jí)裝置,包括:

覆蓋模塊,用于獲取原始鏡像的升級(jí)鏡像,將所述升級(jí)鏡像中的更新文件覆蓋掛接到虛擬機(jī)的獨(dú)立組件鏡像的文件,其中,所述獨(dú)立組件鏡像是通過(guò)文件映射配置信息處理所述虛擬機(jī)的原始鏡像,制作出與所述虛擬機(jī)的系統(tǒng)鏡像存在鏈接關(guān)系的所述獨(dú)立組件鏡像;

掛接模塊,用于將所述獨(dú)立組件鏡像掛接到所述虛擬機(jī)。

進(jìn)一步地,所述覆蓋模塊包括:

移動(dòng)單元,用于將所述原始鏡像的文件移動(dòng)到所述獨(dú)立組件鏡像;

指示單元,用于在所述原始鏡像的文件在所述原始鏡像中的位置處建立用于指向所述原始鏡像的文件鏈接。

進(jìn)一步地,所述覆蓋模塊還用于基于所述原始鏡像的備份重新創(chuàng)建虛擬機(jī),所述重新創(chuàng)建的虛擬機(jī)的組件升級(jí)后形成所述升級(jí)鏡像。

進(jìn)一步地,所述覆蓋模塊還用于依據(jù)文件映射配置信息和所述升級(jí)鏡像,掃描所述獨(dú)立組件鏡像中的文件是否有更改,在所述獨(dú)立組件鏡像中的文件存在更改的情況下,將所述升級(jí)鏡像的更該文件覆蓋所述獨(dú)立組件鏡像的文件。

進(jìn)一步地,所述獨(dú)立組件鏡像滿(mǎn)足以下條件:所述獨(dú)立組件鏡像僅允許虛擬機(jī)進(jìn)行讀操作不允許對(duì)所述獨(dú)立組件鏡像進(jìn)行寫(xiě)操作。

通過(guò)本發(fā)明,獲取原始鏡像的升級(jí)鏡像,將該升級(jí)鏡像中的更新文件覆蓋掛接到虛擬機(jī)的獨(dú)立組件鏡像的文件,其中,該獨(dú)立組件鏡像是通過(guò)文件映射配置信息處理該虛擬機(jī)的原始鏡像,制作出與該虛擬機(jī)的系統(tǒng)鏡像存在鏈接關(guān)系的該獨(dú)立組件鏡像,將該獨(dú)立組件鏡像掛接到該虛擬機(jī),解決了基于父子鏡像部署的虛擬機(jī)群升級(jí)復(fù)雜的問(wèn)題,簡(jiǎn)便有效的實(shí)現(xiàn)了虛擬機(jī)群升級(jí)。

附圖說(shuō)明

此處所說(shuō)明的附圖用來(lái)提供對(duì)本發(fā)明的進(jìn)一步理解,構(gòu)成本申請(qǐng)的一部分,本發(fā)明的示意性實(shí)施例及其說(shuō)明用于解釋本發(fā)明,并不構(gòu)成對(duì)本發(fā)明的不當(dāng)限定。在附圖中:

圖1是根據(jù)相關(guān)技術(shù)的父子鏡像關(guān)系示意圖;

圖2是根據(jù)相關(guān)技術(shù)中父子鏡像對(duì)虛擬扇區(qū)的占用關(guān)系示意圖;

圖3是根據(jù)本發(fā)明實(shí)施例的一種虛擬機(jī)升級(jí)方法的流程圖;

圖4是根據(jù)本發(fā)明實(shí)施例的一種虛擬機(jī)升級(jí)裝置的結(jié)構(gòu)框圖一;

圖5是根據(jù)本發(fā)明實(shí)施例的一種虛擬機(jī)升級(jí)裝置的結(jié)構(gòu)框圖二;

圖6是根據(jù)本發(fā)明優(yōu)選實(shí)施例的一種虛擬機(jī)鏡像部署方式示意圖;

圖7是根據(jù)本發(fā)明優(yōu)選實(shí)施例的映像內(nèi)文件放置關(guān)系圖;

圖8是根據(jù)本發(fā)明優(yōu)選實(shí)施例的在windows系統(tǒng)上的放置關(guān)系示意圖;

圖9是根據(jù)本發(fā)明優(yōu)選實(shí)施例的一種鏡像初始制作方式示意圖;

圖10是根據(jù)本發(fā)明優(yōu)選實(shí)施例的組件升級(jí)后的一種鏡像更新方法示意圖;

圖11是根據(jù)本發(fā)明優(yōu)選實(shí)施例的文件映射模塊的實(shí)現(xiàn)流程圖;

圖12a是根據(jù)本發(fā)明優(yōu)選實(shí)施例的虛擬機(jī)生成和鏡像部署的實(shí)現(xiàn)流程圖;

圖12b是根據(jù)本發(fā)明優(yōu)選實(shí)施例的虛擬機(jī)組件升級(jí)的實(shí)現(xiàn)流程圖。

具體實(shí)施方式

下文中將參考附圖并結(jié)合實(shí)施例來(lái)詳細(xì)說(shuō)明本發(fā)明。需要說(shuō)明的是,在不沖突的情況下,本申請(qǐng)中的實(shí)施例及實(shí)施例中的特征可以相互組合。

需要說(shuō)明的是,本發(fā)明的說(shuō)明書(shū)和權(quán)利要求書(shū)及上述附圖中的術(shù)語(yǔ)“第一”、“第二”等是用于區(qū)別類(lèi)似的對(duì)象,而不必用于描述特定的順序或先后次序。

在本實(shí)施例中提供了一種虛擬機(jī)升級(jí)方法,圖3是根據(jù)本發(fā)明實(shí)施例的一種虛擬機(jī)升級(jí)方法的流程圖,如圖3所示,該流程包括如下步驟:

步驟s302,獲取原始鏡像的升級(jí)鏡像,將該升級(jí)鏡像中的更新文件覆蓋掛接到虛擬機(jī)的獨(dú)立組件鏡像的文件,其中,該獨(dú)立組件鏡像是通過(guò)文件映射配置信息處理該虛擬機(jī)的原始鏡像,制作出與該虛擬機(jī)的系統(tǒng)鏡像存在鏈接關(guān)系的該獨(dú)立組件鏡像;

步驟s304,將該獨(dú)立組件鏡像掛接到該虛擬機(jī)。

通過(guò)上述步驟,獲取原始鏡像的升級(jí)鏡像,將該升級(jí)鏡像中的更新文件覆蓋掛接到虛擬機(jī)的獨(dú)立組件鏡像的文件,將該獨(dú)立組件鏡像掛接到該虛擬機(jī)。原始鏡像通過(guò)文件映射配置信息處理得到虛擬機(jī)的系統(tǒng)鏡像和獨(dú)立組件鏡像,獨(dú)立組件鏡像在更新之前跟虛擬機(jī)群是掛接的,更新完繼續(xù)掛接在虛擬機(jī)上,解決了基于父子鏡像部署的虛擬機(jī)群升級(jí)復(fù)雜的問(wèn)題,簡(jiǎn)便有效的實(shí)現(xiàn)了虛擬機(jī)群升級(jí)。

在本實(shí)施例中,該制作出與該虛擬機(jī)的系統(tǒng)鏡像存在鏈接文件關(guān)系的獨(dú)立組件鏡像包括,將該原始鏡像的文件移動(dòng)到該獨(dú)立組件鏡像;在該原始鏡像的文件在該原始鏡像中的位置處建立用于指向該原始鏡像的文件鏈接,在原始鏡像中設(shè)置一個(gè)對(duì)應(yīng)的鏈接用來(lái)指示文件移動(dòng)后的新位置。

在本實(shí)施例中,該獲取該原始鏡像的升級(jí)鏡像包括:基于該原始鏡像的備份重新創(chuàng)建虛擬機(jī),該重新創(chuàng)建的虛擬機(jī)的組件升級(jí)后形成該升級(jí)鏡像。

在本實(shí)施例中,將該升級(jí)鏡像中的更改文件覆蓋該獨(dú)立組件鏡像的文件包括:依據(jù)文件映射配置信息和該升級(jí)鏡像,掃描該獨(dú)立組件鏡像中的文件是否有更改,在該獨(dú)立組件鏡像中的文件存在更改的情況下,將該升級(jí)鏡像的更改文件覆蓋該獨(dú)立組件鏡像的文件。在需要組件進(jìn)行升級(jí)時(shí),系統(tǒng)依據(jù)升級(jí)鏡像對(duì)獨(dú)立組件鏡像進(jìn)行掃描,在獨(dú)立組件鏡像有更改的情況下,對(duì)獨(dú)立組建鏡像進(jìn)行更新。

在本實(shí)施例中,該獨(dú)立組件鏡像滿(mǎn)足以下條件:該獨(dú)立組件鏡像僅允許虛擬機(jī)進(jìn)行讀操作不允許對(duì)該獨(dú)立組件鏡像進(jìn)行寫(xiě)操作。獨(dú)立組件鏡像是所有虛擬機(jī)群共享的鏡像,單個(gè)虛擬機(jī)只能進(jìn)行讀操作,可以訪(fǎng)問(wèn)鏡像中的內(nèi)容,依據(jù)鏡像進(jìn)行虛擬機(jī)升級(jí),但是單個(gè)虛擬機(jī)不可以修改虛擬機(jī)的內(nèi)容。

在本實(shí)施例中還提供了一種虛擬機(jī)升級(jí)裝置,該裝置用于實(shí)現(xiàn)上述實(shí)施例及優(yōu)選實(shí)施方式,已經(jīng)進(jìn)行過(guò)說(shuō)明的不再贅述。如以下所使用的,術(shù)語(yǔ)“模塊”可以實(shí)現(xiàn)預(yù)定功能的軟件 和/或硬件的組合。盡管以下實(shí)施例所描述的裝置較佳地以軟件來(lái)實(shí)現(xiàn),但是硬件,或者軟件和硬件的組合的實(shí)現(xiàn)也是可能并被構(gòu)想的。

圖4是根據(jù)本發(fā)明實(shí)施例的一種虛擬機(jī)升級(jí)裝置的結(jié)構(gòu)框圖一,如圖4所示,該裝置包括:

覆蓋模塊42,用于獲取原始鏡像的升級(jí)鏡像,將該升級(jí)鏡像中的更新文件覆蓋掛接到虛擬機(jī)的獨(dú)立組件鏡像的文件,其中,該獨(dú)立組件鏡像是通過(guò)文件映射配置信息處理該虛擬機(jī)的原始鏡像,制作出與該虛擬機(jī)的系統(tǒng)鏡像存在鏈接關(guān)系的該獨(dú)立組件鏡像;

掛接模塊44,與覆蓋模塊42連接,用于將該獨(dú)立組件鏡像掛接到該虛擬機(jī)。

通過(guò)上述步驟,覆蓋模塊42獲取原始鏡像的升級(jí)鏡像,將該升級(jí)鏡像中的更新文件覆蓋掛接到虛擬機(jī)的獨(dú)立組件鏡像的文件,其中,該獨(dú)立組件鏡像是通過(guò)文件映射配置信息處理該虛擬機(jī)的原始鏡像,制作出與該虛擬機(jī)的系統(tǒng)鏡像存在鏈接關(guān)系的該獨(dú)立組件鏡像;掛接模塊44將該獨(dú)立組件鏡像掛接到該虛擬機(jī),解決了基于父子鏡像部署的虛擬機(jī)群升級(jí)復(fù)雜的問(wèn)題,簡(jiǎn)便有效的實(shí)現(xiàn)了虛擬機(jī)群升級(jí)。

圖5是根據(jù)本發(fā)明實(shí)施例的一種虛擬機(jī)升級(jí)裝置的結(jié)構(gòu)框圖二,如圖5所示,該覆蓋模塊42包括:

移動(dòng)單元52,用于將該原始鏡像的文件移動(dòng)到該獨(dú)立組件鏡像;

指示單元54,與該移動(dòng)單元52連接,用于在該原始鏡像的文件在該原始鏡像中的位置處建立用于指向該原始鏡像的文件鏈接。

在本實(shí)施例中,該覆蓋模塊42還用于基于該原始鏡像的備份重新創(chuàng)建虛擬機(jī),該重新創(chuàng)建的虛擬機(jī)的組件升級(jí)后形成該升級(jí)鏡像。

在本實(shí)施例中,該覆蓋模塊42還用于依據(jù)文件映射配置信息和該升級(jí)鏡像,掃描該獨(dú)立組件鏡像中的文件是否有更改,在該獨(dú)立組件鏡像中的文件存在更改的情況下,將該升級(jí)鏡像的更該文件覆蓋該獨(dú)立組件鏡像的文件。

需要說(shuō)明的是,上述各個(gè)模塊是可以通過(guò)軟件或硬件來(lái)實(shí)現(xiàn)的,對(duì)于后者,可以通過(guò)以下方式實(shí)現(xiàn),但不限于此:上述各個(gè)模塊均位于同一處理器中;或者,上述各個(gè)模塊分別位于不同的處理器中。

下面結(jié)合本發(fā)明優(yōu)選實(shí)施例進(jìn)行詳細(xì)說(shuō)明。

本發(fā)明優(yōu)選實(shí)施例提供一個(gè)簡(jiǎn)便的方法用來(lái)實(shí)現(xiàn)對(duì)基于共享父鏡像的虛擬機(jī)進(jìn)行批量升級(jí),該實(shí)施例的方法不需要對(duì)鏡像文件進(jìn)行特殊修改,不需要對(duì)虛擬機(jī)文件系統(tǒng)進(jìn)行修改。

本發(fā)明優(yōu)選實(shí)施例采用以下技術(shù)方案,本發(fā)明優(yōu)選實(shí)施例包括兩部分構(gòu)成:

獨(dú)立組件鏡像,使用該鏡像來(lái)存放需要升級(jí)的組件,該鏡像被所有虛擬機(jī)共享讀取,但禁止修改。

文件映射模塊(相當(dāng)于上述實(shí)施例的覆蓋模塊42的部分功能,存儲(chǔ)了文件映射配置信息),對(duì)安裝了的組件,使用該模塊,將實(shí)際存儲(chǔ)文件映射到該獨(dú)立鏡像中,這樣虛擬機(jī)對(duì)文件的實(shí)際讀取都會(huì)訪(fǎng)問(wèn)獨(dú)立組件鏡像。

本發(fā)明優(yōu)選實(shí)施例的步驟如下:

步驟一,在虛擬機(jī)中完成組件初始安裝;

步驟二,使用鏈接模塊(相當(dāng)于上述實(shí)施例的指示單元54的部分功能),將安裝的組件移動(dòng)到獨(dú)立組件鏡像中,并在原位置創(chuàng)建對(duì)應(yīng)的鏈接關(guān)系;

步驟三,將獨(dú)立組件鏡像掛接到所有的虛擬機(jī)上,形成共享鏡像。這樣虛擬機(jī)可以像往常一樣訪(fǎng)問(wèn)對(duì)應(yīng)組件,這些訪(fǎng)問(wèn)都重定向到組件鏡像上;

步驟四,在需要升級(jí)時(shí),采用專(zhuān)用升級(jí)虛擬機(jī),在升級(jí)后,重新運(yùn)行鏈接模塊,將修改內(nèi)容移動(dòng)到獨(dú)立組件鏡像中;

步驟五,重新將新的獨(dú)立組件鏡像掛接到所有虛擬機(jī)上,這樣所有虛擬機(jī)都可以看到升級(jí)內(nèi)容,并發(fā)升級(jí)完成。

與相關(guān)技術(shù)相比較,本發(fā)明優(yōu)選實(shí)施例不依賴(lài)于對(duì)應(yīng)的虛擬機(jī)映像格式,不需要對(duì)虛擬機(jī)鏡像進(jìn)行修改,不需要對(duì)虛擬機(jī)的文件系統(tǒng)管理器進(jìn)行修改,只需要在虛擬機(jī)部署時(shí)增加一個(gè)專(zhuān)用鏡像,在完成組件升級(jí)后,使用文件映射模塊掃描文件編號(hào),建立鏈接關(guān)系,實(shí)現(xiàn)較為簡(jiǎn)便。

圖6是根據(jù)本發(fā)明優(yōu)選實(shí)施例的一種虛擬機(jī)鏡像部署方式示意圖,如圖6所示,a1、a2、a3和a4是虛擬機(jī)的系統(tǒng)鏡像,而b是新增加的獨(dú)立組件鏡像,v1、v2和v3是虛擬機(jī)群,虛擬機(jī)在運(yùn)行中,會(huì)同時(shí)掛接在a類(lèi)和b類(lèi)這兩類(lèi)映像上,構(gòu)成其虛擬機(jī)磁盤(pán)。對(duì)a類(lèi)鏡像,以父子方式使用,可以進(jìn)行讀寫(xiě)操作,而對(duì)b鏡像掛接,則只能讀,不能進(jìn)行寫(xiě)操作,因此虛擬機(jī)可以直接掛載,而不用創(chuàng)建子鏡像。

圖7是根據(jù)本發(fā)明優(yōu)選實(shí)施例的映像內(nèi)文件放置關(guān)系圖,如圖7所示,a為系統(tǒng)鏡像,b是獨(dú)立組件鏡像,在a鏡像上,對(duì)需要升級(jí)的文件,都鏈接到b鏡像上,實(shí)際數(shù)據(jù)都存儲(chǔ)在b鏡像。

圖8是根據(jù)本發(fā)明優(yōu)選實(shí)施例的在windows系統(tǒng)上的放置關(guān)系示意圖,如圖8所示,a為系統(tǒng)鏡像,b是獨(dú)立組件鏡像,對(duì)應(yīng)的組件包括c:\windows\sys目錄下的file1.sys和file2.sys兩個(gè)文件,通過(guò)鏈接關(guān)系,指向了e:\sys下的file1.sys和file2.sys兩個(gè)文件。鏈接文件是windows文件系統(tǒng)的已有技術(shù),對(duì)于linux系統(tǒng),也有類(lèi)似實(shí)現(xiàn)。

圖9是根據(jù)本發(fā)明優(yōu)選實(shí)施例的一種鏡像初始制作方式示意圖,如圖9所示,首先按照正常流程進(jìn)行虛擬機(jī)安裝,形成基礎(chǔ)的安裝鏡像,對(duì)該進(jìn)行使用文件映射模塊進(jìn)行處理,該模塊根據(jù)預(yù)定義的文件映射配置,制作出有鏈接文件關(guān)系的虛擬機(jī)系統(tǒng)鏡像(對(duì)應(yīng)前面描述的a鏡像)和獨(dú)立組件鏡像(對(duì)應(yīng)前面描述的b鏡像)。

圖10是根據(jù)本發(fā)明優(yōu)選實(shí)施例的組件升級(jí)后的一種鏡像更新方法示意圖,如圖10所示,首先對(duì)原始鏡像進(jìn)行備份,并在該基礎(chǔ)上進(jìn)行組件升級(jí),升級(jí)后得到升級(jí)鏡像,使用文件映射模塊對(duì)原始鏡像和升級(jí)鏡像進(jìn)行處理,形成新的獨(dú)立組件鏡像。

圖11是根據(jù)本發(fā)明優(yōu)選實(shí)施例的文件映射模塊的實(shí)現(xiàn)流程圖,如圖11所示,步驟如下:

s1101,讀取映射文件配置信息

s1102,區(qū)分是初始制作還是更新,在判斷為初始制作獨(dú)立組件鏡像的情況下:

s1103,建立獨(dú)立組件鏡像,初始為空;

s1104,按照映射配置,掃描對(duì)應(yīng)文件,根據(jù)文件映射信息中的文件,將安裝后的鏡像中對(duì)應(yīng)的文件移動(dòng)到獨(dú)立組件鏡像中,并在原有位置建立對(duì)應(yīng)的鏈接文件,指向移動(dòng)后的文件位置;重復(fù)s1104的步驟,直到完成所有的文件鏈接關(guān)系建立。

s1105,在判斷為組件更新的情況下,首先需要更新前的鏡像和更新后的組件鏡像;

s1106,根據(jù)文件映射配置的文件,掃描查看有無(wú)更改;

s1107,若有更改,則用更新后的文件覆蓋獨(dú)立組件鏡像中對(duì)應(yīng)的文件,由于在初始鏡像制作中已經(jīng)建立了鏈接關(guān)系,這個(gè)就不需要再建立了,重復(fù)s1106和s1107的步驟,直到映射配置中的所有文件都掃描完成。

圖12a是根據(jù)本發(fā)明優(yōu)選實(shí)施例的虛擬機(jī)生成和鏡像部署的實(shí)現(xiàn)流程圖,如圖12a所示,步驟如下:在新創(chuàng)建獨(dú)立組件鏡像的情況下,流程圖如圖12a所示,

s1201,首先創(chuàng)建原始鏡像文件,在該鏡像文件上啟動(dòng)虛擬機(jī),并完成組件安裝,保存該原始鏡像文件,

s1202,調(diào)用文件映射模塊,創(chuàng)建出系統(tǒng)鏡像和獨(dú)立組件鏡像,

s1203,基于新生成的系統(tǒng)鏡像和獨(dú)立組件鏡像,創(chuàng)建虛擬機(jī),經(jīng)過(guò)上述步驟完成了初始的虛擬機(jī)生成和鏡像部署。

圖12b是根據(jù)本發(fā)明優(yōu)選實(shí)施例的虛擬機(jī)組件升級(jí)的實(shí)現(xiàn)流程圖,如圖12b所示,在需要組件升級(jí)的情況下,步驟包括:

s1204,則從保存的原始鏡像拷貝一份,作為待升級(jí)鏡像,

s1205,基于待升級(jí)鏡像,創(chuàng)建虛擬機(jī),

s1206,在新創(chuàng)建虛擬機(jī)上完成組件升級(jí),

s1207,使用原始鏡像和新的升級(jí)鏡像,調(diào)用文件映射模塊,更新獨(dú)立組件鏡像,

s1208,更新所有虛擬機(jī)的獨(dú)立組件鏡像為4中新生成的獨(dú)立組件鏡像。

通過(guò)以上的實(shí)施方式的描述,本領(lǐng)域的技術(shù)人員可以清楚地了解到根據(jù)上述實(shí)施例的方法可借助軟件加必需的通用硬件平臺(tái)的方式來(lái)實(shí)現(xiàn),當(dāng)然也可以通過(guò)硬件,但很多情況下前者是更佳的實(shí)施方式?;谶@樣的理解,本發(fā)明的技術(shù)方案本質(zhì)上或者說(shuō)對(duì)現(xiàn)有技術(shù)做出貢獻(xiàn)的部分可以以軟件產(chǎn)品的形式體現(xiàn)出來(lái),該計(jì)算機(jī)軟件產(chǎn)品存儲(chǔ)在一個(gè)存儲(chǔ)介質(zhì)(如rom/ram、磁碟、光盤(pán))中,包括若干指令用以使得一臺(tái)終端設(shè)備(可以是手機(jī),計(jì)算機(jī),服務(wù)器,或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行本發(fā)明各個(gè)實(shí)施例所述的方法。

本發(fā)明的實(shí)施例還提供了一種存儲(chǔ)介質(zhì)。可選地,在本實(shí)施例中,上述存儲(chǔ)介質(zhì)可以被設(shè)置為存儲(chǔ)用于執(zhí)行以下步驟的程序代碼:

s1,獲取原始鏡像的升級(jí)鏡像,將該升級(jí)鏡像中的更新文件覆蓋掛接到虛擬機(jī)的獨(dú)立組件鏡像的文件,其中,該獨(dú)立組件鏡像是通過(guò)文件映射配置信息處理該虛擬機(jī)的原始鏡像,制作出與該虛擬機(jī)的系統(tǒng)鏡像存在鏈接關(guān)系的該獨(dú)立組件鏡像;

s2,將該獨(dú)立組件鏡像掛接到該虛擬機(jī)。

該存儲(chǔ)介質(zhì)還可以被設(shè)置為存儲(chǔ)用于執(zhí)行上述實(shí)施例的方法步驟的程序代碼。

可選地,在本實(shí)施例中,上述存儲(chǔ)介質(zhì)可以包括但不限于:u盤(pán)、只讀存儲(chǔ)器(rom,read-onlymemory)、隨機(jī)存取存儲(chǔ)器(ram,randomaccessmemory)、移動(dòng)硬盤(pán)、磁碟或者光盤(pán)等各種可以存儲(chǔ)程序代碼的介質(zhì)。

可選地,在本實(shí)施例中,處理器根據(jù)存儲(chǔ)介質(zhì)中已存儲(chǔ)的程序代碼執(zhí)行上述實(shí)施例的方法步驟。

可選地,本實(shí)施例中的具體示例可以參考上述實(shí)施例及可選實(shí)施方式中所描述的示例,本實(shí)施例在此不再贅述。

顯然,本領(lǐng)域的技術(shù)人員應(yīng)該明白,上述的本發(fā)明的各模塊或各步驟可以用通用的計(jì)算裝置來(lái)實(shí)現(xiàn),它們可以集中在單個(gè)的計(jì)算裝置上,或者分布在多個(gè)計(jì)算裝置所組成的網(wǎng)絡(luò)上,可選地,它們可以用計(jì)算裝置可執(zhí)行的程序代碼來(lái)實(shí)現(xiàn),從而,可以將它們存儲(chǔ)在存儲(chǔ)裝置中由計(jì)算裝置來(lái)執(zhí)行,并且在某些情況下,可以以不同于此處的順序執(zhí)行所示出或描述的步驟,或者將它們分別制作成各個(gè)集成電路模塊,或者將它們中的多個(gè)模塊或步驟制作成單個(gè)集成電路模塊來(lái)實(shí)現(xiàn)。這樣,本發(fā)明不限制于任何特定的硬件和軟件結(jié)合。

以上所述僅為本發(fā)明的優(yōu)選實(shí)施例而已,并不用于限制本發(fā)明,對(duì)于本領(lǐng)域的技術(shù)人員來(lái)說(shuō),本發(fā)明可以有各種更改和變化。凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。

當(dāng)前第1頁(yè)1 2 
網(wǎng)友詢(xún)問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
庆阳市| 天津市| 乐安县| 鹰潭市| 克什克腾旗| 班玛县| 河东区| 改则县| 沧源| 阿合奇县| 鲁山县| 吐鲁番市| 平利县| 上栗县| 三亚市| 墨玉县| 元氏县| 邓州市| 石台县| 河北区| 岳阳县| 漳浦县| 乌鲁木齐县| 乐清市| 泰兴市| 玉田县| 开封县| 钟祥市| 龙陵县| 永泰县| 宁夏| 南澳县| 蒙自县| 乡宁县| 平南县| 库车县| 通州区| 常州市| 阿拉善左旗| 呈贡县| 大关县|