專(zhuān)利名稱(chēng):在線定制虛擬機(jī)鏡像的系統(tǒng)及其方法
技術(shù)領(lǐng)域:
本發(fā)明涉及云計(jì)算技術(shù)領(lǐng)域,特指一種在線定制虛擬機(jī)鏡像的系統(tǒng)及其方法。
背景技術(shù):
計(jì)算機(jī)的應(yīng)用模式大體經(jīng)歷了以大型機(jī)為主體的集中式架構(gòu)(數(shù)據(jù)中心1.0)、以 PC機(jī)為主體的客戶(hù)/服務(wù)器分布式計(jì)算架構(gòu)(數(shù)據(jù)中心2. 0)、以虛擬化技術(shù)為核心面向服務(wù)的體系結(jié)構(gòu)(SOA)及基于*吐2.0應(yīng)用特征的新型架構(gòu)(數(shù)據(jù)中心3.0)。計(jì)算機(jī)的應(yīng)用模式、技術(shù)架構(gòu)及實(shí)現(xiàn)特征的演變是云計(jì)算發(fā)展的時(shí)代背景?;ヂ?lián)網(wǎng)技術(shù)成為ICT應(yīng)用的基礎(chǔ),層出不窮的互聯(lián)網(wǎng)應(yīng)用需求也要求ICT理念進(jìn)行重新思考和設(shè)計(jì)。這種改變不僅帶來(lái)ICT應(yīng)用平臺(tái)的更新?lián)Q代,而且也帶來(lái)ICT應(yīng)用實(shí)現(xiàn)和商用模式的創(chuàng)新。這種變化的影響是如此巨大而鮮明,以至于人們可以從多個(gè)角度和視角來(lái)描述這些新的特征和現(xiàn)象。盡管云計(jì)算的概念和定義很多,但究其本質(zhì)還是為了滿(mǎn)足ICT應(yīng)用和業(yè)務(wù)的網(wǎng)絡(luò)實(shí)現(xiàn)。為了理論和討論的嚴(yán)謹(jǐn)性,給云計(jì)算更為明確而嚴(yán)格的定義云計(jì)算是在整合的架構(gòu)之下,基于IP網(wǎng)絡(luò)的虛擬化資源平臺(tái),提供規(guī)模化ICT應(yīng)用的實(shí)現(xiàn)方式。云計(jì)算的實(shí)質(zhì)是網(wǎng)絡(luò)下的應(yīng)用,是由IP和IT技術(shù)共同構(gòu)建的。從發(fā)展的角度來(lái)看,“云”的技術(shù)和目標(biāo)是一個(gè)逐步演化的過(guò)程。比如,Web技術(shù)出現(xiàn)時(shí),就具備了云計(jì)算的應(yīng)用特征有了統(tǒng)一界面的雛形。隨著服務(wù)器應(yīng)用平臺(tái)上的虛擬化技術(shù)的成熟和Web統(tǒng)一界面的推出,虛擬化和Web走向結(jié)合,使得云計(jì)算可以在一個(gè)整合的架構(gòu)上統(tǒng)一實(shí)現(xiàn)。虛擬化是一個(gè)廣義的術(shù)語(yǔ),在計(jì)算機(jī)方面通常是指計(jì)算元件在虛擬的基礎(chǔ)上而不是真實(shí)的基礎(chǔ)上運(yùn)行。虛擬化技術(shù)可以擴(kuò)大硬件的容量,簡(jiǎn)化軟件的重新配置過(guò)程。CPU的虛擬化技術(shù)可以單CPU模擬多CPU并行,允許一個(gè)平臺(tái)同時(shí)運(yùn)行多個(gè)操作系統(tǒng),并且應(yīng)用程序都可以在相互獨(dú)立的空間內(nèi)運(yùn)行而互不影響,從而顯著提高計(jì)算機(jī)的工作效率。虛擬化技術(shù)與多任務(wù)以及超線程技術(shù)是完全不同的。多任務(wù)是指在一個(gè)操作系統(tǒng)中多個(gè)程序同時(shí)并行運(yùn)行,而在虛擬化技術(shù)中,則可以同時(shí)運(yùn)行多個(gè)操作系統(tǒng),而且每一個(gè)操作系統(tǒng)中都有多個(gè)程序運(yùn)行,每一個(gè)操作系統(tǒng)都運(yùn)行在一個(gè)虛擬的CPU或者是虛擬主機(jī)上;而超線程技術(shù)只是單CPU模擬雙CPU來(lái)平衡程序運(yùn)行性能,這兩個(gè)模擬出來(lái)的CPU是不能分離的,只能協(xié)同工作。虛擬化技術(shù)也與目前VMware Workstation等同樣能達(dá)到虛擬效果的軟件不同, 是一個(gè)巨大的技術(shù)進(jìn)步,具體表現(xiàn)在減少軟件虛擬機(jī)相關(guān)開(kāi)銷(xiāo)和支持更廣泛的操作系統(tǒng)方 目前云計(jì)算領(lǐng)域中使用最多的虛擬機(jī)管理器Xen、KVM、QEMU等在虛擬機(jī)部署方面的方法各不相同,這種情況給云計(jì)算領(lǐng)域虛擬機(jī)集群環(huán)境部署和大規(guī)模應(yīng)用部署帶來(lái)挑戰(zhàn),因此,需要提供一種方法及系統(tǒng),能夠統(tǒng)一在線定制虛擬機(jī)系統(tǒng)鏡像。
發(fā)明內(nèi)容
4
本發(fā)明解決的技術(shù)問(wèn)題之一在于提供一種在線定制虛擬機(jī)鏡像的系統(tǒng);為在線定制虛擬機(jī)提供一種通用、有效的系統(tǒng)。本發(fā)明解決的技術(shù)問(wèn)題之二在于提供一種在線定制虛擬機(jī)鏡像的方法;為在線定制虛擬機(jī)提供一種通用、有效的方法。本發(fā)明解決解決上述技術(shù)問(wèn)題之一的技術(shù)方案是包括在線定制工具、請(qǐng)求處理單元、安全驗(yàn)證單元、消息傳遞單元和消息傳遞單元;所述的在線定制工具,用于向服務(wù)端發(fā)送指定的請(qǐng)求,并傳遞相應(yīng)的參數(shù);所述的請(qǐng)求處理單元,用于監(jiān)聽(tīng)終端用戶(hù)的請(qǐng)求,經(jīng)過(guò)簡(jiǎn)單的分類(lèi)處理后輸出給相應(yīng)的安全驗(yàn)證單元,并等待返回消息封裝后通過(guò)在線定制工具返回給終端用戶(hù);所述的安全驗(yàn)證單元,用于驗(yàn)證用戶(hù)的合法性、用戶(hù)是否擁有與請(qǐng)求相關(guān)的相應(yīng)權(quán)限,并根據(jù)驗(yàn)證情況駁回用戶(hù)請(qǐng)求將錯(cuò)誤信息等傳遞給請(qǐng)求處理單元或?qū)⒄?qǐng)求消息輸出給消息傳遞單元;所述的消息傳遞單元,用于根據(jù)用戶(hù)請(qǐng)求功能劃分接收到的消息,并將消息分發(fā)到各自的等待隊(duì)列,等待鏡像處理單元處理;所述的鏡像處理單元,用于處理從消息隊(duì)列中接受的任務(wù),將鏡像打包、分塊、上傳、關(guān)聯(lián)。所述的請(qǐng)求處理單元請(qǐng)求命令的結(jié)構(gòu)包括虛擬機(jī)標(biāo)識(shí)、虛擬機(jī)CPU架構(gòu)、虛擬機(jī)內(nèi)核鏡像標(biāo)識(shí)、虛擬機(jī)啟動(dòng)鏡像標(biāo)識(shí)、定制后系統(tǒng)鏡像的存儲(chǔ)路徑、定制后系統(tǒng)鏡像的名稱(chēng);其中,所述的虛擬機(jī)標(biāo)識(shí)用于標(biāo)識(shí)被操作的虛擬機(jī),是區(qū)分一個(gè)虛擬機(jī)與其他虛擬機(jī)的全局唯一標(biāo)識(shí);所述的虛擬機(jī)CPU架構(gòu)用于標(biāo)識(shí)被操作的虛擬機(jī)的CPU架構(gòu)是i386還是x86_64 ;所述的虛擬機(jī)內(nèi)核鏡像標(biāo)識(shí)kernelld,用于標(biāo)識(shí)被操作虛擬機(jī)所使用的內(nèi)核鏡像,是區(qū)分一個(gè)內(nèi)核鏡像與其他內(nèi)核鏡像的全局唯一標(biāo)識(shí);所述的虛擬機(jī)啟動(dòng)鏡像標(biāo)識(shí)用于標(biāo)識(shí)被操作虛擬機(jī)所使用的啟動(dòng)鏡像,是區(qū)分一個(gè)啟動(dòng)鏡像與其他啟動(dòng)鏡像的全局唯一標(biāo)識(shí);定制后系統(tǒng)鏡像的存儲(chǔ)路徑用于標(biāo)識(shí)定制后的系統(tǒng)鏡像在云存儲(chǔ)上的存儲(chǔ)路徑,該路徑在云存儲(chǔ)文件系統(tǒng)中是全局唯一標(biāo)識(shí);定制后系統(tǒng)鏡像的名稱(chēng)用于標(biāo)識(shí)定制后的系統(tǒng)鏡像在云存儲(chǔ)路徑中的描述文件名稱(chēng),該名稱(chēng)在云存儲(chǔ)文件系統(tǒng)中制定存儲(chǔ)路徑下唯一標(biāo)識(shí)。3、根據(jù)權(quán)利要求根據(jù)權(quán)利要求1或2所述的在線定制虛擬機(jī)鏡像的系統(tǒng),其特征在于所述的安全驗(yàn)證單元(12)的安全驗(yàn)證包括)(509認(rèn)證、權(quán)限驗(yàn)證。其中,X509認(rèn)證用于密碼真實(shí)性確定;權(quán)限驗(yàn)證用于驗(yàn)證用戶(hù)的級(jí)別,確定用戶(hù)是否擁有對(duì)該虛擬機(jī)鏡像進(jìn)行在線定制操作。本發(fā)明解決解決上述技術(shù)問(wèn)題之二的技術(shù)方案是按如下步驟進(jìn)行消息傳遞處理和鏡像處理消息傳遞處理步驟為步驟Al 云控制器端定位被操作虛擬機(jī)所運(yùn)行的集群,將在線定制消息傳遞到指定的集群控制器。步驟A2 集群控制器定位被操作虛擬機(jī)所運(yùn)行的節(jié)點(diǎn),將在線定制消息傳遞到指定的節(jié)點(diǎn)控制器。
5
鏡像處理過(guò)程包括步驟Bl 組裝)(509認(rèn)證所需安全證書(shū)。步驟B2 通過(guò)被操作虛擬機(jī)唯一標(biāo)識(shí)instanceld定位其系統(tǒng)鏡像在文件系統(tǒng)中的位置。步驟B3 對(duì)被操作虛擬機(jī)系統(tǒng)鏡像進(jìn)行壓縮操作。步驟B4 對(duì)被操作虛擬機(jī)系統(tǒng)鏡像壓縮文件進(jìn)行分塊操作。步驟B5 生成分塊后文件的描述文件,該文件除包含分塊信息外,還包含被操作虛擬機(jī)系統(tǒng)鏡像所對(duì)應(yīng)的內(nèi)核鏡像標(biāo)識(shí)(kernelld)及啟動(dòng)鏡像標(biāo)識(shí)(ramdiskld)等信息。步驟B6 將分塊后的文件及分塊描述文件以指定鏡像名稱(chēng)(imageName)上傳至云存儲(chǔ)服務(wù)器中該用戶(hù)指定路徑下(bucketName)。步驟B7 在云計(jì)算系統(tǒng)中注冊(cè)該鏡像,使用戶(hù)可以利用定制的系統(tǒng)鏡像批量創(chuàng)建虛擬機(jī)。采用本發(fā)明的工具和方法可達(dá)到如下有益效果1、本發(fā)明方便用戶(hù)隨時(shí)定制所擁有的虛擬機(jī)系統(tǒng),無(wú)需在安裝、部署重復(fù)花費(fèi)時(shí)間,有效的提高了工作效率,在需要大規(guī)模部署集群環(huán)境時(shí)尤為明顯。2、本發(fā)明方便用戶(hù)隨時(shí)針對(duì)所擁有的虛擬機(jī)進(jìn)行備份,避免因誤操作而導(dǎo)致的數(shù)據(jù)丟失、系統(tǒng)崩潰等問(wèn)題。3、本發(fā)明充分考慮了當(dāng)前云計(jì)算領(lǐng)域虛擬機(jī)分布式的特點(diǎn),方便用戶(hù)同時(shí)在多個(gè)數(shù)據(jù)中心部署所需的集群系統(tǒng)。4、本發(fā)明可在線定制多種虛擬化技術(shù)的虛擬機(jī)鏡像,大大降低用戶(hù)使用過(guò)程中的復(fù)雜程度。
下面結(jié)合附圖對(duì)本發(fā)明進(jìn)一步說(shuō)明圖1為本發(fā)明在線定制虛擬機(jī)鏡像的系統(tǒng)結(jié)構(gòu)框圖;圖2為本發(fā)明提供的鏡像處理單元14處理實(shí)現(xiàn)流程圖。
具體實(shí)施例方式見(jiàn)圖1所示,本發(fā)明在線定制虛擬機(jī)鏡像的系統(tǒng)包括在線定制工具10、請(qǐng)求處理單元11、安全驗(yàn)證單元12、消息傳遞單元13、鏡像處理單元14。在線定制工具10用于向服務(wù)端發(fā)送指定的請(qǐng)求,并傳遞相應(yīng)的參數(shù)。請(qǐng)求處理單元11,用于監(jiān)聽(tīng)終端用戶(hù)的請(qǐng)求,經(jīng)過(guò)簡(jiǎn)單的分類(lèi)處理后輸出給相應(yīng)的安全驗(yàn)證單元12,并等待返回消息封裝后通過(guò)在線定制工具10返回給終端用戶(hù)。安全驗(yàn)證單元12,首先驗(yàn)證用戶(hù)的合法性,其次驗(yàn)證用戶(hù)是否擁有與請(qǐng)求相關(guān)的相應(yīng)權(quán)限,如果其中一項(xiàng)為假,則直接駁回用戶(hù)請(qǐng)求,并將錯(cuò)誤信息等傳遞給請(qǐng)求處理單元;如果都為真則將請(qǐng)求消息輸出給消息傳遞單元13。消息傳遞單元13,用于根據(jù)用戶(hù)請(qǐng)求功能劃分接收到的消息,并將消息分發(fā)到各自的等待隊(duì)列,等待鏡像處理單元14處理。鏡像處理單元14,用于處理從消息隊(duì)列中接受的任務(wù),將鏡像打包、分塊、上傳、關(guān)聯(lián)。如圖2所示,為本發(fā)明鏡像處理單元14實(shí)現(xiàn)流程圖,該方法包括
步驟Bl 組裝)(509認(rèn)證所需安全證書(shū)。步驟B2 通過(guò)被操作虛擬機(jī)唯一標(biāo)識(shí)instanceld定位其系統(tǒng)鏡像在文件系統(tǒng)中的位置。步驟B3 對(duì)被操作虛擬機(jī)系統(tǒng)鏡像進(jìn)行壓縮操作。步驟B4 對(duì)被操作虛擬機(jī)系統(tǒng)鏡像壓縮文件進(jìn)行分塊操作。步驟B5 生成分塊后文件的描述文件,該文件除包含分塊信息外,還包含被操作虛擬機(jī)系統(tǒng)鏡像所對(duì)應(yīng)的內(nèi)核鏡像標(biāo)識(shí)(kernelld)及啟動(dòng)鏡像標(biāo)識(shí)(ramdiskld)等信息。步驟B6 將分塊后的文件及分塊描述文件以指定鏡像名稱(chēng)(imageName)上傳至云存儲(chǔ)服務(wù)器中該用戶(hù)指定路徑下(bucketName)。步驟B7 在云計(jì)算系統(tǒng)中注冊(cè)該鏡像,使用戶(hù)可以利用定制的系統(tǒng)鏡像批量創(chuàng)建虛擬機(jī)。此外,本發(fā)明的消息傳遞單元13的消息傳遞處理步驟為步驟Al 云控制器端定位被操作虛擬機(jī)所運(yùn)行的集群,將在線定制消息傳遞到指定的集群控制器。步驟A2 集群控制器定位被操作虛擬機(jī)所運(yùn)行的節(jié)點(diǎn),將在線定制消息傳遞到指定的節(jié)點(diǎn)控制器。
權(quán)利要求
1.一種在線定制虛擬機(jī)鏡像的系統(tǒng),其特征在于包括在線定制工具(10)、請(qǐng)求處理單元(11)、安全驗(yàn)證單元(12)、消息傳遞單元(13)和消息傳遞單元(14);所述的在線定制工具(10),用于向服務(wù)端發(fā)送指定的請(qǐng)求,并傳遞相應(yīng)的參數(shù);所述的請(qǐng)求處理單元(11),用于監(jiān)聽(tīng)終端用戶(hù)的請(qǐng)求,經(jīng)過(guò)簡(jiǎn)單的分類(lèi)處理后輸出給相應(yīng)的安全驗(yàn)證單元(12),并等待返回消息封裝后通過(guò)在線定制工具(10)返回給終端用戶(hù);所述的安全驗(yàn)證單元(12),用于驗(yàn)證用戶(hù)的合法性、用戶(hù)是否擁有與請(qǐng)求相關(guān)的相應(yīng)權(quán)限,并根據(jù)驗(yàn)證情況駁回用戶(hù)請(qǐng)求將錯(cuò)誤信息等傳遞給請(qǐng)求處理單元(11)或?qū)⒄?qǐng)求消息輸出給消息傳遞單元(13);所述的消息傳遞單元(13),用于根據(jù)用戶(hù)請(qǐng)求功能劃分接收到的消息,并將消息分發(fā)到各自的等待隊(duì)列,等待鏡像處理單元(14)處理;所述的鏡像處理單元(14),用于處理從消息隊(duì)列中接受的任務(wù),將鏡像打包、分塊、上傳、關(guān)聯(lián)。
2.根據(jù)權(quán)利要求1所述的在線定制虛擬機(jī)鏡像的系統(tǒng),其特征在于所述的請(qǐng)求處理單元(11)請(qǐng)求命令的結(jié)構(gòu)包括虛擬機(jī)標(biāo)識(shí)、虛擬機(jī)CPU架構(gòu)、虛擬機(jī)內(nèi)核鏡像標(biāo)識(shí)、虛擬機(jī)啟動(dòng)鏡像標(biāo)識(shí)、定制后系統(tǒng)鏡像的存儲(chǔ)路徑、定制后系統(tǒng)鏡像的名稱(chēng);其中,所述的虛擬機(jī)標(biāo)識(shí)用于標(biāo)識(shí)被操作的虛擬機(jī),是區(qū)分一個(gè)虛擬機(jī)與其他虛擬機(jī)的全局唯一標(biāo)識(shí);所述的虛擬機(jī)CPU架構(gòu)用于標(biāo)識(shí)被操作的虛擬機(jī)的CPU架構(gòu)是i386還是x86_64 ;所述的虛擬機(jī)內(nèi)核鏡像標(biāo)識(shí)kernelld,用于標(biāo)識(shí)被操作虛擬機(jī)所使用的內(nèi)核鏡像,是區(qū)分一個(gè)內(nèi)核鏡像與其他內(nèi)核鏡像的全局唯一標(biāo)識(shí);所述的虛擬機(jī)啟動(dòng)鏡像標(biāo)識(shí)用于標(biāo)識(shí)被操作虛擬機(jī)所使用的啟動(dòng)鏡像,是區(qū)分一個(gè)啟動(dòng)鏡像與其他啟動(dòng)鏡像的全局唯一標(biāo)識(shí);定制后系統(tǒng)鏡像的存儲(chǔ)路徑用于標(biāo)識(shí)定制后的系統(tǒng)鏡像在云存儲(chǔ)上的存儲(chǔ)路徑,該路徑在云存儲(chǔ)文件系統(tǒng)中是全局唯一標(biāo)識(shí);定制后系統(tǒng)鏡像的名稱(chēng)用于標(biāo)識(shí)定制后的系統(tǒng)鏡像在云存儲(chǔ)路徑中的描述文件名稱(chēng),該名稱(chēng)在云存儲(chǔ)文件系統(tǒng)中制定存儲(chǔ)路徑下唯一標(biāo)識(shí)。
3.根據(jù)權(quán)利要求根據(jù)權(quán)利要求1或2所述的在線定制虛擬機(jī)鏡像的系統(tǒng),其特征在于 所述的安全驗(yàn)證單元(1 的安全驗(yàn)證包括)(509認(rèn)證、權(quán)限驗(yàn)證。其中,)(509認(rèn)證用于密碼真實(shí)性確定;權(quán)限驗(yàn)證用于驗(yàn)證用戶(hù)的級(jí)別,確定用戶(hù)是否擁有對(duì)該虛擬機(jī)鏡像進(jìn)行在線定制操作。
4.一種根據(jù)權(quán)利要求1所述的在線定制虛擬機(jī)鏡像系統(tǒng)的方法,其特征在于按如下步驟進(jìn)行消息傳遞處理和鏡像處理消息傳遞處理步驟為步驟Al 云控制器端定位被操作虛擬機(jī)所運(yùn)行的集群,將在線定制消息傳遞到指定的集群控制器。步驟A2:集群控制器定位被操作虛擬機(jī)所運(yùn)行的節(jié)點(diǎn),將在線定制消息傳遞到指定的節(jié)點(diǎn)控制器。鏡像處理過(guò)程包括步驟Bl 組裝)(509認(rèn)證所需安全證書(shū)。步驟B2 通過(guò)被操作虛擬機(jī)唯一標(biāo)識(shí)instanceld定位其系統(tǒng)鏡像在文件系統(tǒng)中的位置。步驟B3 對(duì)被操作虛擬機(jī)系統(tǒng)鏡像進(jìn)行壓縮操作。 步驟B4 對(duì)被操作虛擬機(jī)系統(tǒng)鏡像壓縮文件進(jìn)行分塊操作。步驟B5 生成分塊后文件的描述文件,該文件除包含分塊信息外,還包含被操作虛擬機(jī)系統(tǒng)鏡像所對(duì)應(yīng)的內(nèi)核鏡像標(biāo)識(shí)(kernelld)及啟動(dòng)鏡像標(biāo)識(shí)(ramdiskld)等信息。步驟B6 將分塊后的文件及分塊描述文件以指定鏡像名稱(chēng)(imageName)上傳至云存儲(chǔ)服務(wù)器中該用戶(hù)指定路徑下(bucketName)。步驟B7 在云計(jì)算系統(tǒng)中注冊(cè)該鏡像,使用戶(hù)可以利用定制的系統(tǒng)鏡像批量創(chuàng)建虛擬機(jī)。
全文摘要
本發(fā)明涉及云計(jì)算技術(shù)領(lǐng)域,特指一種在線定制虛擬機(jī)鏡像的系統(tǒng)及其方法。包括在線定制工具、請(qǐng)求處理單元、安全驗(yàn)證單元、消息傳遞單元和消息傳遞單元;在線定制工具,用于向服務(wù)端發(fā)送指定的請(qǐng)求,并傳遞相應(yīng)的參數(shù);請(qǐng)求處理單元用于監(jiān)聽(tīng)終端用戶(hù)的請(qǐng)求,輸出給相應(yīng)的安全驗(yàn)證單元,并等待返回消息封裝后返回給終端用戶(hù);安全驗(yàn)證單元,用于驗(yàn)證用戶(hù)的合法性、用戶(hù)是否擁有與請(qǐng)求相關(guān)的相應(yīng)權(quán)限;消息傳遞單元用于根據(jù)用戶(hù)請(qǐng)求功能劃分接收到的消息,并將消息分發(fā)到各自的等待隊(duì)列,等待鏡像處理單元處理;鏡像處理單元,用于處理從消息隊(duì)列中接受的任務(wù),將鏡像打包、分塊、上傳、關(guān)聯(lián)。本發(fā)明為大規(guī)模集群所需虛擬機(jī)的部署提供一種簡(jiǎn)單、通用和有效的系統(tǒng)和方法;可應(yīng)用于在線定制虛擬機(jī)鏡像。
文檔編號(hào)H04L29/06GK102307207SQ20101029212
公開(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è)研究院有限公司