一種基于最優(yōu)化理論的虛擬機(jī)的資源調(diào)度遷移方法及系統(tǒng)的制作方法
【專利摘要】本發(fā)明公開了一種基于最優(yōu)化理論的虛擬機(jī)的資源調(diào)度遷移方法及系統(tǒng),本發(fā)明根據(jù)各個虛擬機(jī)的占用資源量,構(gòu)建虛擬機(jī)經(jīng)濟(jì)指標(biāo)取值區(qū)間,確定每個虛擬機(jī)的資源占用率;確定各個虛擬機(jī)的需要的最少占用資源,根據(jù)其建立占用資源最小閾值約束條件,建立虛擬環(huán)境下同一類資源的資源歸屬約束條件,確認(rèn)同一時間只有一個虛擬機(jī)在使用同一類資源;根據(jù)占用資源最小閾值約束條件和資源歸屬約束條件,求解資源占用率的最優(yōu)值,計(jì)算得到虛擬機(jī)和資源的占用關(guān)系,根據(jù)計(jì)算結(jié)果進(jìn)行虛擬機(jī)的資源的調(diào)度遷移,進(jìn)行資源的優(yōu)化分配,能夠?qū)崿F(xiàn)虛擬機(jī)調(diào)度遷移的經(jīng)濟(jì)性指標(biāo)、可靠性指標(biāo)和安全指標(biāo)的具體量化,確定最優(yōu)化的虛擬機(jī)調(diào)度遷移策略。
【專利說明】
一種基于最優(yōu)化理論的虛擬機(jī)的資源調(diào)度遷移方法及系統(tǒng)
技術(shù)領(lǐng)域
[0001 ]本發(fā)明涉及一種基于最優(yōu)化理論的虛擬機(jī)的資源調(diào)度迀移方法及系統(tǒng)。
【背景技術(shù)】
[0002]隨著計(jì)算機(jī)技術(shù)的快速發(fā)展,云計(jì)算逐漸興起,特別是虛擬化技術(shù),在提高應(yīng)用系統(tǒng)的可靠性的同時降低了運(yùn)維成本,被大型企事業(yè)單位廣泛采用。
[0003]作為虛擬化技術(shù)的核心,虛擬機(jī)調(diào)度迀移方案是否合適,則決定著應(yīng)用的安全、可靠和經(jīng)濟(jì)指標(biāo),而上述指標(biāo)的目標(biāo)并不是統(tǒng)一的,甚至存在互斥,例如可靠指標(biāo)要求盡量將虛擬機(jī)調(diào)度到資源空閑且穩(wěn)定性高的物理機(jī)上,做到虛擬機(jī)資源占用最大化;而經(jīng)濟(jì)性指標(biāo)則要求將盡量多的虛擬機(jī)調(diào)度到某一臺或者某幾臺虛擬機(jī)上,做到物理機(jī)資源最大化利用。如何綜合考慮上述指標(biāo)實(shí)現(xiàn)最優(yōu)化虛擬機(jī)調(diào)度迀移仍然缺少有效的方法,目前虛擬機(jī)調(diào)度迀移方案往往只考慮上述因素的一種,例如可靠性,不能兼顧多重指標(biāo)。因此急需一種虛擬機(jī)調(diào)度迀移方法,提供滿足安全、可靠和經(jīng)濟(jì)性最優(yōu)化虛擬機(jī)調(diào)度迀移策略。
【發(fā)明內(nèi)容】
[0004]本發(fā)明為了解決上述問題,提出了一種基于最優(yōu)化理論的虛擬機(jī)的資源調(diào)度迀移方法及系統(tǒng),本發(fā)明能夠?qū)崿F(xiàn)虛擬機(jī)調(diào)度迀移的經(jīng)濟(jì)性指標(biāo)、可靠性指標(biāo)和安全指標(biāo)的具體量化,確定最優(yōu)化的虛擬機(jī)調(diào)度迀移策略。
[0005]為了實(shí)現(xiàn)上述目的,本發(fā)明采用如下技術(shù)方案:
[0006]—種基于最優(yōu)化理論的虛擬機(jī)的資源調(diào)度迀移系統(tǒng),包括多個虛擬機(jī)、物理機(jī)和管理模塊,其中:
[0007]所述虛擬機(jī)共享物理機(jī)的物理資源,虛擬機(jī)和物理機(jī)的關(guān)系是多對多對應(yīng),一臺物理機(jī)資源供若干個虛擬機(jī)使用,一臺虛擬機(jī)也同時占用若干臺物理機(jī)的資源,所述管理模塊綜合監(jiān)控物理機(jī)的物理資源,根據(jù)每個虛擬機(jī)的資源需求、安全性和可靠性,為虛擬機(jī)分配物理資源,實(shí)現(xiàn)虛擬機(jī)的迀移調(diào)度。
[0008]所述物理資源包括具有計(jì)算資源、傳輸資源、存儲資源和輸入輸出資源四種資源。
[0009]所述所有物理機(jī)的資源形成整個資源池。
[0010]—種基于最優(yōu)化理論的虛擬機(jī)的資源調(diào)度迀移方法,包括以下步驟:
[0011](I)根據(jù)各個虛擬機(jī)的資源需求,構(gòu)建虛擬機(jī)經(jīng)濟(jì)指標(biāo)取值區(qū)間確定不同資源占用情況下的資源占用率得分;
[0012](2)確定各個虛擬機(jī)的需要的最少占用資源,根據(jù)其建立占用資源最小閾值約束條件;
[0013](3)建立虛擬環(huán)境下同一類資源的資源歸屬約束條件,確認(rèn)同一時間只有一個虛擬機(jī)在使用同一類資源;
[0014](4)根據(jù)占用資源最小閾值約束條件和資源歸屬約束條件,求解所有虛擬機(jī)的資源占用率總和的最優(yōu)值,計(jì)算得到各個虛擬機(jī)的資源的占用值,根據(jù)計(jì)算結(jié)果進(jìn)行虛擬機(jī)的資源的調(diào)度迀移,進(jìn)行資源的優(yōu)化分配。
[0015]所述步驟(I)中,資源占用率得分取值區(qū)間為連續(xù)且有界的,虛擬機(jī)的占用資源越高得分越高。
[0016]所述步驟(I)中,資源占用率是每個虛擬機(jī)的占用的物理資源與資源池中所有物理資源的比值。
[0017]所述步驟(2)中,確定各個虛擬機(jī)可靠運(yùn)行時所需要的最少資源,將其作為占用資源最小閾值,則相應(yīng)的占用資源最小閾值約束條件為各個虛擬機(jī)占用的資源需要大于等于其最小閾值。
[0018]所述步驟(3)中,需要確定安全性原則,即兩個或者多個虛擬機(jī)不能占用同一類資源。
[0019]所述步驟(4)中,以同時滿足占用資源最小閾值約束條件和資源歸屬約束條件為前提,計(jì)算所有虛擬機(jī)的資源占用率之和,求解使其最小。
[0020]所述步驟(4)中,按照所有虛擬機(jī)的資源占用率之和最小時的各個虛擬機(jī)的資源占用率,根據(jù)其對每個虛擬機(jī)的資源進(jìn)行迀移、調(diào)整。
[0021]優(yōu)選的,本發(fā)明中步驟(2)和步驟(3)可以互換,并不影響整體的優(yōu)化效果。
[0022]本發(fā)明的有益效果為:
[0023](I)綜合了經(jīng)濟(jì)性指標(biāo)、可靠性指標(biāo)和安全性指標(biāo),對其進(jìn)行量化,便于所有虛擬機(jī)的管理和衡量、評估;
[0024](2)以多種約束為前提,以物理資源占用量最小為優(yōu)化目標(biāo),建立優(yōu)化模型,求解得到最優(yōu)解,使得在滿足各個虛擬機(jī)的穩(wěn)定運(yùn)行的前提下,進(jìn)一步提到效率和資源的合理化安排、調(diào)度;
[0025](3)本發(fā)明的優(yōu)化方法可以進(jìn)一步應(yīng)用到云計(jì)算中虛擬機(jī)的旁路攻擊防范、網(wǎng)絡(luò)資源的高效分配與利用、虛擬機(jī)的配置與優(yōu)化等多個應(yīng)用領(lǐng)域,有助于虛擬化技術(shù)的發(fā)展。
【附圖說明】
[0026]圖1為本發(fā)明的系統(tǒng)結(jié)構(gòu)不意圖;
[0027]圖2為本發(fā)明的流程示意圖。
【具體實(shí)施方式】
:
[0028]下面結(jié)合附圖與實(shí)施例對本發(fā)明作進(jìn)一步說明。
[0029]為了滿足節(jié)能的需求,虛擬機(jī)調(diào)度算法一般采用集中的策略,將虛擬機(jī)盡可能集中在有限的物理服務(wù)器上,關(guān)閉空閑的服務(wù)器,從而降低能耗。
[0030]但是負(fù)載集中也會影響性能方面。因?yàn)樵谠朴?jì)算環(huán)境中,不同虛擬機(jī)之間共享宿主機(jī)的資源。因此,負(fù)載集中的同時也應(yīng)當(dāng)根據(jù)性能需求適當(dāng)分散負(fù)載,避免負(fù)載過度集中而影響性能。
[0031]這幾個指標(biāo)是相互牽制和影響的,安全檢測機(jī)制在一定程度上造成性能的損耗,同時在虛擬機(jī)放置策略中引入安全信任級別也在一定程度上增加了放置算法的復(fù)雜度,從而影響云計(jì)算整體性能。因此需要綜合考慮虛擬機(jī)放置問題中的性能,能耗和安全三個方面因素。
[0032]如圖1所示,一種虛擬化資源池系統(tǒng),它包括物理資源和虛擬機(jī)、管理主機(jī)。
[0033]所述物理資源包括具有計(jì)算資源、傳輸資源、存儲資源和輸入輸出資源四種資源,在虛擬化資源池的資源是共享的,可以供虛擬機(jī)共同使用。
[0034]所有物理機(jī)的資源形成資源池。
[0035]本發(fā)明用J={jr" jn}、c= {cr"cn}、S= {sr"sn}、I = {ii‘"in}分別表示資源池的計(jì)算資源、傳輸資源、存儲資源和輸入輸出資源,其中別表示虛擬機(jī)I的計(jì)算資源、傳輸資源、存儲資源和輸入輸出資源。
[0036]所述虛擬機(jī)是運(yùn)行在物理資源上的邏輯服務(wù)器,共享物理機(jī)上的計(jì)算資源、傳輸資源、存儲資源和輸入輸出資源,虛擬機(jī)和物理機(jī)的關(guān)系是多對多的關(guān)系,即一臺物理機(jī)資源可以供多個虛擬機(jī)使用,一臺虛擬機(jī)可以占用多臺物理機(jī)的資源。對于任意一臺虛擬機(jī)Χι,用O(Xi) = {j1、c1、s1、ii}表示虛擬機(jī)Xi的資源占用情況。
[0037]所述管理主機(jī)能夠綜合監(jiān)控物理資源,并且能夠?yàn)樘摂M機(jī)分配物理資源,實(shí)現(xiàn)虛擬機(jī)的迀移調(diào)度。
[0038]如圖2所示,基于最優(yōu)化理論的虛擬機(jī)調(diào)度迀移方法,具體步驟為:
[0039]步驟一:量化經(jīng)濟(jì)指標(biāo)。對于任意一個虛擬機(jī),其占用資源越多越有益。本發(fā)明用JJ(X1)表示該虛擬機(jī)占用一定資源后的經(jīng)濟(jì)指標(biāo)得分,其中該得分的取值區(qū)間是有界的和連續(xù)的,虛擬機(jī)&的占用資源越高得分越高,若&的占用資源池全部資源,則其得分最高,相反,若X1的不占用資源,則其得分最低;可以為虛擬機(jī)分配的資源多也可以為虛擬機(jī)分配的資源少,因此資源占用率不是一個確定的值。JJ(X1)與&的資源占用率成正比。
[0040]資源占用率是每個虛擬機(jī)的占用的物理資源與資源池中所有物理資源的比值。
[0041]步驟二:量化可靠性指標(biāo)。對于任意一個虛擬機(jī)X1,其可靠運(yùn)行與占用資源多少是有關(guān)系的。本發(fā)明用KK(X1)表示該虛擬機(jī)可靠運(yùn)行所需的最少資源,當(dāng)O(XO = KKU1)時虛擬機(jī)可靠運(yùn)行,反之運(yùn)行不可靠;
[0042]在此對可靠運(yùn)行所需的最少資源進(jìn)行詳細(xì)解釋,就是少于這些資源,這個虛擬機(jī)承載的應(yīng)用無法運(yùn)行,或者功能受限制。比如一個虛擬機(jī)承載的應(yīng)用是有上萬個用戶訪問,需要的帶寬至少1G,若分配不夠1G,那用戶體驗(yàn)就會受限。
[0043]步驟三:量化安全性指標(biāo)。虛擬環(huán)境下,出于安全性考慮,兩個或者多個虛擬機(jī)不能占用同一類資源,即0(紀(jì)叩(1)=0,其中1句_。
[0044]步驟四:迀移方案求解。綜合上述量化指標(biāo)就可以將虛擬機(jī)調(diào)度迀移轉(zhuǎn)化為最優(yōu)化求解的問題,即
[0045]MinIJJ(Xj)
[0046]約束條件:0(Xi)>= KK(Xi),0(Xi) HO(Xj)=O
[0047]管理主機(jī)計(jì)算上述最優(yōu)值就得到虛擬機(jī)和資源的占用關(guān)系。
[0048]資源占用率得分是一個有界的區(qū)間,分配越多得分越高,不是一個確定的值。計(jì)算資源可以近似看成是CPU分配,多分配一個CPU哪就會多一個單元耗電,經(jīng)濟(jì)性就會差,但是還得保障虛擬機(jī)能夠正常運(yùn)行,所以得至少分配他所需的最少資源。
[0049]步驟五:進(jìn)行虛擬機(jī)調(diào)度迀移。按照上述最優(yōu)化問題求解得到的結(jié)果,對每個虛擬機(jī)進(jìn)行資源分配。
[0050]在此步驟中,虛擬機(jī)的資源分配值小于資源池的總資源量,且虛擬機(jī)的資源分配值包括虛擬機(jī)的預(yù)留資源的分配值、資源上限的分配值,具體涵蓋了計(jì)算資源、傳輸資源、存儲資源和輸入輸出資源四種資源類型。
[0051]在解決上述問題后,可以基于解求得當(dāng)前最優(yōu)虛擬機(jī)迀移策略,得到當(dāng)前狀態(tài)下近最優(yōu)接,利用該最優(yōu)解指導(dǎo)多個虛擬機(jī)的放置、調(diào)度和資源配置,從而有效地兼顧安全,能耗和性能因素。
[0052]進(jìn)一步的,本發(fā)明的優(yōu)化方法可以進(jìn)一步應(yīng)用到云計(jì)算中虛擬機(jī)的旁路攻擊防范、網(wǎng)絡(luò)資源的高效分配與利用、虛擬機(jī)的配置與優(yōu)化等多個應(yīng)用領(lǐng)域。
[0053]上述雖然結(jié)合附圖對本發(fā)明的【具體實(shí)施方式】進(jìn)行了描述,但并非對本發(fā)明保護(hù)范圍的限制,所屬領(lǐng)域技術(shù)人員應(yīng)該明白,在本發(fā)明的技術(shù)方案的基礎(chǔ)上,本領(lǐng)域技術(shù)人員不需要付出創(chuàng)造性勞動即可做出的各種修改或變形仍在本發(fā)明的保護(hù)范圍以內(nèi)。
【主權(quán)項(xiàng)】
1.一種基于最優(yōu)化理論的虛擬機(jī)的資源調(diào)度迀移系統(tǒng),其特征是:包括多個虛擬機(jī)、物理機(jī)和管理模塊,其中: 所述虛擬機(jī)共享物理機(jī)的物理資源,虛擬機(jī)和物理機(jī)的關(guān)系是多對多的關(guān)系,一臺物理機(jī)資源供若干個虛擬機(jī)使用,一臺虛擬機(jī)也同時占用若干臺物理機(jī)的資源,所述管理模塊綜合監(jiān)控物理機(jī)的物理資源,根據(jù)每個虛擬機(jī)的資源需求、安全性和可靠性,為虛擬機(jī)分配物理資源,實(shí)現(xiàn)虛擬機(jī)的迀移調(diào)度。2.如權(quán)利要求1所述的一種基于最優(yōu)化理論的虛擬機(jī)的資源調(diào)度迀移系統(tǒng),其特征是:所述物理資源包括具有計(jì)算資源、傳輸資源、存儲資源和輸入輸出資源四種資源。3.如權(quán)利要求1所述的一種基于最優(yōu)化理論的虛擬機(jī)的資源調(diào)度迀移系統(tǒng),其特征是:所述所有物理機(jī)的資源形成整個資源池。4.一種基于最優(yōu)化理論的虛擬機(jī)的資源調(diào)度迀移方法,其特征是:包括以下步驟: (1)根據(jù)各個虛擬機(jī)的資源需求,構(gòu)建虛擬機(jī)經(jīng)濟(jì)指標(biāo)取值區(qū)間確定不同資源占用情況下的資源占用率得分; (2)確定各個虛擬機(jī)的需要的最少占用資源,根據(jù)其建立占用資源最小閾值約束條件; (3)建立虛擬環(huán)境下同一類資源的資源歸屬約束條件,確認(rèn)同一時間只有一個虛擬機(jī)在使用同一類資源; (4)根據(jù)占用資源最小閾值約束條件和資源歸屬約束條件,求解所有虛擬機(jī)的資源占用率總和的最優(yōu)值,計(jì)算得到各個虛擬機(jī)的資源的占用值,根據(jù)計(jì)算結(jié)果進(jìn)行虛擬機(jī)的資源的調(diào)度迀移,進(jìn)行資源的優(yōu)化分配。5.如權(quán)利要求4所述的一種基于最優(yōu)化理論的虛擬機(jī)的資源調(diào)度迀移方法,其特征是:所述步驟(I)中,資源占用率的得分取值區(qū)間為連續(xù)且有界的,虛擬機(jī)的占用資源越高得分越尚。6.如權(quán)利要求4所述的一種基于最優(yōu)化理論的虛擬機(jī)的資源調(diào)度迀移方法,其特征是:所述步驟(I)中,資源占用率是每個虛擬機(jī)的占用的物理資源與資源池中所有物理資源的比值。7.如權(quán)利要求4所述的一種基于最優(yōu)化理論的虛擬機(jī)的資源調(diào)度迀移方法,其特征是:所述步驟(2)中,確定各個虛擬機(jī)可靠運(yùn)行時所需要的最少資源,將其作為占用資源最小閾值,則相應(yīng)的占用資源最小閾值約束條件為各個虛擬機(jī)占用的資源需要大于等于其最小閾值。8.如權(quán)利要求4所述的一種基于最優(yōu)化理論的虛擬機(jī)的資源調(diào)度迀移方法,其特征是:所述步驟(3)中,需要確定安全性原則,即兩個或者多個虛擬機(jī)不能占用同一類資源。9.如權(quán)利要求4所述的一種基于最優(yōu)化理論的虛擬機(jī)的資源調(diào)度迀移方法,其特征是:所述步驟(4)中,以同時滿足占用資源最小閾值約束條件和資源歸屬約束條件為前提,計(jì)算所有虛擬機(jī)的資源占用率之和,求解使其最小。10.如權(quán)利要求4所述的一種基于最優(yōu)化理論的虛擬機(jī)的資源調(diào)度迀移方法,其特征是:所述步驟(4)中,按照所有虛擬機(jī)的資源占用率之和最小時的各個虛擬機(jī)的資源占用率,根據(jù)其對每個虛擬機(jī)的資源進(jìn)行迀移、調(diào)整。
【文檔編號】G06F9/48GK105843678SQ201610153355
【公開日】2016年8月10日
【申請日】2016年3月17日
【發(fā)明人】李亮, 曲延盛
【申請人】國網(wǎng)山東省電力公司信息通信公司, 國家電網(wǎng)公司