本發(fā)明涉及云計算技術(shù),尤指一種管理虛擬機批量遷移的方法和裝置。
背景技術(shù):
在云計算時代,虛擬機作為數(shù)據(jù)中心資源或服務(wù)的最終載體,其穩(wěn)定性一直是數(shù)據(jù)中心運維或管理人員最為關(guān)注的問題。虛擬機的高效遷移是衡量數(shù)據(jù)中心穩(wěn)定性和服務(wù)可持續(xù)性的重要指標(biāo)之一。
如何高效的實現(xiàn)虛擬機的高效、批量遷移,保障其上運行業(yè)務(wù)的穩(wěn)定,也是衡量云計算操作系統(tǒng)功能的重要指標(biāo)。目前業(yè)界的虛擬機批量遷移方法大多數(shù)只關(guān)注于被遷移虛擬機與遷移目的主機之間的資源滿足度,從而不能滿足與業(yè)務(wù)之間的適配,造成遷移操作盲目、低效的問題。因此,如何高效準(zhǔn)確地進行虛擬機批量遷移進行管理是亟待解決的問題。
技術(shù)實現(xiàn)要素:
為了解決上述技術(shù)問題,本發(fā)明提供了一種管理虛擬機批量遷移的方法和裝置,能夠高效準(zhǔn)確地進行虛擬機批量遷移進行管理。
為了達到本發(fā)明目的,本發(fā)明提供了一種管理虛擬機批量遷移的方法,包括:
接收虛擬機批量遷移任務(wù)包,其中所述任務(wù)包包括至少兩個虛擬機的遷移任務(wù);獲取所述任務(wù)包中虛擬機的資源配置信息和虛擬機處理的業(yè)務(wù)信息;根據(jù)所述虛擬機的資源配置信息和虛擬機處理的業(yè)務(wù)信息,計算所述虛擬機遷移的處理優(yōu)先度;對所述處理優(yōu)先度進行排序;根據(jù)排序后的處理優(yōu)先度,依次處理虛擬機遷移任務(wù)。
其中,所述虛擬機的資源配置信息包括cpu、內(nèi)存和存儲的資源配置信息中至少一個。
其中,所述虛擬機處理的業(yè)務(wù)信息包括述虛擬機處理的任務(wù)類型以及所述任務(wù)的重要度。
其中,根據(jù)所述虛擬機的資源配置信息和虛擬機處理的業(yè)務(wù)信息,計算所述虛擬機遷移的處理優(yōu)先度,包括:
對cpu、內(nèi)存、存儲和業(yè)務(wù)中的至少兩個進行加權(quán)計算,得到所述虛擬機遷移的處理優(yōu)先度。
其中,所述根據(jù)排序后的處理優(yōu)先度,依次處理虛擬機遷移任務(wù),包括:
根據(jù)所述虛擬機的資源配置信息,為所述虛擬機選擇提供所述資源配置信息的物理主機;將所述虛擬機遷移到所述物理主機。
一種管理虛擬機批量遷移的裝置,包括:
接收模塊,用于接收虛擬機批量遷移任務(wù)包,其中所述任務(wù)包包括至少兩個虛擬機的遷移任務(wù);獲取模塊,用于獲取所述任務(wù)包中虛擬機的資源配置信息和虛擬機處理的業(yè)務(wù)信息;計算模塊,用于根據(jù)所述虛擬機的資源配置信息和虛擬機處理的業(yè)務(wù)信息,計算所述虛擬機遷移的處理優(yōu)先度;排序模塊,用于對所述處理優(yōu)先度進行排序;
處理模塊,用于根據(jù)排序后的處理優(yōu)先度,依次處理虛擬機遷移任務(wù)。
其中,所述虛擬機的資源配置信息包括cpu、內(nèi)存和存儲的資源配置信息中至少一個。
其中,所述虛擬機處理的業(yè)務(wù)信息包括述虛擬機處理的任務(wù)類型以及所述任務(wù)的重要度。
其中,所述計算模塊,具體用于對cpu、內(nèi)存、存儲和業(yè)務(wù)中的至少兩個進行加權(quán)計算,得到所述虛擬機遷移的處理優(yōu)先度。
其中,所述處理模塊包括:
選擇單元,用于根據(jù)所述虛擬機的資源配置信息,為所述虛擬機選擇提供所述資源配置信息的物理主機;遷移單元,用于將所述虛擬機遷移到所述物理主機。
本發(fā)明提供的實施例,通過讀取虛擬機的配置和其業(yè)務(wù)重要性信息對虛擬機遷移任務(wù)包中的虛擬機調(diào)度任務(wù)進行重新排序、下發(fā)并執(zhí)行,在保障云數(shù)據(jù)中心資源和業(yè)務(wù)穩(wěn)定性的前提下,實現(xiàn)虛擬機高效、批量的遷移,提高云計算操作系統(tǒng)的競爭力。
本發(fā)明的其它特征和優(yōu)點將在隨后的說明書中闡述,并且,部分地從說明書中變得顯而易見,或者通過實施本發(fā)明而了解。本發(fā)明的目的和其他優(yōu)點可通過在說明書、權(quán)利要求書以及附圖中所特別指出的結(jié)構(gòu)來實現(xiàn)和獲得。
附圖說明
附圖用來提供對本發(fā)明技術(shù)方案的進一步理解,并且構(gòu)成說明書的一部分,與本申請的實施例一起用于解釋本發(fā)明的技術(shù)方案,并不構(gòu)成對本發(fā)明技術(shù)方案的限制。
圖1為本發(fā)明提供的管理虛擬機批量遷移的方法的流程圖;
圖2為本發(fā)明提供的基于配置和業(yè)務(wù)重要性進行虛擬機批量遷移的方法流程圖;
圖3為本發(fā)明提供的管理虛擬機批量遷移的裝置的結(jié)構(gòu)圖。
具體實施方式
為使本發(fā)明的目的、技術(shù)方案和優(yōu)點更加清楚明白,下文中將結(jié)合附圖對本發(fā)明的實施例進行詳細說明。需要說明的是,在不沖突的情況下,本申請中的實施例及實施例中的特征可以相互任意組合。
在附圖的流程圖示出的步驟可以在諸如一組計算機可執(zhí)行指令的計算機系統(tǒng)中執(zhí)行。并且,雖然在流程圖中示出了邏輯順序,但是在某些情況下,可以以不同于此處的順序執(zhí)行所示出或描述的步驟。
圖1為本發(fā)明提供的管理虛擬機批量遷移的方法的流程圖。圖1所示方法包括:
步驟101、接收虛擬機批量遷移任務(wù)包,其中所述任務(wù)包包括至少兩個虛擬機的遷移任務(wù);
步驟102、獲取所述任務(wù)包中虛擬機的資源配置信息和虛擬機處理的業(yè)務(wù)信息;
步驟103、根據(jù)所述虛擬機的資源配置信息和虛擬機處理的業(yè)務(wù)信息,計算所述虛擬機遷移的處理優(yōu)先度;
步驟104、對所述處理優(yōu)先度進行排序;
步驟105、根據(jù)排序后的處理優(yōu)先度,依次處理虛擬機遷移任務(wù)。
本發(fā)明提供的方法實施例,通過讀取虛擬機的配置和其業(yè)務(wù)重要性信息對虛擬機遷移任務(wù)包中的虛擬機調(diào)度任務(wù)進行重新排序、下發(fā)并執(zhí)行,在保障云數(shù)據(jù)中心資源和業(yè)務(wù)穩(wěn)定性的前提下,實現(xiàn)虛擬機高效、批量的遷移,提高云計算操作系統(tǒng)的競爭力。
下面對本發(fā)明提供的方法實施例作進一步說明:
虛擬機在執(zhí)行任務(wù)時,需要一定的硬件條件來支持虛擬機完成任務(wù)處理,而在虛擬機遷移時,虛擬機的硬件資源是必須要考慮的,因此,需要維護每個虛擬機的資源配置信息,包括但不限于硬件資源信息,例如cpu、內(nèi)存和存儲的資源配置信息中至少一個。
同時,在虛擬機發(fā)生遷移時,有些業(yè)務(wù)還要繼續(xù)進行處理,因此,為保證重要業(yè)務(wù)的及時處理,需要保證正在處理重要業(yè)務(wù)的虛擬機盡快完成遷移。因此,以虛擬機的標(biāo)識為識別標(biāo)識,記錄每個虛擬機處理的任務(wù),以及處理任務(wù)的重要性,以實時獲知虛擬機處理的業(yè)務(wù)信息。
不同的業(yè)務(wù)在云系統(tǒng)中的重要性時不同的,如實時計算、大數(shù)據(jù)服務(wù)、web信息查詢等,其重要性依次降低。當(dāng)然,也可以根據(jù)實際需要對業(yè)務(wù)進行劃分,并為該任務(wù)設(shè)置對應(yīng)的重要度。
例如,在實際應(yīng)用中,數(shù)據(jù)中心管理員維護數(shù)據(jù)中心內(nèi)的虛擬機與其上所運行的業(yè)務(wù)重要性程度的關(guān)系表,包含3個元素:虛擬機名-運行的業(yè)務(wù)信息-重要度,具體為:
[{‘vm1’,‘實時計算’,5},
{‘vm2’,‘大數(shù)據(jù)服務(wù)’,4}
……]。
由上可以看出,所述虛擬機處理的業(yè)務(wù)信息包括述虛擬機處理的任務(wù)類型以及所述任務(wù)的重要度。
因此,根據(jù)所述虛擬機的資源配置信息和虛擬機處理的業(yè)務(wù)信息,計算所述虛擬機遷移的處理優(yōu)先度,包括:
對cpu、內(nèi)存、存儲和業(yè)務(wù)中的至少兩個進行加權(quán)計算,得到所述虛擬機遷移的處理優(yōu)先度。
舉例來說,根據(jù)任務(wù)優(yōu)先度加權(quán)計算公式可以為d=cpu*20%+內(nèi)存*20%+存儲*20%+業(yè)務(wù)*40%。
其中,加權(quán)公式計算出的任務(wù)執(zhí)行優(yōu)先度就越大,在滿足數(shù)據(jù)中心資源有限和優(yōu)先保障重要性業(yè)務(wù)穩(wěn)定的條件下,必然需要優(yōu)先遷移該種類型的-任務(wù)優(yōu)先度大的虛擬機。
其中上述的權(quán)值可以根據(jù)實際情況進行動態(tài)調(diào)整,當(dāng)性能瓶頸為cpu時,可以調(diào)高cpu的權(quán)值,相反,可以調(diào)低cpu的權(quán)值。
根據(jù)排序后的處理優(yōu)先度,依次處理虛擬機遷移任務(wù),包括:
根據(jù)所述虛擬機的資源配置信息,為所述虛擬機選擇提供所述資源配置信息的物理主機;
將所述虛擬機遷移到所述物理主機。
圖2為本發(fā)明提供的基于配置和業(yè)務(wù)重要性進行虛擬機批量遷移的方法流程圖。圖2所示所示方法實施過程如下:
任務(wù)接收模塊:從云計算操作系統(tǒng)的操作頁面接收虛擬機批量遷移任務(wù)包;
任務(wù)分析模塊:依次讀取遷移任務(wù)包中的虛擬機信息,包含虛擬機配置信息(如cpu、內(nèi)存memory、存儲storage)和虛擬機關(guān)聯(lián)的業(yè)務(wù)(job)信息,然后根據(jù)任務(wù)優(yōu)先度加權(quán)計算公式d=cpu*20%+memory*20%+storage*20%+job*40%計算任務(wù)優(yōu)先度,并根據(jù)任務(wù)優(yōu)先度由大到小的順序重新構(gòu)遷移任務(wù)包
其中,虛擬機業(yè)務(wù)信息維護模塊負載維護虛擬機關(guān)聯(lián)業(yè)務(wù)重要性信息表,具體來講,不同的業(yè)務(wù)其(相對)重要性不同,如實時計算、大數(shù)據(jù)服務(wù)、web信息查詢等,其重要性依次降低。數(shù)據(jù)中心管理員維護數(shù)據(jù)中心內(nèi)的虛擬機與其上所運行的業(yè)務(wù)重要性程度的關(guān)系表,包含3個元素:虛擬機名-運行的業(yè)務(wù)信息-重要度,具體為:
[{‘vm1’,‘實時計算’,5},
{‘vm2’,‘大數(shù)據(jù)服務(wù)’,4}
……];
其中,任務(wù)優(yōu)先度越大,則最優(yōu)先執(zhí)行。對應(yīng)現(xiàn)實中的處理思路:當(dāng)虛擬機的配置越高、關(guān)聯(lián)業(yè)務(wù)的重要性越高,則加權(quán)公式計算出的任務(wù)執(zhí)行優(yōu)先度就越大,在滿足數(shù)據(jù)中心資源有限和優(yōu)先保障重要性業(yè)務(wù)穩(wěn)定的條件下,必然需要優(yōu)先遷移該種類型的-任務(wù)優(yōu)先度大的虛擬機。
任務(wù)下發(fā)模塊:獲取重新排序后的任務(wù)執(zhí)行包,并依據(jù)任務(wù)優(yōu)先度依次下發(fā)虛擬機遷移任務(wù)至調(diào)度模塊;
調(diào)度模塊:根據(jù)每個具體的虛擬機遷移任務(wù)中的配置,在數(shù)據(jù)中心資源池中調(diào)度選定目的物理主機;
例如,目的物理主機的資源配置滿足遷移所需的資源需求,如虛擬機的配置為cpu10g內(nèi)存10g磁盤50g,則目的物理主機上可用的cpu/內(nèi)存/磁盤必須得滿足其配置要求。
執(zhí)行模塊:對每一個虛擬機遷移任務(wù),根據(jù)選定的目的主機信息,執(zhí)行具體的遷移操作;
統(tǒng)計模塊:記錄虛擬機批量遷移操作的執(zhí)行結(jié)果,并進行匯總分析,如執(zhí)行成功與否、所耗時間、任務(wù)異常等信息展示;
日志模塊:主要記錄整個遷移操作中的用戶操作、遷移執(zhí)行、異常捕獲等操作日志,用于分析、定位、解決遷移過程中出現(xiàn)的問題。
本發(fā)明提供的方法實施例,通過虛擬機業(yè)務(wù)信息維護模塊維護虛擬機的配置和其業(yè)務(wù)重要性信息,由任務(wù)分析模塊對虛擬機遷移任務(wù)包中的虛擬機調(diào)度任務(wù)進行重新排序,再由任務(wù)下發(fā)模塊下發(fā),在保障云數(shù)據(jù)中心資源和業(yè)務(wù)穩(wěn)定性的前提下,實現(xiàn)虛擬機高效、批量的遷移,提高云計算操作系統(tǒng)的競爭力。
圖3為本發(fā)明提供的管理虛擬機批量遷移的裝置的結(jié)構(gòu)圖。圖3所示裝置包括:
接收模塊301,用于接收虛擬機批量遷移任務(wù)包,其中所述任務(wù)包包括至少兩個虛擬機的遷移任務(wù);
獲取模塊302,用于獲取所述任務(wù)包中虛擬機的資源配置信息和虛擬機處理的業(yè)務(wù)信息;
計算模塊303,用于根據(jù)所述虛擬機的資源配置信息和虛擬機處理的業(yè)務(wù)信息,計算所述虛擬機遷移的處理優(yōu)先度;
排序模塊304,用于對所述處理優(yōu)先度進行排序;
處理模塊305,用于根據(jù)排序后的處理優(yōu)先度,依次處理虛擬機遷移任務(wù)。
其中,所述虛擬機的資源配置信息包括cpu、內(nèi)存和存儲的資源配置信息中至少一個。
其中,所述虛擬機處理的業(yè)務(wù)信息包括述虛擬機處理的任務(wù)類型以及所述任務(wù)的重要度。
其中,所述計算模塊303,具體用于對cpu、內(nèi)存、存儲和業(yè)務(wù)中的至少兩個進行加權(quán)計算,得到所述虛擬機遷移的處理優(yōu)先度。
其中,所述處理模塊305包括:
選擇單元,用于根據(jù)所述虛擬機的資源配置信息,為所述虛擬機選擇提供所述資源配置信息的物理主機;
遷移單元,用于將所述虛擬機遷移到所述物理主機。
本發(fā)明提供的裝置實施例,通過讀取虛擬機的配置和其業(yè)務(wù)重要性信息對虛擬機遷移任務(wù)包中的虛擬機調(diào)度任務(wù)進行重新排序、下發(fā)并執(zhí)行,在保障云數(shù)據(jù)中心資源和業(yè)務(wù)穩(wěn)定性的前提下,實現(xiàn)虛擬機高效、批量的遷移,提高云計算操作系統(tǒng)的競爭力。
雖然本發(fā)明所揭露的實施方式如上,但所述的內(nèi)容僅為便于理解本發(fā)明而采用的實施方式,并非用以限定本發(fā)明。任何本發(fā)明所屬領(lǐng)域內(nèi)的技術(shù)人員,在不脫離本發(fā)明所揭露的精神和范圍的前提下,可以在實施的形式及細節(jié)上進行任何的修改與變化,但本發(fā)明的專利保護范圍,仍須以所附的權(quán)利要求書所界定的范圍為準(zhǔn)。