虛擬機(jī)集合的部署方法和裝置制造方法
【專利摘要】本發(fā)明公開了一種虛擬機(jī)集合的部署方法和裝置。其中,該方法包括:接收OVF包的放置策略信息;根據(jù)該放置策略信息判斷虛擬機(jī)集合的放置策略是否為嵌套式放置策略;如果是,采取放置策略深度優(yōu)先原則部署虛擬機(jī)集合,其中,該虛擬機(jī)集合根據(jù)嵌套式放置策略被劃分為多個(gè)級別,每個(gè)級別包含有虛擬機(jī)集合和/或虛擬機(jī),該放置策略深度優(yōu)先原則指部署虛擬機(jī)集合時(shí),按照級別由低到高的順序滿足虛擬機(jī)集合的放置策略。通過本發(fā)明,解決了相關(guān)技術(shù)中虛擬機(jī)集合的部署方式無法滿足用戶應(yīng)用部署需求的問題,增強(qiáng)了虛擬化平臺(tái)的部署能力。
【專利說明】虛擬機(jī)集合的部署方法和裝置
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及通信領(lǐng)域,具體而言,涉及一種虛擬機(jī)集合的部署方法和裝置。
【背景技術(shù)】
[0002]虛擬化技術(shù)是云服務(wù)平臺(tái)構(gòu)建的基礎(chǔ)。虛擬化技術(shù)是指在物理服務(wù)器上,通過虛擬化管理軟件Hypervisor將物理資源分割為多個(gè)邏輯分區(qū),每個(gè)分區(qū)相互隔離,成為獨(dú)立的虛擬機(jī)。對操作系統(tǒng)和應(yīng)用程序來說虛擬機(jī)與物理服務(wù)器沒有區(qū)別,它們可以共享同一臺(tái)物理服務(wù)器的資源。
[0003]虛擬化平臺(tái)支持為云服務(wù)用戶提供虛擬系統(tǒng)出租服務(wù),所謂的虛擬系統(tǒng)是指包含一組虛擬機(jī)、存儲(chǔ)和網(wǎng)絡(luò)并且彼此間相互連接或關(guān)聯(lián)的資源集合。為了便于用戶將傳統(tǒng)的應(yīng)用系統(tǒng)托管在虛擬系統(tǒng)上,虛擬化平臺(tái)還為云服務(wù)用戶提供了虛擬系統(tǒng)的部署、管理功能,包括將傳統(tǒng)應(yīng)用系統(tǒng)的應(yīng)用程序部署在虛擬機(jī)上,以及對存在位置依賴關(guān)系的應(yīng)用程序之間在虛擬機(jī)上部署時(shí)提供放置策略功能。
[0004]所謂的放置策略功能主要是指應(yīng)用系統(tǒng)中應(yīng)用程序部署在虛擬機(jī)中后,由于某些應(yīng)用程序之間依賴于彼此之間的快速通信或?qū)灿布囊蕾囆?,要求兩個(gè)或多個(gè)虛擬機(jī)之間在部署時(shí)能夠靠的盡可能近;或者應(yīng)用程序之間由于高可靠性或者故障恢復(fù)方面的考慮,要求兩個(gè)或多個(gè)虛擬機(jī)之間在部署時(shí)能夠盡量分開。目前云服務(wù)平臺(tái)對虛擬機(jī)的放置通過放置策略控制,即親近關(guān)系(Affinity)表示虛擬機(jī)之間要盡可能靠近部署,典型的做法是部署 在同一個(gè)物理主機(jī)上,或者具有快速網(wǎng)絡(luò)連接的不同主機(jī)上;可用關(guān)系(Availability)表示虛擬機(jī)之間要盡可能的分開部署,典型的做法是部署在不同的物理主機(jī)上。
[0005]圖1示例云服務(wù)平臺(tái)模型。該模型圖中包括打包/部署管理器101,是原服務(wù)平臺(tái)對應(yīng)用系統(tǒng)及其包含的虛擬機(jī)和/或虛擬機(jī)組進(jìn)行打包,形成開放虛擬格式(OVF,OpenVirtualizat1n Format)包,OVF包包括應(yīng)用系統(tǒng)及其包含的虛擬機(jī)的配置、映像、環(huán)境等信息,以及目標(biāo)云服務(wù)平臺(tái)對OVF包進(jìn)行部署,恢復(fù)應(yīng)用系統(tǒng)及其包含的虛擬機(jī)的環(huán)境配置信息;應(yīng)用系統(tǒng)產(chǎn)品信息102,包含應(yīng)用系統(tǒng)中應(yīng)用程序相關(guān)的產(chǎn)品信息,如應(yīng)用程序的位置依賴關(guān)系等;應(yīng)用系統(tǒng)管理器103,負(fù)責(zé)為應(yīng)用系統(tǒng)選擇滿足放置策略等要求的主機(jī)系統(tǒng)104,以及負(fù)責(zé)應(yīng)用系統(tǒng)的加載、資源申請、配置和管理等功能;虛擬機(jī)(圖中具體為虛擬機(jī)X1、虛擬機(jī)X2,…,虛擬機(jī)Z4) 105是封裝了 CPU、內(nèi)存、本地磁盤和網(wǎng)絡(luò)等虛擬化的資源實(shí)體。
[0006]圖2示例現(xiàn)有OVF規(guī)范中的包格式圖,如圖中所示,該格式可以包括:
[0007]OVF包201,描述了一個(gè)開放的、可攜帶的、有效的并且可擴(kuò)展的運(yùn)行在虛擬機(jī)中的應(yīng)用軟件的打包和分發(fā)格式;0VF包201包含一個(gè)OVF描述符文件201a,O個(gè)或一個(gè)OVF的清單文件201b,O個(gè)或一個(gè)證書文件201c,O個(gè)或多個(gè)映像文件201d,0個(gè)或多個(gè)資源文件 201e ;
[0008]OVF信封221,描述虛擬機(jī)(及其虛擬硬件)相關(guān)的所有元數(shù)據(jù)信息,以及OVF包本身的結(jié)構(gòu);
[0009]磁盤231,描述OVF包中虛擬磁盤相關(guān)的元數(shù)據(jù)信息;
[0010]網(wǎng)絡(luò)232,描述OVF包使用的所有邏輯網(wǎng)絡(luò)列表;
[0011]資源分配233,描述OVF包中虛擬機(jī)集合所需的資源要求;
[0012]啟動(dòng)234,描述OVF包中虛擬機(jī)集合的上電和關(guān)閉;
[0013]部署選項(xiàng)235,規(guī)定一套資源配置信息,如虛擬機(jī)的最小配置、正常配置和最大配
直等;
[0014]產(chǎn)品236,規(guī)定虛擬機(jī)及其運(yùn)行程序的產(chǎn)品信息,如產(chǎn)品名稱、版本和設(shè)備商等。
[0015]放置組/放置(或者稱為“放置策略組/放置策略”)237,描述OVF包中兩個(gè)或多個(gè)虛擬機(jī)之間的部署關(guān)系,是盡可能的靠近還是盡可能分開等。
[0016]圖3示例現(xiàn)有OVF規(guī)范中的放置策略組結(jié)構(gòu)圖。該結(jié)構(gòu)圖中包括:打包/部署管理器301、應(yīng)用系統(tǒng)管理器302、放置策略303、放置策略組310、放置策略311、虛擬機(jī)312(為便于區(qū)分,圖中具體為虛擬機(jī)11、虛擬機(jī)12、……、虛擬機(jī)4x)。其中,打包/部署管理器301、應(yīng)用系統(tǒng)管理器302和虛擬機(jī)312的功能如上述圖1中所述;放置策略303,即OVF包中所包含的所有策略組信息;放置策略組310,描述OVF包中具有親近關(guān)系或可用關(guān)系的兩個(gè)或多個(gè)虛擬機(jī)組;放置策略311,描述放置策略組中虛擬機(jī)之間的關(guān)系,即是親近關(guān)系還是可用關(guān)系;虛擬機(jī)312中加載應(yīng)用系統(tǒng)的應(yīng)用程序。
[0017]圖4示例OVF規(guī)范中的高級別虛擬機(jī)集合有放置策略,其內(nèi)部的低級別虛擬機(jī)和/或虛擬機(jī)集合無放置策略的部署示意圖,其中,預(yù)置條件如下:
[0018]I)虛擬機(jī)集合O包含虛擬機(jī)I和虛擬機(jī)2,虛擬機(jī)集合3和虛擬機(jī)集合4。
[0019]2)虛擬機(jī)集合3包含虛擬機(jī)31、虛擬32、虛擬機(jī)33和虛擬機(jī)34。
[0020]3)虛擬機(jī)集合4包含虛擬機(jī)41、虛擬42、虛擬機(jī)43和虛擬機(jī)44。
[0021]4)虛擬機(jī)集合O上設(shè)置了放置策略:可用關(guān)系。
[0022]按相關(guān)的規(guī)范要求,該放置策略將透傳并應(yīng)用于該虛擬機(jī)集合O所包含的虛擬機(jī)I和虛擬機(jī)2,虛擬機(jī)集合3和虛擬機(jī)集合4,以及虛擬機(jī)集合3和虛擬機(jī)集合4所包含的虛擬機(jī)。即虛擬化平臺(tái)要將虛擬機(jī)I和虛擬機(jī)2、虛擬機(jī)集合3和虛擬機(jī)集合4分別部署在不同的主機(jī)上,虛擬機(jī)集合3和虛擬機(jī)集合4所包含的虛擬機(jī)也要分別部署在不同的主機(jī)上。虛擬機(jī)集合O最終的部署情況為:
[0023]虛擬機(jī)I部署在主機(jī)A上,虛擬機(jī)2部署在主機(jī)B上;
[0024]虛擬機(jī)集合3的虛擬機(jī)31部署在主機(jī)C上,虛擬機(jī)32部署在主機(jī)D上,虛擬機(jī)33部署在主機(jī)E上,虛擬機(jī)34部署在主機(jī)F上;
[0025]虛擬機(jī)集合4的虛擬機(jī)41部署在主機(jī)H上,虛擬機(jī)42部署在主機(jī)I上,虛擬機(jī)43部署在主機(jī)J上,虛擬機(jī)44部署在主機(jī)K上。
[0026] 圖5示例OVF規(guī)范中的高級別虛擬機(jī)集合無放置策略,其內(nèi)部的低級別虛擬機(jī)和/或虛擬機(jī)集合有放置策略的部署示意圖。其中,預(yù)置條件如下:
[0027]I)虛擬機(jī)集合O包含虛擬機(jī)I和虛擬機(jī)2,虛擬機(jī)集合3和虛擬機(jī)集合4。
[0028]2)虛擬機(jī)集合3包含虛擬機(jī)31、虛擬32、虛擬機(jī)33和虛擬機(jī)34。
[0029]3)虛擬機(jī)集合4包含虛擬機(jī)41、虛擬42、虛擬機(jī)43和虛擬機(jī)44。
[0030]4)虛擬機(jī)集合3的虛擬機(jī)31和虛擬機(jī)32之間設(shè)置了放置策略:親近關(guān)系,虛擬機(jī)33和虛擬機(jī)34之間設(shè)置了放置策略:可用關(guān)系。
[0031]5)虛擬機(jī)集合4的虛擬機(jī)41和虛擬機(jī)42之間設(shè)置了放置策略:親近關(guān)系,虛擬機(jī)43和虛擬機(jī)44之間設(shè)置了放置策略:可用關(guān)系。
[0032]按相關(guān)的規(guī)范要求,虛擬機(jī)集合3的虛擬機(jī)31和虛擬機(jī)32將部署在同一個(gè)主機(jī)上,虛擬機(jī)33和虛擬機(jī)34將分別部署在不同的主機(jī)上。虛擬機(jī)集合4的虛擬機(jī)41和虛擬機(jī)42將部署在同一個(gè)主機(jī)上,虛擬機(jī)43和虛擬機(jī)44將分別部署在不同的主機(jī)上。虛擬機(jī)集合O所包含的虛擬機(jī)I和虛擬機(jī)2可根據(jù)虛擬化平臺(tái)選擇合適的主機(jī)進(jìn)行部署,虛擬機(jī)集合3和虛擬機(jī)集合4之間可根據(jù)虛擬化平臺(tái)選擇合適的主機(jī)進(jìn)行部署。
[0033]圖5中的主機(jī)編號只是虛擬化平臺(tái)選擇的一種部署方式,具體如下:
[0034]虛擬機(jī)I部署在主機(jī)A上,虛擬機(jī)2部署在主機(jī)B上;
[0035]虛擬機(jī)集合3的虛擬機(jī)31和虛擬機(jī)32部署在主機(jī)C上,虛擬機(jī)33部署在主機(jī)D上,虛擬機(jī)34部署在主機(jī)E上;
[0036]虛擬機(jī)集合4的虛擬機(jī)41和虛擬機(jī)42部署在主機(jī)D上,虛擬機(jī)43部署在主機(jī)E上,虛擬機(jī)44部署在主機(jī)A上。
[0037]如圖中的部署情況,虛擬機(jī)集合4與虛擬機(jī)集合3重用了主機(jī)D和E,并與虛擬機(jī)A重用了主機(jī)A資源。
[0038]目前云服務(wù)平臺(tái)對虛擬機(jī)和虛擬機(jī)集合的放置策略要求通過放置策略組進(jìn)行控制,所謂的放置策略組是指滿足親近或可用放置策略關(guān)系的虛擬機(jī)組和/或虛擬機(jī)集合組,并且規(guī)定如果虛擬機(jī)集合是某放置策略的成員,則放置策略將傳遞并應(yīng)用于該虛擬機(jī)集合的所有子虛擬機(jī)和子虛擬機(jī)集合。但是對于一些傳統(tǒng)的應(yīng)用系統(tǒng)當(dāng)采用虛擬化平臺(tái)進(jìn)行部署時(shí),需要申請多個(gè)虛擬機(jī),并且虛擬機(jī)要按照應(yīng)用系統(tǒng)的組成劃分為多個(gè)級別,即應(yīng)用系統(tǒng)是一個(gè)大的虛擬機(jī)集合,其內(nèi)部還包含多層應(yīng)用程序,需要采用嵌套的虛擬機(jī)及子虛擬機(jī)集合的方式滿足多層應(yīng)用程序的部署。應(yīng)用系統(tǒng)對應(yīng)的虛擬機(jī)集合內(nèi)的子虛擬機(jī)集合和/或其下級子虛擬機(jī)集合內(nèi)的虛擬機(jī)之間可能也存在一定的放置策略要求,而子虛擬機(jī)集合和/或其下級子虛擬機(jī)集合內(nèi)的放置策略可能不同于虛擬機(jī)集合的放置策略,而如果將虛擬機(jī)集合的放置策略傳遞并應(yīng)用于其內(nèi)部的子虛擬機(jī)集合和/或下級子虛擬機(jī)集合,將無法滿足較復(fù)雜應(yīng)用系統(tǒng)的部署要求。
[0039]上述問題如圖5所示,如果虛擬機(jī)集合3和虛擬機(jī)集合4上部署的是主備關(guān)系的應(yīng)用程序,要求物理位置上分離,即放置策略為可用關(guān)系。但是虛擬機(jī)集合3和虛擬機(jī)集合4內(nèi)部的虛擬機(jī)之間既存在親近關(guān)系又存在可用關(guān)系,如果放置策略按當(dāng)前標(biāo)準(zhǔn)按照傳遞的方式,虛擬機(jī)集合3和虛擬機(jī)結(jié)合4內(nèi)部的虛擬機(jī)之間的放置策略都將被上級虛擬機(jī)集合3和虛擬機(jī)集合4之間的放置策略所替代,造成無法滿足用戶應(yīng)用部署的需求。
[0040]針對相關(guān)技術(shù)中虛擬機(jī)集合的部署方式無法滿足用戶應(yīng)用部署需求的問題,目前尚未提出有效的解決方案。
【發(fā)明內(nèi)容】
[0041]針對虛擬機(jī)集合的部署方式無法滿足用戶應(yīng)用部署需求的問題,本發(fā)明提供了一種虛擬機(jī)集合的部署方法和裝置,以至少解決上述問題。
[0042]根據(jù)本發(fā)明的一個(gè)方面,提供了一種虛擬機(jī)集合的部署方法,包括:接收OVF包的放置策略信息;根據(jù)該放置策略信息判斷虛擬機(jī)集合的放置策略是否為嵌套式放置策略;如果是,采取放置策略深度優(yōu)先原則部署虛擬機(jī)集合,其中,該虛擬機(jī)集合根據(jù)嵌套式放置策略被劃分為多個(gè)級別,每個(gè)級別包含有虛擬機(jī)集合和/或虛擬機(jī),該放置策略深度優(yōu)先原則指部署虛擬機(jī)集合時(shí),按照級別由低到高的順序滿足虛擬機(jī)集合的放置策略。
[0043]上述采取放置策略深度優(yōu)先原則部署虛擬機(jī)集合包括:當(dāng)當(dāng)前級別的虛擬機(jī)集合和/或虛擬機(jī)沒有放置策略時(shí),查找當(dāng)前級別的虛擬機(jī)集合和/或虛擬機(jī)的上一級別虛擬機(jī)集合是否有放置策略,如果有,按照當(dāng)前級別的虛擬機(jī)集合和/或虛擬機(jī)的上一級別虛擬機(jī)集合的放置策略部署當(dāng)前級別的虛擬機(jī)集合和/或虛擬機(jī)。
[0044]上述采取放置策略深度優(yōu)先原則部署虛擬機(jī)集合包括:如果當(dāng)前的主機(jī)資源無法滿足虛擬機(jī)集合和/或虛擬機(jī)的放置策略的要求,根據(jù)預(yù)先設(shè)定的放置策略異常處理指示進(jìn)行處理,其中,該放置策略異常處理指示至少包括以下之一:不通知用戶并繼續(xù)處理、通知用戶并繼續(xù)處理、懸置處理并等待用戶干預(yù)、返回錯(cuò)誤并退出執(zhí)行。
[0045]上述根據(jù)預(yù)先設(shè)定的放置策略異常處理指示進(jìn)行處理包括:當(dāng)放置策略異常處理指示為不通知用戶并繼續(xù)處理或通知用戶并繼續(xù)處理時(shí),調(diào)整虛擬機(jī)集合和/或虛擬機(jī)的放置策略,直至當(dāng)前的主機(jī)資源能夠滿足調(diào)整后的放置策略為止。
[0046]上述根據(jù)預(yù)先設(shè)定的放置策略異常處理指示進(jìn)行處理包括:當(dāng)放置策略異常處理指示為懸置處理并等待用戶干預(yù)時(shí),向用戶發(fā)送建議的放置策略;根據(jù)用戶反饋的確認(rèn)消息或者用戶反饋的新的放置策略進(jìn)行處理。
[0047]上述采取放置策略深度優(yōu)先原則部署虛擬機(jī)包括:如果當(dāng)前的主機(jī)資源無法滿足虛擬機(jī)集合和/或虛擬機(jī)的放置策略的要求,檢查虛擬機(jī)集合和/或虛擬機(jī)所屬的放置策略組;其中,放置策略組包括:支持調(diào)整的指示和調(diào)整處理指示;當(dāng)支持調(diào)整的指示為否,向用戶發(fā)送部署錯(cuò)誤通知,并退出部署操作;當(dāng)支持調(diào)整的指示為是,按照調(diào)整處理指示進(jìn)行處理,其中,調(diào)整處理指示至少包括以下之一:不通知用戶并繼續(xù)處理、通知用戶并繼續(xù)處理、懸置處理并等待用戶干預(yù)。
[0048]上述采取放置策略深度優(yōu)先原則部署虛擬機(jī)集合包括:如果當(dāng)前的主機(jī)資源無法滿足虛擬機(jī)集合和/或虛擬機(jī)的放置策略的要求,檢查虛擬機(jī)集合和/或虛擬機(jī)所屬的放置策略組;其中,該放置策略組包括:支持調(diào)整的指示和調(diào)整處理指示;該調(diào)整處理指示至少包括以下之一:不通知用戶并繼續(xù)處理、通知用戶并繼續(xù)處理、懸置處理并等待用戶干預(yù);優(yōu)先為支持調(diào)整指示為否的放置策略組預(yù)置資源,然后按照調(diào)整處理指示對支持調(diào)整為是的放置策略組進(jìn)行處理。
[0049]上述采取放置策略深度優(yōu)先原則部署虛擬機(jī)集合包括:如果當(dāng)前的主機(jī)資源無法滿足虛擬機(jī)集合和/或虛擬機(jī)的放置策略的要求,檢查虛擬機(jī)集合和/或虛擬機(jī)所屬的放置策略組;如果放置策略組配置有支持調(diào)整的指示,按照支持調(diào)整的指示進(jìn)行處理;如果放置策略組未配置支持調(diào)整的指示,而放置策略組的上級策略組配置有支持調(diào)整的指示,按照與放置策略組最接近的上級策略組配置的支持調(diào)整的指示進(jìn)行處理;如果放置策略組及放置策略組的上級策略組都未配置支持調(diào)整的指示,根據(jù)預(yù)先設(shè)定的放置策略異常處理指示進(jìn)行處理,其中,放置策略異常處理指示至少包括以下之一:不通知用戶并繼續(xù)處理、通知用戶并繼續(xù)處理、懸置處理并等待用戶干預(yù)、返回錯(cuò)誤并退出執(zhí)行。
[0050]上述根據(jù)預(yù)先設(shè)定的放置策略異常處理指示進(jìn)行處理包括:如果放置策略異常處理指示為空,按照系統(tǒng)默認(rèn)方式進(jìn)行處理。
[0051]上述采取放置策略深度優(yōu)先原則部署虛擬機(jī)集合包括:當(dāng)OVF包為多個(gè)時(shí),優(yōu)先部署各個(gè)OVF包內(nèi)的放置策略;當(dāng)各個(gè)OVF包內(nèi)的放置策略完成部署時(shí),部署各個(gè)OVF包之間的放置策略。
[0052]根據(jù)本發(fā)明的另一方面,提供了一種虛擬機(jī)集合的部署裝置,包括:信息接收模塊,用于接收OVF包的放置策略信息;放置策略類型判斷模塊,用于根據(jù)信息接收模塊接收的放置策略信息判斷虛擬機(jī)集合的放置策略是否為嵌套式放置策略;部署模塊,用于如果放置策略類型判斷模塊判斷結(jié)果為是,采取放置策略深度優(yōu)先原則部署虛擬機(jī)集合,其中,該虛擬機(jī)集合根據(jù)嵌套式放置策略被劃分為多個(gè)級別,每個(gè)級別包含有虛擬機(jī)集合和/或虛擬機(jī);該放置策略深度優(yōu)先原則指部署虛擬機(jī)集合時(shí),按照級別由低到高的順序滿足虛擬機(jī)集合的放置策略。
[0053]上述部署模塊包括:放置策略查找單元,用于當(dāng)當(dāng)前級別的虛擬機(jī)集合和/或虛擬機(jī)沒有放置策略時(shí),查找當(dāng)前級別的虛擬機(jī)集合和/或虛擬機(jī)的上一級別虛擬機(jī)集合是否有放置策略;策略傳遞單元,用于如果放置策略查找單元查找的結(jié)果為有,按照當(dāng)前級別的虛擬機(jī)集合和/或虛擬機(jī)的上一級別虛擬機(jī)集合的放置策略部署當(dāng)前級別的虛擬機(jī)集合和/或虛擬機(jī)。
[0054]上述部署模塊包括:第一異常處理單元,用于如果當(dāng)前的主機(jī)資源無法滿足虛擬機(jī)集合和/或虛擬機(jī)的放置策略的要求,根據(jù)預(yù)先設(shè)定的放置策略異常處理指示進(jìn)行處理,其中,放置策略異常處理指示至少包括以下之一:不通知用戶并繼續(xù)處理、通知用戶并繼續(xù)處理、懸置處理并等待用戶干預(yù)、返回錯(cuò)誤并退出執(zhí)行。
[0055]上述部署模塊包括:第一檢查單元,如果當(dāng)前的主機(jī)資源無法滿足虛擬機(jī)集合和/或虛擬機(jī)的放置策略的要求,檢查虛擬機(jī)集合和/或虛擬機(jī)所屬的放置策略組;其中,放置策略組包括:支持調(diào)整的指示和調(diào)整處理指示;第二異常處理單元,用于當(dāng)?shù)谝粰z查單元的檢查結(jié)果為支持調(diào)整的指示為否,向用戶發(fā)送部署錯(cuò)誤通知,并退出部署操作;當(dāng)?shù)谝粰z查單元的檢查結(jié)果為支持調(diào)整的指示為是,按照調(diào)整處理指示進(jìn)行處理,其中,調(diào)整處理指示至少包括以下之一:不通知用戶并繼續(xù)處理、通知用戶并繼續(xù)處理、懸置處理并等待用戶干預(yù)。
[0056]上述部署模塊包括:第二檢查單元,用于如果當(dāng)前的主機(jī)資源無法滿足虛擬機(jī)集合和/或虛擬機(jī)的放置策略的要求,檢查虛擬機(jī)集合和/或所屬的放置策略組;其中,放置策略組包括:支持調(diào)整的指示和調(diào)整處理指示;調(diào)整處理指示至少包括以下之一:不通知用戶并繼續(xù)處理、通知用戶并繼續(xù)處理、懸置處理并等待用戶干預(yù);第三異常處理單元,用于根據(jù)第二檢查單元的檢查結(jié)果,優(yōu)先為支持調(diào)整指示為否的放置策略組預(yù)置資源,然后按照調(diào)整處理指示對支持調(diào)整為是的放置策略組進(jìn)行處理。
[0057]上述部署模塊包括:第三檢查單元,用于如果當(dāng)前的主機(jī)資源無法滿足虛擬機(jī)集合和/或虛擬機(jī)的放置策略的要求,檢查虛擬機(jī)集合和/或虛擬機(jī)所屬的放置策略組;第四異常處理單元,用于如果第三檢查單元的檢查結(jié)果是放置策略組配置有支持調(diào)整的指示,按照支持調(diào)整的指示進(jìn)行處理;如果第三檢查單元的檢查結(jié)果是放置策略組未配置支持調(diào)整的指示,而放置策略組的上級策略組配置有支持調(diào)整的指示,按照與放置策略組最接近的上級策略組配置的支持調(diào)整的指示進(jìn)行處理;如果第三檢查單元的檢查結(jié)果是放置策略組及放置策略組的上級策略組都未配置支持調(diào)整的指示,根據(jù)預(yù)先設(shè)定的放置策略異常處理指示進(jìn)行處理,其中,該放置策略異常處理指示至少包括以下之一:不通知用戶并繼續(xù)處理、通知用戶并繼續(xù)處理、懸置處理并等待用戶干預(yù)、返回錯(cuò)誤并退出執(zhí)行。
[0058]上述部署模塊包括:0VF包處理單元,用于當(dāng)OVF包為多個(gè)時(shí),優(yōu)先部署各個(gè)OVF包內(nèi)的放置策略;當(dāng)各個(gè)OVF包內(nèi)的放置策略完成部署時(shí),部署各個(gè)OVF包之間的放置策略。
[0059]通過本發(fā)明,采取放置策略深度優(yōu)先原則部署虛擬機(jī)集合,可以滿足嵌套式放置策略的需求,解決了相關(guān)技術(shù)中虛擬機(jī)集合的部署方式無法滿足用戶應(yīng)用部署需求的問題,增強(qiáng)了虛擬化平臺(tái)的部署能力。
【專利附圖】
【附圖說明】
[0060]此處所說明的附圖用來提供對本發(fā)明的進(jìn)一步理解,構(gòu)成本申請的一部分,本發(fā)明的示意性實(shí)施例及其說明用于解釋本發(fā)明,并不構(gòu)成對本發(fā)明的不當(dāng)限定。在附圖中:
[0061]圖1是根據(jù)相關(guān)技術(shù)的云服務(wù)平臺(tái)模型的結(jié)構(gòu)示意圖;
[0062]圖2是根據(jù)相關(guān)技術(shù)的OVF包格式的示意圖;
[0063]圖3是根據(jù)相關(guān)技術(shù)的OVF包中放置策略組結(jié)構(gòu)示意圖;
[0064]圖4是根據(jù)相關(guān)技術(shù)的高級別虛擬機(jī)集合有放置策略,其內(nèi)部的低級別虛擬機(jī)和/或虛擬機(jī)集合無放置策略的部署示意圖;
[0065]圖5是根據(jù)相關(guān)技術(shù)的高級別虛擬機(jī)集合無放置策略,其內(nèi)部的低級別虛擬機(jī)和/或虛擬機(jī)集合有放置策略的部署示意圖;
[0066]圖6是根據(jù)本發(fā)明實(shí)施例的虛擬機(jī)集合的部署方法的流程圖;
[0067]圖7是根據(jù)本發(fā)明實(shí)施例的虛擬機(jī)集合及其子成員和/或下級子成員都有放置策略時(shí)的部署方法示意圖;
[0068]圖8是根據(jù)本發(fā)明實(shí)施例的放置策略無法滿足,異常處理指示為調(diào)整放置策略繼續(xù)處理時(shí)的處理方法示意圖;
[0069]圖9是根據(jù)本發(fā)明實(shí)施例的放置策略無法滿足,異常處理指示為懸置處理并與用戶交互時(shí)的處理方法示意圖;
[0070]圖10是根據(jù)本發(fā)明實(shí)施例的放置策略無法滿足,異常處理指示向用戶返回錯(cuò)誤,退出處理時(shí)的處理方法示意圖;
[0071]圖11是根據(jù)本發(fā)明實(shí)施例的虛擬化平臺(tái)部署具有嵌套放置策略的虛擬機(jī)集合時(shí)的處理方法示意圖;
[0072]圖12是根據(jù)本發(fā)明實(shí)施例的合成OVF在OVF包之間和OVF包內(nèi)都有放置策略時(shí)的部署示意圖;
[0073]圖13是根據(jù)本發(fā)明實(shí)施例的虛擬機(jī)集合的部署裝置的結(jié)構(gòu)框圖。
【具體實(shí)施方式】
[0074]下文中將參考附圖并結(jié)合實(shí)施例來詳細(xì)說明本發(fā)明。需要說明的是,在不沖突的情況下,本申請中的實(shí)施例及實(shí)施例中的特征可以相互組合。
[0075]本發(fā)明實(shí)施例考慮到在數(shù)據(jù)中心和云服務(wù)平臺(tái)中,用戶的應(yīng)用部署需求有時(shí)比較復(fù)雜,為了更好地滿足用戶的部署需求,提供了一種虛擬機(jī)集合的部署方法和裝置。
[0076]實(shí)施例1
[0077]參見圖6所示的虛擬機(jī)集合的部署方法流程圖,該方法可以應(yīng)用在虛擬化平臺(tái)中,例如:虛擬資源管理器(相當(dāng)于圖1中的應(yīng)用系統(tǒng)管理器),如圖6所示,該方法包括以下步驟:
[0078]步驟S602,接收OVF包的放置策略信息;
[0079]步驟S604,根據(jù)上述放置策略信息判斷虛擬機(jī)集合的放置策略是否為嵌套式放置策略;該嵌套式放置策略指對于虛擬機(jī)集合之間、虛擬機(jī)集合內(nèi)部的子成員或下級子成員之間的位置關(guān)系分別通過不同的放置策略組進(jìn)行嵌套描述;
[0080]步驟S606,如果是,采取放置策略深度優(yōu)先原則部署虛擬機(jī)集合,其中,該虛擬機(jī)集合根據(jù)所述嵌套式放置策略被劃分為多個(gè)級別,每個(gè)級別包含有虛擬機(jī)集合和/或虛擬機(jī);該放置策略深度優(yōu)先原則指部署所述虛擬機(jī)集合時(shí),按照級別由低到高的順序滿足虛擬機(jī)集合的放置策略;即對嵌套的虛擬機(jī)集合,首先滿足最底層成員的放置策略部署要求,再滿足高一級別成員的放置策略部署要求,然后是較高級別成員的放置策略部署要求,最后滿足最上層放置策略部署要求。
[0081 ] 本實(shí)施例中的上述虛擬機(jī)集合不僅包括虛擬機(jī),而且也包括虛擬機(jī)集合等。
[0082]上述方法采用嵌套的放置策略實(shí)現(xiàn)具有多重位置策略關(guān)系的虛擬機(jī)集合的部署。當(dāng)虛擬機(jī)集合、其內(nèi)部嵌套的子成員以及下級子成員分別有各自的放置策略時(shí),虛擬化平臺(tái)對虛擬機(jī)集合,其內(nèi)部嵌套的子成員和下級子成員采取放置策略深度優(yōu)先原則進(jìn)行部署。
[0083]本實(shí)施例的方法采取放置策略深度優(yōu)先原則部署虛擬機(jī)集合,可以滿足嵌套式放置策略的需求,解決了相關(guān)技術(shù)中虛擬機(jī)集合的部署方式無法滿足用戶應(yīng)用部署需求的問題,增強(qiáng)了虛擬化平臺(tái)的部署能力。
[0084]其中,上述OVF包的放置策略信息的獲取過程可以如下:
[0085]I )0VF打包管理器根據(jù)用戶的請求對虛擬化平臺(tái)中的某個(gè)應(yīng)用系統(tǒng)的虛擬機(jī)及其系統(tǒng)環(huán)境進(jìn)行OVF打包;
[0086]2)0VF打包管理器根據(jù)應(yīng)用系統(tǒng)的應(yīng)用程序位置關(guān)系要求設(shè)置應(yīng)用系統(tǒng)的放置策略組;對于虛擬機(jī)集合之間、虛擬機(jī)集合內(nèi)部的子成員或下級子成員之間的位置關(guān)系分別通過不同的放置策略組進(jìn)行嵌套描述;
[0087]3)部署管理器接收到OVF打包管理器發(fā)送的OVF包后,在目標(biāo)平臺(tái)根據(jù)OVF包對應(yīng)用系統(tǒng)進(jìn)行恢復(fù),包括根據(jù)嵌套的放置策略為虛擬機(jī)集合之間、虛擬機(jī)集合內(nèi)部的子成員和下級子成員之間選擇放置位置等,然后將這些放置策略信息發(fā)送給虛擬資源管理器。
[0088]本實(shí)施例的虛擬機(jī)集合子成員是指虛擬機(jī)集合內(nèi)所包含的虛擬機(jī)和/或虛擬機(jī)集合。虛擬機(jī)集合下級子成員是指虛擬機(jī)集合的子虛擬機(jī)集合所包含的虛擬機(jī)和/或虛擬機(jī)集合。
[0089]進(jìn)一步地,所述虛擬機(jī)集合對應(yīng)的OVF合成場景,即應(yīng)用系統(tǒng)采用多個(gè)OVF包進(jìn)行合成部署時(shí),要按照OVF包級別的深度優(yōu)先原則。即如果OVF包內(nèi)部和OVF包之間都需要設(shè)置放置策略,則部署平臺(tái)要按深度優(yōu)先原則優(yōu)先滿足各OVF包內(nèi)的放置策略,然后再滿足OVF包之間的放置策略。[0090]考慮到用戶的放置策略需求具有多樣性,本實(shí)施例的上述采取放置策略深度優(yōu)先原則部署虛擬機(jī)在具體實(shí)現(xiàn)時(shí),可以采取以下方式:
[0091]當(dāng)當(dāng)前級別的虛擬機(jī)集合和/或虛擬機(jī)沒有放置策略時(shí),查找當(dāng)前級別的虛擬機(jī)集合和/或虛擬機(jī)的上一級別虛擬機(jī)集合是否有放置策略,如果有,按照當(dāng)前級別的虛擬機(jī)集合和/或虛擬機(jī)的上一級別虛擬機(jī)集合的放置策略部署當(dāng)前級別的虛擬機(jī)集合和/或虛擬機(jī)。即:如果虛擬機(jī)集合設(shè)置了放置策略,如果其子成員和/或下級子成員沒有設(shè)置放置策略的情況,虛擬機(jī)集合的放置策略將傳遞并應(yīng)用于其所包含的沒有設(shè)置放置策略的子成員和/或下級子成員。
[0092]同時(shí),上述放置策略深度優(yōu)先原則在滿足高級別的放置策略要求時(shí),不影響具有放置策略的子成員和下級子成員的低級別的放置策略要求。進(jìn)一步地,虛擬機(jī)集合及其子成員或下級子成員同時(shí)都有各自不同的放置策略的情況,放置策略采用深度優(yōu)先的方式,即首先滿足下級子成員和/或子成員的放置策略部署要求,然后再滿足該虛擬機(jī)集合級別的放置策略部署要求。
[0093]如果虛擬機(jī)集合沒有設(shè)置放置策略,如果其所包含的子成員和/或下級子成員設(shè)置了放置策略,則部署平臺(tái)首先滿足其下級子成員和/或子成員的放置策略要求。
[0094]當(dāng)然,實(shí)際應(yīng)該過程中,可能會(huì)存在當(dāng)前的主機(jī)資源無法滿足該OVF包中的所有放置策略的要求,對應(yīng)這種情況,本發(fā)明實(shí)施例給出以下處理方式:
[0095]I)依據(jù)放置策略異常處理指示進(jìn)行處理的方式
[0096]如果當(dāng)前的主機(jī)資源無法滿足虛擬機(jī)集合的放置策略的要求,根據(jù)預(yù)先設(shè)定的放置策略異常處理指示進(jìn)行處理,其中,該放置策略異常處理指示至少包括以下之一:不通知用戶并繼續(xù)處理、通知用戶并繼續(xù)處理、懸置處理并等待用戶干預(yù)、返回錯(cuò)誤并退出執(zhí)行。
[0097]具體地,根據(jù)預(yù)先設(shè)定的放置策略異常處理指示進(jìn)行處理可以包括:當(dāng)放置策略異常處理指示為不通知用戶并繼續(xù)處理或通知用戶并繼續(xù)處理時(shí),調(diào)整虛擬機(jī)集合和/或虛擬機(jī)的放置策略,直至當(dāng)前的主機(jī)資源能夠滿足調(diào)整后的放置策略為止。當(dāng)放置策略異常處理指示為懸置處理并等待用戶干預(yù)時(shí),向用戶發(fā)送建議的放置策略;根據(jù)用戶反饋的確認(rèn)消息或者用戶反饋的新的放置策略進(jìn)行處理。
[0098]這種方式下,當(dāng)虛擬化平臺(tái)在部署虛擬機(jī)集合時(shí),如果在資源調(diào)度過程中,發(fā)現(xiàn)無法找到滿足放置策略要求的主機(jī)資源,可以根據(jù)虛擬化平臺(tái)設(shè)置的放置策略異常處理指示進(jìn)行處理。具體地:虛擬化平臺(tái)在資源調(diào)度過程中發(fā)現(xiàn)無法找到滿足放置策略要求的主機(jī)資源,并且放置策略異常處理指示為不通知用戶并繼續(xù)處理或通知用戶并繼續(xù)處理時(shí),虛擬化平臺(tái)將調(diào)整虛擬機(jī)集合放置策略中無法滿足的放置策略,直至能夠提供滿足虛擬機(jī)集合放置策略的主機(jī)資源?;蛘?,虛擬化平臺(tái)在資源調(diào)度過程中發(fā)現(xiàn)無法找到滿足放置策略要求的資源,并根據(jù)放置策略異常處理指示向用戶給出建議的放置策略,懸置處理并與用戶交互,等待用戶確認(rèn)或用戶設(shè)置新的放置策略。
[0099]2)單個(gè)放置策略組時(shí)的處理方式
[0100]如果當(dāng)前的主機(jī)資源無法滿足虛擬機(jī)集合和/或虛擬機(jī)的放置策略的要求,檢查所述該虛擬機(jī)集合和/或虛擬機(jī)所屬的放置策略組;其中,該放置策略組包括:支持調(diào)整的指示和調(diào)整處理指示;當(dāng)該支持調(diào)整的指示為否,向用戶發(fā)送部署錯(cuò)誤通知,并退出部署操作;當(dāng)該支持調(diào)整的指示為是,按照調(diào)整處理指示進(jìn)行處理,其中,該調(diào)整處理指示至少包括以下之一:不通知用戶并繼續(xù)處理、通知用戶并繼續(xù)處理、懸置處理并等待用戶干預(yù)。
[0101]3)多個(gè)放置策略組時(shí)的處理方式
[0102]如果當(dāng)前的主機(jī)資源無法滿足虛擬機(jī)集合和/或虛擬機(jī)的放置策略的要求,檢查所述虛擬機(jī)集合和/或虛擬機(jī)的放置策略組;其中,放置策略組包括:支持調(diào)整的指示和調(diào)整處理指示;調(diào)整處理指示至少包括以下之一:不通知用戶并繼續(xù)處理、通知用戶并繼續(xù)處理、懸置處理并等待用戶干預(yù);根據(jù)檢查的結(jié)果,優(yōu)先為支持調(diào)整指示為否的放置策略組預(yù)置資源,然后按照上述調(diào)整處理指示對支持調(diào)整為是的放置策略組進(jìn)行處理。
[0103]這種方式下,放置策略組設(shè)置了支持調(diào)整指示和調(diào)整處理指示,如果支持調(diào)整指示設(shè)置為否,表示放置策略必須要滿足,如果不滿足要向用戶返回錯(cuò)誤,并退出執(zhí)行;如果支持調(diào)整指示設(shè)置為是,表示放置策略要盡量被滿足,如果不滿足要按照調(diào)整處理指示進(jìn)行處理。該調(diào)整處理指示包括:不通知用戶并繼續(xù)處理、通知用戶并繼續(xù)處理、懸置處理并等待用戶干預(yù)。進(jìn)一步地,若上述放置策略組為多個(gè),并均配置了是否支持調(diào)整的情況,虛擬化平臺(tái)在資源調(diào)度過程中優(yōu)先為不支持調(diào)整的放置策略組預(yù)置資源,然后為支持調(diào)整的放置策略組預(yù)置資源,保證具有嵌套放置策略的虛擬機(jī)集合盡可能實(shí)現(xiàn)在虛擬化平臺(tái)上進(jìn)行部署。
[0104]關(guān)于多放置策略組場景下,如果主機(jī)資源無法滿足某個(gè)放置策略組,而該放置策略組沒有設(shè)置支持調(diào)整指示和調(diào)整處理指示的情況,可以采用其最接近的上級放置策略組的支持調(diào)整指示和調(diào)整處理指示進(jìn)行進(jìn)一步的處理。
[0105]4)放置策略異常處理指示和放置策略組結(jié)合的處理方式
[0106]如果當(dāng)前的主機(jī)資源無法滿足虛擬機(jī)集合和/或虛擬機(jī)的放置策略的要求,檢查所述虛擬機(jī)集合和/或虛擬機(jī)所屬的放置策略組;如果放置策略組配置有支持調(diào)整的指示,按照支持調(diào)整的指示進(jìn)行處理;如果該放置策略組未配置支持調(diào)整的指示,而該放置策略組的上級策略組配置有支持調(diào)整的指示,按照與該放置策略組最接近的上級策略組配置的支持調(diào)整的指示進(jìn)行處理;如果放置策略組及該放置策略組的上級策略組都未配置支持調(diào)整的指示,根據(jù)預(yù)先設(shè)定的放置策略異常處理指示進(jìn)行處理,其中,放置策略異常處理指示至少包括以下之一:不通知用戶并繼續(xù)處理、通知用戶并繼續(xù)處理、懸置處理并等待用戶干預(yù)、返回錯(cuò)誤并退出執(zhí)行。
[0107]如果放置策略異常處理指示為空,按照系統(tǒng)默認(rèn)方式進(jìn)行處理。即如果虛擬化平臺(tái)和放置策略組都沒有配置放置策略處理指示,當(dāng)虛擬化平臺(tái)在資源調(diào)度過程中發(fā)現(xiàn)無法找到滿足放置策略要求的資源時(shí),將按照虛擬化平臺(tái)默認(rèn)的方式進(jìn)行處理。
[0108]這種方式中,虛擬化平臺(tái)設(shè)置了放置策略異常處理指示并且放置策略組也配置了是否支持調(diào)整的情況,當(dāng)虛擬化平臺(tái)在資源調(diào)度過程中發(fā)現(xiàn)無法找到滿足放置策略要求的資源時(shí),優(yōu)先按照放置策略組配置的是否支持調(diào)整指示進(jìn)行處理,如果放置策略組及其上級策略組都沒有設(shè)置是否支持調(diào)整,則根據(jù)虛擬化平臺(tái)設(shè)置的放置策略異常處理指示進(jìn)行處理。
[0109]由此可見,上述方式的虛擬化平臺(tái)在部署具有嵌套放置策略的虛擬機(jī)集合時(shí),要根據(jù)虛擬機(jī)集合的放置策略要求并結(jié)合當(dāng)前主機(jī)資源的可用情況,進(jìn)行資源預(yù)分配和綜合規(guī)劃,在確保滿足虛擬機(jī)集合放置位置要求的情況下能夠充分的提高主機(jī)資源的利用率。
[0110]另外,本發(fā)明實(shí)施例中的OVF包也可以是由多個(gè)OVF包合成的,當(dāng)OVF包為多個(gè)時(shí),優(yōu)先部署各個(gè)OVF包內(nèi)的放置策略;當(dāng)各個(gè)OVF包內(nèi)的放置策略完成部署時(shí),部署各個(gè)OVF包之間的放置策略。
[0111]下面通過具體的應(yīng)用實(shí)例對上述方法進(jìn)行描述。
[0112]實(shí)例I
[0113]圖7所示為高級別和低級別虛擬機(jī)集合都有放置策略時(shí)的部署方法示意圖。其中,預(yù)置條件:
[0114]I)虛擬機(jī)集合O包含虛擬機(jī)I和虛擬機(jī)2,虛擬機(jī)集合3和虛擬機(jī)集合4。
[0115]2)虛擬機(jī)集合3包含虛擬機(jī)31、虛擬機(jī)32、虛擬機(jī)33和虛擬機(jī)34
[0116]3)虛擬機(jī)集合4包含虛擬機(jī)41、虛擬機(jī)42、虛擬機(jī)43和虛擬機(jī)44。
[0117]4)虛擬機(jī)集合3的虛擬機(jī)31和虛擬機(jī)32之間設(shè)置了放置策略:親近關(guān)系,虛擬機(jī)33和虛擬機(jī)34之間設(shè)置了放置策略:可用關(guān)系。
[0118]5)虛擬機(jī)集合4的虛擬機(jī)41和虛擬機(jī)42之間設(shè)置了放置策略:親近關(guān)系,虛擬機(jī)43和虛擬機(jī)44之間設(shè)置了放置策略:可用關(guān)系。
[0119]6)虛擬機(jī)集合3和虛擬機(jī)集合4之間設(shè)置了放置策略:可用關(guān)系。
[0120]按深度優(yōu)先的放置原則,虛擬機(jī)集合3的虛擬機(jī)31和虛擬機(jī)32將部署在同一個(gè)主機(jī)上,虛擬機(jī)33和虛擬機(jī)34將分別部署在不同的主機(jī)上。虛擬機(jī)集合4的虛擬機(jī)41和虛擬機(jī)42將部署在同一個(gè)主機(jī)上,虛擬機(jī)43和虛擬機(jī)44將分別部署在不同的主機(jī)上。虛擬機(jī)集合3和虛擬機(jī)集合4按照可用關(guān)系要求在物理上不能重用主機(jī)資源。虛擬機(jī)集合O所包含的虛擬機(jī)I和虛擬機(jī)2可根據(jù)虛擬化平臺(tái)選擇合適的主機(jī)進(jìn)行部署。
[0121]圖中的主機(jī)編號只是虛擬化平臺(tái)選擇的一種部署方式:
[0122]虛擬機(jī)I部署在主機(jī)A上,虛擬機(jī)2部署在主機(jī)B上;
[0123]虛擬機(jī)集合3的虛擬機(jī)31和虛擬機(jī)32部署在主機(jī)C上,虛擬機(jī)33部署在主機(jī)D上,虛擬機(jī)34部署在主機(jī)E上;
[0124]虛擬機(jī)集合4的虛擬機(jī)41和虛擬機(jī)42部署在主機(jī)F上,虛擬機(jī)43部署在主機(jī)G上,虛擬機(jī)44部署在主機(jī)H上。
[0125]實(shí)例2
[0126]圖8所示為放置策略無法滿足,異常處理指示為調(diào)整放置策略繼續(xù)處理時(shí)的處理方法示意圖,該方法包括以下步驟:
[0127]步驟S802,虛擬資源管理器對主機(jī)資源池的資源進(jìn)行注冊,包括各個(gè)主機(jī)的已用資源,可用資源,資源類型等信息進(jìn)行注冊。
[0128]步驟S804,用戶發(fā)起OVF包部署請求,該OVF中的虛擬機(jī)集合包含嵌套的放置策略。
[0129]步驟S806,部署管理器對OVF包進(jìn)行解包,并向虛擬資源管理器發(fā)送資源分配請求,由虛擬資源管理器判斷目標(biāo)平臺(tái)能否提供OVF包所要求的資源。
[0130]步驟S808,虛擬資源管理器判斷虛擬機(jī)集合的某個(gè)放置策略組要求無法滿足,比如沒有足夠的主機(jī)滿足可用關(guān)系的虛擬機(jī)的部署,或者所有的主機(jī)上都沒有足夠的虛擬機(jī)能夠滿足親近關(guān)系的虛擬機(jī)集合的部署等。
[0131]步驟S810,虛擬資源管理器判斷放置策略異常處理指示,如果該放置策略組的支持調(diào)整和調(diào)整處理指示為繼續(xù)處理,或者該放置策略組沒有設(shè)置支持調(diào)整指示,而虛擬化平臺(tái)設(shè)置的放置策略異常處理指示為繼續(xù),則虛擬資源管理器調(diào)整該放置策略組的放置策略,直至從資源注冊信息里能夠找到滿足位置要求的資源。
[0132]步驟S812,可選的,如果該放置策略組的調(diào)整處理指示為繼續(xù)處理并通知用戶,或者該放置策略組沒有設(shè)置支持調(diào)整,而虛擬化平臺(tái)設(shè)置的放置策略異常處理指示為繼續(xù)處理并通知用戶,則虛擬資源管理器通過部署管理器通知用戶,該OVF包的放置策略組的放置策略已被調(diào)整及調(diào)整后的內(nèi)容。
[0133]步驟S814,虛擬資源管理器從主機(jī)資源池中調(diào)度OVF所需的資源,該資源滿足調(diào)整后的放置策略要求。
[0134]步驟S816,虛擬資源管理器通知部署管理器資源分配成功。
[0135]步驟S818,部署管理器通知用戶OVF包部署成功。
[0136]實(shí)例3
[0137]圖9所示為放置策略無法滿足,異常處理指示為懸置處理并與用戶交互時(shí)的處理方法示意圖,該方法包括以下步驟:
[0138]步驟S902?步驟S908,同圖8中步驟S802?步驟S808所描述。
[0139]步驟S910,虛擬資源管理器判斷放置策略異常處理指示,如果該放置策略組的支持調(diào)整和調(diào)整處理指示為懸置處理并等待用戶干預(yù),或者該放置策略組沒有設(shè)置支持調(diào)整指示,而虛擬化平臺(tái)設(shè)置的放置策略異常處理指示為懸置處理并等待用戶干預(yù),則虛擬資源管理器向部署管理器返回放置策略調(diào)整請求,其中攜帶建議的放置策略。
[0140]步驟S911,部署管理器向用戶返回放置策略調(diào)整請求,其中攜帶建議的放置策略。
[0141]步驟S913,用戶向部署管理器返回放置策略調(diào)整指示,其中攜帶的放置策略可以是建議的放置策略,也可以是用戶新設(shè)置的放置策略。
[0142]步驟S914,部署管理器向虛擬資源管理器返回放置策略調(diào)整指示。
[0143]步驟S916,虛擬資源管理器判斷根據(jù)用戶返回的放置策略能夠在虛擬化平臺(tái)上調(diào)度滿足要求的資源。
[0144]步驟S918,可選的,虛擬資源管理器向用戶返回放置策略調(diào)整確認(rèn)消息。
[0145]步驟S919,部署管理器向用戶轉(zhuǎn)發(fā)虛擬資源管理器發(fā)送的放置策略調(diào)整確認(rèn)消
肩、O
[0146]步驟S921?步驟S925,同圖8中步驟S814?步驟S818所描述。
[0147]實(shí)例4
[0148]圖10所示為放置策略無法滿足,異常處理指示為返回錯(cuò)誤并退出執(zhí)行時(shí)的處理方法示意圖,該方法包括以下步驟:
[0149]步驟S1002?步驟S1008,同圖8中步驟S802?步驟S808所描述。
[0150]步驟S1010,虛擬資源管理器判斷放置策略異常處理指示,如果該放置策略組不支持調(diào)整,或者該放置策略組沒有設(shè)置支持調(diào)整指示,而虛擬化平臺(tái)設(shè)置的放置策略異常處理指示為返回錯(cuò)誤并退出處理,則虛擬資源管理器向部署管理器返回資源申請響應(yīng),其中攜帶失敗原因?yàn)榉胖貌呗詿o法滿足。
[0151]步驟S1012,部署管理器向用戶返回OVF包部署響應(yīng),其中攜帶失敗原因?yàn)榉胖貌呗詿o法滿足。
[0152]實(shí)例5[0153]圖11所示為虛擬化平臺(tái)部署具有嵌套放置策略的虛擬機(jī)集合時(shí)的處理方法示意圖,該方法包括以下步驟:
[0154]步驟SI 101,用戶請求目標(biāo)虛擬化平臺(tái)部署OVF包,其中OVF中的虛擬系統(tǒng)集合包含嵌套的放置策略。
[0155]步驟S1102,虛擬化平臺(tái)根據(jù)深度優(yōu)先的原則和當(dāng)前主機(jī)資源池的可用資源情況,對包含嵌套放置策略的虛擬系統(tǒng)集合按照深度優(yōu)先的原則進(jìn)行部署。
[0156]步驟S1103,虛擬化平臺(tái)在無法滿足虛擬機(jī)集合的放置策略要求時(shí),要能夠根據(jù)配置對放置策略進(jìn)行動(dòng)態(tài)調(diào)整,包括調(diào)整后繼續(xù),懸置處理并與用戶交互、返回錯(cuò)誤并退出執(zhí)行等。
[0157]實(shí)例6
[0158]圖12所示為在合成OVF包內(nèi),OVF包之間和OVF包內(nèi)都有放置策略的部署方法示意圖。其中,預(yù)置條件如下:
[0159]I)合成OVF包內(nèi)包含3個(gè)OVF包:0VF包1、OVF包2和OVF包3。
[0160]2) OVF包I包含虛擬機(jī)11和虛擬機(jī)12。
[0161]3) OVF包2包含虛擬機(jī)集合21和虛擬機(jī)集合22,虛擬機(jī)集合21包含虛擬機(jī)211和虛擬機(jī)212,虛擬機(jī)集合22包含虛擬機(jī)221和虛擬機(jī)222。
[0162]4) OVF包3包含虛擬機(jī)集合31和虛擬機(jī)集合32,虛擬機(jī)集合31包含虛擬機(jī)311和虛擬機(jī)312,虛擬機(jī)集合32包含虛擬機(jī)321和虛擬機(jī)322。
[0163]5) OVF包I內(nèi)虛擬機(jī)11和虛擬機(jī)12沒有放置策略;
[0164]6) OVF包2內(nèi)虛擬機(jī)集合21內(nèi)的虛擬機(jī)211和虛擬機(jī)212之間沒有設(shè)置放置策略,虛擬機(jī)集合22內(nèi)的虛擬機(jī)221和虛擬機(jī)222之間設(shè)置了放置策略:可用關(guān)系。虛擬機(jī)集合21和虛擬機(jī)集合22之間設(shè)置了放置策略:可用關(guān)系。
[0165]7)0VF包3內(nèi)虛擬機(jī)集合31內(nèi)的虛擬機(jī)311和虛擬機(jī)312之間設(shè)置放置策略:親近關(guān)系,虛擬機(jī)集合32內(nèi)的虛擬機(jī)321和虛擬機(jī)322之間設(shè)置了放置策略:可用關(guān)系。虛擬機(jī)集合31和虛擬機(jī)集合32之間設(shè)置了放置策略:親近關(guān)系。
[0166]8) OVF包1、OVF包2和OVF包3之間設(shè)置了放置策略:可用關(guān)系。
[0167]按深度優(yōu)先的放置原則:
[0168]I) OVF包I內(nèi)的虛擬機(jī)11和虛擬機(jī)12將應(yīng)用OVF包級別的放置策略,則虛擬機(jī)11和虛擬機(jī)12分別部署在不同的主機(jī)上。
[0169]2)0VF包2內(nèi)的虛擬機(jī)集合21沒有設(shè)置放置策略,虛擬機(jī)211和虛擬機(jī)212將應(yīng)用OVF包級別的放置策略,則虛擬機(jī)211和虛擬機(jī)212分別部署在不同的主機(jī)上。虛擬機(jī)集合22內(nèi)的虛擬機(jī)221和虛擬機(jī)222將部署在不同主機(jī)上。虛擬機(jī)集合21和虛擬機(jī)集合22按照可用關(guān)系要求在物理上不能重用主機(jī)資源。
[0170]3) OVF包3內(nèi)的虛擬機(jī)集合31內(nèi)的虛擬機(jī)311和虛擬機(jī)312將部署在同一個(gè)主機(jī)上,虛擬機(jī)集合32內(nèi)的虛擬機(jī)321和虛擬機(jī)322將分別部署在不同的主機(jī)上。虛擬機(jī)集合31和虛擬機(jī)集合32按照親近關(guān)系要求在物理上可重用主機(jī)資源,這里假定虛擬機(jī)321與虛擬機(jī)集合31部署在同一個(gè)主機(jī)上。
[0171]圖中的主機(jī)編號只是虛擬化平臺(tái)選擇的一種部署方式:
[0172]OVF包I內(nèi)的虛擬機(jī)11部署在主機(jī)A上,虛擬機(jī)12部署在主機(jī)B上。[0173]OVF包2內(nèi)的虛擬機(jī)集合21內(nèi)的虛擬機(jī)211部署在主機(jī)C上,虛擬機(jī)212部署在主機(jī)D上,虛擬機(jī)集合22內(nèi)的虛擬機(jī)221部署在主機(jī)E上,虛擬機(jī)222部署在主機(jī)F上。
[0174]OVF包3內(nèi)的虛擬機(jī)集合31內(nèi)的虛擬機(jī)311,虛擬機(jī)312和虛擬機(jī)集合32內(nèi)的虛擬機(jī)321部署在主機(jī)G上,虛擬機(jī)集合32內(nèi)的虛擬機(jī)322部署在主機(jī)H上。
[0175]對應(yīng)于上述方法,本發(fā)明實(shí)施例還提供了一種虛擬機(jī)集合的部署裝置,該裝置可以設(shè)置在虛擬資源管理器中,如圖13所示的虛擬機(jī)集合的部署裝置的結(jié)構(gòu)框圖,該裝置包括以下模塊:
[0176]信息接收模塊132,用于接收OVF包的放置策略信息;
[0177]放置策略類型判斷模塊134,與信息接收模塊132相連,用于根據(jù)信息接收模塊132接收的放置策略信息判斷虛擬機(jī)集合的放置策略是否為嵌套式放置策略;
[0178]部署模塊136,與放置策略類型判斷模塊134相連,用于如果放置策略類型判斷模塊判斷結(jié)果為是,采取放置策略深度優(yōu)先原則部署虛擬機(jī)集合,其中,該虛擬機(jī)集合根據(jù)上述嵌套式放置策略被劃分為多個(gè)級別,每個(gè)級別包含有虛擬機(jī)集合和/或虛擬機(jī),該放置策略深度優(yōu)先原則指部署虛擬機(jī)集合時(shí),按照級別由低到高的順序滿足虛擬機(jī)集合的放置策略。
[0179]本實(shí)施例的裝置采取放置策略深度優(yōu)先原則部署虛擬機(jī)集合,可以滿足嵌套式放置策略的需求,解決了相關(guān)技術(shù)中虛擬機(jī)集合的部署方式無法滿足用戶應(yīng)用部署需求的問題,增強(qiáng)了虛擬化平臺(tái)的部署能力。
[0180]根據(jù)實(shí)現(xiàn)應(yīng)用情況,部署模塊136可以采用下述多種方式實(shí)現(xiàn)。
[0181]例如:部署模塊136可以包括:放置策略查找單元,用于當(dāng)當(dāng)前級別的虛擬機(jī)集合和/或虛擬機(jī)沒有放置策略時(shí),查找該當(dāng)前級別的虛擬機(jī)的上一級別虛擬機(jī)集合是否有放置策略;策略傳遞單元,與放置策略查找單元相連,用于如果上述放置策略查找單元查找的結(jié)果為有,按照該當(dāng)前級別的虛擬機(jī)集合和/或虛擬機(jī)的上一級別虛擬機(jī)集合的放置策略部署當(dāng)前級別的虛擬機(jī)集合和/或虛擬機(jī)。
[0182]部署模塊136可以包括:第一異常處理單元,用于如果當(dāng)前的主機(jī)資源無法滿足虛擬機(jī)集合和/或虛擬機(jī)的放置策略的要求,根據(jù)預(yù)先設(shè)定的放置策略異常處理指示進(jìn)行處理,其中,該放置策略異常處理指示至少包括以下之一:不通知用戶并繼續(xù)處理、通知用戶并繼續(xù)處理、懸置處理并等待用戶干預(yù)、返回錯(cuò)誤并退出執(zhí)行。
[0183]部署模塊136可以包括:第一檢查單元,如果當(dāng)前的主機(jī)資源無法滿足虛擬機(jī)集合和/或虛擬機(jī)的放置策略的要求,檢查所述虛擬機(jī)集合和/或虛擬機(jī)所屬的放置策略組;其中,放置策略組包括:支持調(diào)整的指示和調(diào)整處理指示;第二異常處理單元,與第一檢查單元相連,用于當(dāng)?shù)谝粰z查單元的檢查結(jié)果為支持調(diào)整的指示為否,向用戶發(fā)送部署錯(cuò)誤通知,并退出部署操作;當(dāng)?shù)谝粰z查單元的檢查結(jié)果為支持調(diào)整的指示為是,按照上述調(diào)整處理指示進(jìn)行處理,其中,該調(diào)整處理指示至少包括以下之一:不通知用戶并繼續(xù)處理、通知用戶并繼續(xù)處理、懸置處理并等待用戶干預(yù)。
[0184]部署模塊136可以包括:第二檢查單元,用如果當(dāng)前的主機(jī)資源無法滿足虛擬機(jī)集合和/或虛擬機(jī)的放置策略的要求,檢查所述虛擬機(jī)集合和/或虛擬機(jī)所屬的放置策略組;其中,放置策略組包括:支持調(diào)整的指示和調(diào)整處理指示;調(diào)整處理指示至少包括以下之一:不通知用戶并繼續(xù)處理、通知用戶并繼續(xù)處理、懸置處理并等待用戶干預(yù);第三異常處理單元,與第二檢查單元相連,用于根據(jù)第二檢查單元的檢查結(jié)果,優(yōu)先為支持調(diào)整指示為否的放置策略組預(yù)置資源,然后按照調(diào)整處理指示對支持調(diào)整為是的放置策略組進(jìn)行處理。
[0185]部署模塊136可以包括:第三檢查單元,用于如果當(dāng)前的主機(jī)資源無法滿足虛擬機(jī)集合和/或虛擬機(jī)的放置策略的要求,檢查所述虛擬機(jī)集合和/或虛擬機(jī)所屬的放置策略組;第四異常處理單元,與第三檢查單元相連,用于如果第三檢查單元的檢查結(jié)果是放置策略組配置有支持調(diào)整的指示,按照支持調(diào)整的指示進(jìn)行處理;如果第三檢查單元的檢查結(jié)果是該放置策略組未配置支持調(diào)整的指示,而該放置策略組的上級策略組配置有支持調(diào)整的指示,按照與該放置策略組最接近的上級策略組配置的支持調(diào)整的指示進(jìn)行處理;如果第三檢查單元的檢查結(jié)果是該放置策略組及該放置策略組的上級策略組都未配置支持調(diào)整的指示,根據(jù)預(yù)先設(shè)定的放置策略異常處理指示進(jìn)行處理,其中,該放置策略異常處理指示至少包括以下之一:不通知用戶并繼續(xù)處理、通知用戶并繼續(xù)處理、懸置處理并等待用戶干預(yù)、返回錯(cuò)誤并退出執(zhí)行。
[0186]部署模塊136可以包括:0VF包處理單元,用于當(dāng)OVF包為多個(gè)時(shí),優(yōu)先部署各個(gè)OVF包內(nèi)的放置策略;當(dāng)各個(gè)OVF包內(nèi)的放置策略完成部署時(shí),部署各個(gè)OVF包之間的放置策略。
[0187]部署模塊136的具體部署方式,可以參考上述方法中的方式實(shí)現(xiàn),這里不再贅述。
[0188]從以上的描述中可以看出,本發(fā)明實(shí)施例采用放置策略深度優(yōu)先原則部署虛擬機(jī)集合,可以解決當(dāng)虛擬機(jī)集合及其子虛擬機(jī)集合和/或虛擬機(jī),和/或下級虛擬機(jī)集合和/或虛擬機(jī)都存在放置策略的情況下,虛擬化平臺(tái)如何為該虛擬機(jī)集合預(yù)留資源,并保證滿足放置策略的要求的問題,增強(qiáng)了系統(tǒng)的部署性能。
[0189]顯然,本領(lǐng)域的技術(shù)人員應(yīng)該明白,上述的本發(fā)明的各模塊或各步驟可以用通用的計(jì)算裝置來實(shí)現(xiàn),它們可以集中在單個(gè)的計(jì)算裝置上,或者分布在多個(gè)計(jì)算裝置所組成的網(wǎng)絡(luò)上,可選地,它們可以用計(jì)算裝置可執(zhí)行的程序代碼來實(shí)現(xiàn),從而,可以將它們存儲(chǔ)在存儲(chǔ)裝置中由計(jì)算裝置來執(zhí)行,并且在某些情況下,可以以不同于此處的順序執(zhí)行所示出或描述的步驟,或者將它們分別制作成各個(gè)集成電路模塊,或者將它們中的多個(gè)模塊或步驟制作成單個(gè)集成電路模塊來實(shí)現(xiàn)。這樣,本發(fā)明不限制于任何特定的硬件和軟件結(jié)合。
[0190]以上所述僅為本發(fā)明的優(yōu)選實(shí)施例而已,并不用于限制本發(fā)明,對于本領(lǐng)域的技術(shù)人員來說,本發(fā)明可以有各種更改和變化。凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。
【權(quán)利要求】
1.一種虛擬機(jī)集合的部署方法,其特征在于,包括: 接收開放虛擬格式OVF包的放置策略信息; 根據(jù)所述放置策略信息判斷虛擬機(jī)集合的放置策略是否為嵌套式放置策略; 如果是,采取放置策略深度優(yōu)先原則部署所述虛擬機(jī)集合,其中,所述虛擬機(jī)集合根據(jù)所述嵌套式放置策略被劃分為多個(gè)級別,每個(gè)級別包含有虛擬機(jī)集合和/或虛擬機(jī),所述放置策略深度優(yōu)先原則指部署所述虛擬機(jī)集合時(shí),按照級別由低到高的順序滿足所述虛擬機(jī)集合的放置策略。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,采取放置策略深度優(yōu)先原則部署所述虛擬機(jī)集合包括: 當(dāng)當(dāng)前級別的虛擬機(jī)集合和/或虛擬機(jī)沒有放置策略時(shí),查找所述當(dāng)前級別的虛擬機(jī)集合和/或虛擬機(jī)的上一級別虛擬機(jī)集合是否有放置策略,如果有,按照所述當(dāng)前級別的虛擬機(jī)集合和/或虛擬機(jī)的上一級別虛擬機(jī)集合的放置策略部署所述當(dāng)前級別的虛擬機(jī)集合和/或虛擬機(jī)。
3.根據(jù)權(quán)利 要求1所述的方法,其特征在于,采取放置策略深度優(yōu)先原則部署所述虛擬機(jī)集合包括: 如果當(dāng)前的主機(jī)資源無法滿足所述虛擬機(jī)集合和/或虛擬機(jī)的放置策略的要求,根據(jù)預(yù)先設(shè)定的放置策略異常處理指示進(jìn)行處理,其中,所述放置策略異常處理指示至少包括以下之一:不通知用戶并繼續(xù)處理、通知用戶并繼續(xù)處理、懸置處理并等待用戶干預(yù)、返回錯(cuò)誤并退出執(zhí)行。
4.根據(jù)權(quán)利要求3所述的方法,其特征在于,根據(jù)預(yù)先設(shè)定的放置策略異常處理指示進(jìn)行處理包括: 當(dāng)所述放置策略異常處理指示為所述不通知用戶并繼續(xù)處理或所述通知用戶并繼續(xù)處理時(shí),調(diào)整所述虛擬機(jī)集合和/或虛擬機(jī)的放置策略,直至所述當(dāng)前的主機(jī)資源能夠滿足調(diào)整后的所述放置策略為止。
5.根據(jù)權(quán)利要求3所述的方法,其特征在于,根據(jù)預(yù)先設(shè)定的放置策略異常處理指示進(jìn)行處理包括: 當(dāng)所述放置策略異常處理指示為所述懸置處理并等待用戶干預(yù)時(shí),向所述用戶發(fā)送建議的放置策略; 根據(jù)所述用戶反饋的確認(rèn)消息或者所述用戶反饋的新的放置策略進(jìn)行處理。
6.根據(jù)權(quán)利要求1所述的方法,其特征在于,采取放置策略深度優(yōu)先原則部署所述虛擬機(jī)包括: 如果當(dāng)前的主機(jī)資源無法滿足所述虛擬機(jī)集合和/或虛擬機(jī)的放置策略的要求,檢查所述虛擬機(jī)集合和/或虛擬機(jī)所屬的放置策略組;其中,所述放置策略組包括:支持調(diào)整的指示和調(diào)整處理指示; 當(dāng)所述支持調(diào)整的指示為否,向用戶發(fā)送部署錯(cuò)誤通知,并退出部署操作; 當(dāng)所述支持調(diào)整的指示為是,按照所述調(diào)整處理指示進(jìn)行處理,其中,所述調(diào)整處理指示至少包括以下之一:不通知用戶并繼續(xù)處理、通知用戶并繼續(xù)處理、懸置處理并等待用戶干預(yù)。
7.根據(jù)權(quán)利要求1所述的方法,其特征在于,采取放置策略深度優(yōu)先原則部署所述虛擬機(jī)集合包括: 如果當(dāng)前的主機(jī)資源無法滿足所述虛擬機(jī)集合和/或虛擬機(jī)的放置策略的要求,檢查所述虛擬機(jī)集合和/或虛擬機(jī)所屬的放置策略組;其中,所述放置策略組包括:支持調(diào)整的指示和調(diào)整處理指示;所述調(diào)整處理指示至少包括以下之一:不通知用戶并繼續(xù)處理、通知用戶并繼續(xù)處理、懸置處理并等待用戶干預(yù); 優(yōu)先為所述支持調(diào)整指示為否的放置策略組預(yù)置資源,然后按照所述調(diào)整處理指示對所述支持調(diào)整為是的放置策略組進(jìn)行處理。
8.根據(jù)權(quán)利要求1所述的方法,其特征在于,采取放置策略深度優(yōu)先原則部署所述虛擬機(jī)集合包括: 如果當(dāng)前的主機(jī)資源無法滿足所述虛擬機(jī)集合和/或虛擬機(jī)的放置策略的要求,檢查所述虛擬機(jī)集合和/或虛擬機(jī)所屬的放置策略組; 如果所述放置策略組配置有支持調(diào)整的指示,按照所述支持調(diào)整的指示進(jìn)行處理; 如果所述放置策略組未配置支持調(diào)整的指示,而所述放置策略組的上級策略組配置有支持調(diào)整的指示,按照與所述放置策略組最接近的上級策略組配置的支持調(diào)整的指示進(jìn)行處理; 如果所述放置策略組及所述放置策略組的上級策略組都未配置支持調(diào)整的指示,根據(jù)預(yù)先設(shè)定的放置策略異常處理指示進(jìn)行處理,其中,所述放置策略異常處理指示至少包括以下之一:不通知用戶并繼續(xù)處理、通知用戶并繼續(xù)處理、懸置處理并等待用戶干預(yù)、返回錯(cuò)誤并退出執(zhí)行。
9.根據(jù)權(quán)利要求8所述的方法,其特征在于,根據(jù)預(yù)先設(shè)定的放置策略異常處理指示進(jìn)行處理包括: 如果所述放置策略異常處理指示為空,按照系統(tǒng)默認(rèn)方式進(jìn)行處理。
10.根據(jù)權(quán)利要求1所述的方法,其特征在于,采取放置策略深度優(yōu)先原則部署所述虛擬機(jī)集合包括: 當(dāng)所述OVF包為多個(gè)時(shí),優(yōu)先部署各個(gè)OVF包內(nèi)的放置策略; 當(dāng)所述各個(gè)OVF包內(nèi)的放置策略完成部署時(shí),部署各個(gè)OVF包之間的放置策略。
11.一種虛擬機(jī)集合的部署裝置,其特征在于,包括: 信息接收模塊,用于接收開放虛擬格式OVF包的放置策略信息; 放置策略類型判斷模塊,用于根據(jù)所述信息接收模塊接收的所述放置策略信息判斷虛擬機(jī)集合的放置策略是否為嵌套式放置策略; 部署模塊,用于如果所述放置策略類型判斷模塊判斷結(jié)果為是,采取放置策略深度優(yōu)先原則部署所述虛擬機(jī)集合,其中,所述虛擬機(jī)集合根據(jù)所述嵌套式放置策略被劃分為多個(gè)級別,每個(gè)級別包含有虛擬機(jī)集合和/或虛擬機(jī);所述放置策略深度優(yōu)先原則指部署所述虛擬機(jī)集合時(shí),按照級別由低到高的順序滿足所述虛擬機(jī)集合的放置策略。
12.根據(jù)權(quán)利要求11所述的裝置,其特征在于,所述部署模塊包括: 放置策略查找單元,用于當(dāng)當(dāng)前級別的虛擬機(jī)集合和/或虛擬機(jī)沒有放置策略時(shí),查找所述當(dāng)前級別的虛擬機(jī)集合和/或虛擬機(jī)的上一級別虛擬機(jī)集合是否有放置策略;策略傳遞單元,用于如果所述放置策略查找單元查找的結(jié)果為有,按照所述當(dāng)前級別的虛擬機(jī)集合和/或虛擬機(jī)的上一級別虛擬機(jī)集合的放置策略部署所述當(dāng)前級別的虛擬機(jī)集合和/或虛擬機(jī)。
13.根據(jù)權(quán)利要求11所述的裝置,其特征在于,所述部署模塊包括: 第一異常處理單元,用于如果當(dāng)前的主機(jī)資源無法滿足所述虛擬機(jī)集合和/或虛擬機(jī)的放置策略的要求,根據(jù)預(yù)先設(shè)定的放置策略異常處理指示進(jìn)行處理,其中,所述放置策略異常處理指示至少包括以下之一:不通知用戶并繼續(xù)處理、通知用戶并繼續(xù)處理、懸置處理并等待用戶干預(yù)、返回錯(cuò)誤并退出執(zhí)行。
14.根據(jù)權(quán)利要求11所述的裝置,其特征在于,所述部署模塊包括: 第一檢查單元,如果當(dāng)前的主機(jī)資源無法滿足所述虛擬機(jī)集合和/或虛擬機(jī)的放置策略的要求,檢查所述虛擬機(jī)集合和/或虛擬機(jī)所屬的放置策略組;其中,所述放置策略組包括:支持調(diào)整的指示和調(diào)整處理指示; 第二異常處理單元,用于當(dāng)所述第一檢查單元的檢查結(jié)果為所述支持調(diào)整的指示為否,向用戶發(fā)送部署錯(cuò)誤通知,并退出部署操作;當(dāng)所述第一檢查單元的檢查結(jié)果為所述支持調(diào)整的指示為是,按照所述調(diào)整處理指示進(jìn)行處理,其中,所述調(diào)整處理指示至少包括以下之一:不通知用戶并繼續(xù)處理、通知用戶并繼續(xù)處理、懸置處理并等待用戶干預(yù)。
15.根據(jù)權(quán)利要求11所述的裝置,其特征在于,所述部署模塊包括: 第二檢查單元,用于如果當(dāng)前的主機(jī)資源無法滿足所述虛擬機(jī)集合和/或虛擬機(jī)的放置策略的要求,檢查所述虛擬機(jī)集合和/或所屬的放置策略組;其中,所述放置策略組包括:支持調(diào)整的指示和調(diào)整處理指示;所述調(diào)整處理指示至少包括以下之一:不通知用戶并繼續(xù)處理、通知用戶并 繼續(xù)處理、懸置處理并等待用戶干預(yù); 第三異常處理單元,用于根據(jù)所述第二檢查單元的檢查結(jié)果,優(yōu)先為所述支持調(diào)整指示為否的放置策略組預(yù)置資源,然后按照所述調(diào)整處理指示對所述支持調(diào)整為是的放置策略組進(jìn)行處理。
16.根據(jù)權(quán)利要求11所述的裝置,其特征在于,所述部署模塊包括: 第三檢查單元,用于如果當(dāng)前的主機(jī)資源無法滿足所述虛擬機(jī)集合和/或虛擬機(jī)的放置策略的要求,檢查所述虛擬機(jī)集合和/或虛擬機(jī)所屬的放置策略組; 第四異常處理單元,用于如果所述第三檢查單元的檢查結(jié)果是所述放置策略組配置有支持調(diào)整的指示,按照所述支持調(diào)整的指示進(jìn)行處理;如果所述第三檢查單元的檢查結(jié)果是所述放置策略組未配置支持調(diào)整的指示,而所述放置策略組的上級策略組配置有支持調(diào)整的指示,按照與所述放置策略組最接近的上級策略組配置的支持調(diào)整的指示進(jìn)行處理;如果所述第三檢查單元的檢查結(jié)果是所述放置策略組及所述放置策略組的上級策略組都未配置支持調(diào)整的指示,根據(jù)預(yù)先設(shè)定的放置策略異常處理指示進(jìn)行處理,其中,所述放置策略異常處理指示至少包括以下之一:不通知用戶并繼續(xù)處理、通知用戶并繼續(xù)處理、懸置處理并等待用戶干預(yù)、返回錯(cuò)誤并退出執(zhí)行。
17.根據(jù)權(quán)利要求11所述的裝置,其特征在于,所述部署模塊包括: OVF包處理單元,用于當(dāng)所述OVF包為多個(gè)時(shí),優(yōu)先部署各個(gè)OVF包內(nèi)的放置策略;當(dāng)所述各個(gè)OVF包內(nèi)的放置策略完成部署時(shí),部署各個(gè)OVF包之間的放置策略。
【文檔編號】G06F9/455GK104035808SQ201310067737
【公開日】2014年9月10日 申請日期:2013年3月4日 優(yōu)先權(quán)日:2013年3月4日
【發(fā)明者】楚俊生, 顧忠禹, 丁兆明, 高洪 申請人:中興通訊股份有限公司