資源復(fù)用的控制方法和裝置制造方法
【專利摘要】本發(fā)明實施例提供一種資源復(fù)用的控制方法和裝置,該方法包括:獲取虛擬機中各個虛擬中央處理器VCPU的資源使用信息;根據(jù)各個所述VCPU的資源使用信息,調(diào)整各個所述VCPU對資源的占用率;通過本發(fā)明實施例提供的資源復(fù)用的控制方法和裝置,適應(yīng)的調(diào)整虛擬機中各個VCPU對資源的占用率,即不改變虛擬機的狀態(tài)及規(guī)格,實現(xiàn)各個VCPU對資源的合理的分時復(fù)用。
【專利說明】資源復(fù)用的控制方法和裝置
【技術(shù)領(lǐng)域】
[0001]本發(fā)明實施例涉及云計算【技術(shù)領(lǐng)域】,尤其涉及一種資源復(fù)用的控制方法和裝置?!颈尘凹夹g(shù)】
[0002]一個物理服務(wù)器上承載了多個虛擬機,虛擬機可以有多個虛擬中央處理器(Virtual Central Processing Unit,簡稱:VCPU),多個VCPU可以共享物理服務(wù)器上的資源,如物理CPU中的核(core);而各個虛擬機中的各個VCPU和core之間是通過時間分片的原理進行調(diào)度的。例如:有兩個VCPU,分別為VCPUl和VCPU2,VCPUl占用IOOms后,進行切換,再由VCPU2占用100ms,再切換有VCPUl占用,如此循環(huán)反復(fù)。
[0003]而在現(xiàn)有技術(shù)中,為了實現(xiàn)物理服務(wù)器資源的分時復(fù)用,當一個時間段內(nèi)某些虛擬機不需要工作時,將這些不需要工作的虛擬機進行關(guān)機操作,從而將這些虛擬機占用的資源進行釋放;隨后,再將其他需要工作虛擬機進行開機操作,可占用上述釋放的資源,從而實現(xiàn)了物理服務(wù)器資源的分時復(fù)用;或者當一個時間段內(nèi)某些虛擬機工作負載較低時,將這些負載較低的虛擬機進行減少VCPU的操作(例如--從2個VCPU減少為I個VCPU),隨后,再將其他負載較高的虛擬機進行增加VCPU的操作(例如:從I個VCPU增加為2個VCPU),從而實現(xiàn)了物理服務(wù)器CPU資源的分時復(fù)用。
[0004]然而在采用上述方案實現(xiàn)物理服務(wù)器資源的分時復(fù)用時發(fā)現(xiàn),上述方案改變了虛擬機的狀態(tài)(如關(guān)閉虛擬機)或規(guī)格(如增減VCPU的數(shù)量);但這些改變是需要獲得一定的權(quán)限才可實現(xiàn),不便于及時的實現(xiàn)資源的分時復(fù)用;另外,增加或者減少VCPU,有可能會進行重啟的操作才能生效,導致業(yè)務(wù)的中斷,影響業(yè)務(wù)的實施。
【發(fā)明內(nèi)容】
[0005]本發(fā)明實施例提供一·種資源復(fù)用的控制方法和裝置,用于控制各個VCPU對資源的合理的分時復(fù)用。
[0006]第一方面,本發(fā)明實施例提供一種資源復(fù)用的控制方法,包括:
[0007]獲取虛擬機中各個虛擬中央處理器VCPU的資源使用信息;
[0008]根據(jù)各個所述VCPU的資源使用信息,調(diào)整各個所述VCPU對資源的占用率。
[0009]結(jié)合第一方面,在第一實施方式中,所述資源使用信息為資源的使用率,則所述獲取虛擬機中各個VCPU的資源使用信息,包括:
[0010]實時監(jiān)控所述虛擬機中各個所述VCPU對資源的使用率。
[0011]結(jié)合第一方面第一實施方式,在第二實施方式中,所述根據(jù)各個所述VCPU的資源使用信息,調(diào)整各個所述VCPU對資源的占用率,包括:
[0012]若第一時間段內(nèi)第一 VCPU對資源的使用率大于或等于第一預(yù)設(shè)閾值,將所述第一 VCPU對資源的占用時長由正常時長增加為加長時長;
[0013]在所述第一時間段之后,若第二時間段內(nèi)第一 VCPU對資源的使用率低于或等于第二預(yù)設(shè)閾值,將所述第一 VCPU對資源的占用時長由加長時長恢復(fù)為所述正常時長。[0014]結(jié)合第一方面第一實施方式,在第三實施方式中,所述根據(jù)各個所述VCPU的資源使用信息,調(diào)整各個所述VCPU對資源的占用率,包括:
[0015]若第一時間段內(nèi)第一 VCPU對資源的使用率小于或等于第三預(yù)設(shè)閾值,將所述第一 VCPU對資源的占用時長由正常時長減小為縮短時長;
[0016]在所述第一時間段之后,若第二時間段內(nèi)所述第一 VCPU對資源的使用率低于第四預(yù)設(shè)閾值,將所述第一 VCPU對資源的占用時長由所述縮短時長恢復(fù)為所述正常時長。
[0017]結(jié)合第一方面,在第四實施方式中,所述資源使用信息為資源的使用率,則所述獲取虛擬機中各個VCPU的資源使用信息,包括:
[0018]在預(yù)設(shè)周期內(nèi)監(jiān)控所述虛擬機的各個VCPU,獲取各個所述VCPU在各個時間段內(nèi)對資源的使用率;
[0019]則根據(jù)各個所述VCPU的資源使用信息,調(diào)整各個所述VCPU對資源的占用率,包括:
[0020]在當前時間段的起始時刻到來時,根據(jù)獲取的各個所述VCPU在當前時間段內(nèi)對資源的使用率,控制各個所述VCPU在所述當前時間段內(nèi)對資源的占用時間;所述虛擬機在所述當前時間段內(nèi)對資源的占用時間與所述當前時間段的比值和獲取的所述虛擬機在當前時間段內(nèi)對資源的使用率相對應(yīng)。
[0021]第二方面,本發(fā)明實施例提供一種資源復(fù)用的控制裝置,包括:
[0022]獲取模塊,用于獲取虛擬機中各個VCPU的資源使用信息;
[0023]處理模塊,用于根據(jù)各個所述VCPU的資源使用信息,調(diào)整各個所述VCPU對資源的占用率。
[0024]結(jié)合第二方面,在第一實施方式中,所述資源使用信息為資源的使用率,所述獲取模塊具體用于實時監(jiān)控所述虛擬機中各個所述VCPU對資源的使用率。
[0025]結(jié)合第二方面第一實施方式,在第二實施方式中,所述處理模塊具體用于若第一時間段內(nèi)第一 VCPU對資源的使用率大于或等于第一預(yù)設(shè)閾值,將所述第一 VCPU對資源的占用時長由正常時長增加為加長時長;
[0026]在所述第一時間段之后,若第二時間段內(nèi)第一 VCPU對資源的使用率低于或等于第二預(yù)設(shè)閾值,將所述第一 VCPU對資源的占用時長由加長時長恢復(fù)為所述正常時長。
[0027]結(jié)合第二方面第一實施方式,在第三實施方式中,所述處理模塊具體用于
[0028]若第一時間段內(nèi)第一 VCPU對資源的使用率小于或等于第三預(yù)設(shè)閾值,將所述第一 VCPU對資源的占用時長由正常時長減小為縮短時長;
[0029]在所述第一時間段之后,若第二時間段內(nèi)所述第一 VCPU對資源的使用率低于第四預(yù)設(shè)閾值,將所述第一 VCPU對資源的占用時長由所述縮短時長恢復(fù)為所述正常時長。
[0030]結(jié)合第二方面,在第四實施方式中,所述資源使用信息為資源的使用率,所述獲取模塊具體用于
[0031]在預(yù)設(shè)周期內(nèi)監(jiān)控所述虛擬機的各個VCPU,獲取各個所述VCPU在各個時間段內(nèi)對資源的使用率;
[0032]則所述處理模塊具體用于
[0033]在當前時間段的起始時刻到來時,根據(jù)獲取的各個所述VCPU在當前時間段內(nèi)對資源的使用率,控制各個所述VCPU在所述當前時間段內(nèi)對資源的占用時間;所述虛擬機在所述當前時間段內(nèi)對資源的占用時間與所述當前時間段的比值和獲取的所述虛擬機在當前時間段內(nèi)對資源的使用率相對應(yīng)。
[0034]本發(fā)明實施例提供的資源復(fù)用的控制方法和裝置,通過獲取的虛擬機中各個VCPU的資源使用信息,適應(yīng)的調(diào)整虛擬機中各個VCPU對資源的占用率,即不改變虛擬機的狀態(tài)及規(guī)格,實現(xiàn)各個VCPU對資源的合理的分時復(fù)用。
【專利附圖】
【附圖說明】
[0035]為了更清楚地說明本發(fā)明實施例中的技術(shù)方案,下面將對實施例描述中所需要使用的附圖作一簡單地介紹,顯而易見地,下面描述中的附圖是本發(fā)明的一些實施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動性的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
[0036]圖1為本發(fā)明資源復(fù)用的控制方法實施例一的流程圖;
[0037]圖2為本發(fā)明資源復(fù)用的控制方法實施例二的流程圖;
[0038]圖3為本發(fā)明資源復(fù)用的控制方法實施例三的流程圖;
[0039]圖4為本發(fā)明資源復(fù)用的控制裝置實施例一的結(jié)構(gòu)圖;
[0040]圖5為本發(fā)明資源復(fù)用的控制裝置實施例二的結(jié)構(gòu)圖。
【具體實施方式】
[0041]為使本發(fā)明實施例的目的、技術(shù)方案和優(yōu)點更加清楚,下面將結(jié)合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術(shù)方案進行清楚地描述,顯然,所描述的實施例是本發(fā)明一部分實施例,而不是全部的實施例?;诒景l(fā)明中的實施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。
[0042]圖1為本發(fā)明資源復(fù)用的控制方法實施例一的流程圖。如圖1所示,本實施例的執(zhí)行主體為資源復(fù)用的控制裝置,該控制裝置可以采用軟件和/或硬件的方式實現(xiàn),優(yōu)選的,該控制裝置可以集成在物理服務(wù)器中,則該控制方法包括:
[0043]S101、獲取虛擬機中各個VCPU的資源使用信息。
[0044]在物理服務(wù)器上可運行多個虛擬機,該多個虛擬機可共享該物理服務(wù)器的資源,但為了控制各個虛擬機對資源合理的分時復(fù)用,需要獲知各個虛擬機對資源的使用信息,具體的,針對每一個虛擬機來說,在獲取虛擬機中各個VCPU的資源使用信息時,可以通過一段周期的監(jiān)測,獲知各個虛擬機中各個VCPU對資源的使用信息,如通過監(jiān)測發(fā)現(xiàn)某個虛擬機的一個VCPU在18:00至22:00之間的業(yè)務(wù)量較大,相對于其他VCPU而言,占用的資源較多或使用資源的時長較長;或者可以通過實時的監(jiān)控,發(fā)現(xiàn)各個虛擬機中的各個VCPU在過去的一個小時內(nèi)的使用狀況。
[0045]S102、根據(jù)各個VCPU的資源使用信息,調(diào)整各個VCPU對資源的占用率。
[0046]如某個VCPU對資源的使用率較低,則可縮短該VCPU對資源的占用時長,從而其他對資源的使用率較高的VCPU可以對資源擁有較多的占用時長。
[0047]本實施例中,通過獲取的虛擬機中各個VCPU的資源使用信息,適應(yīng)的調(diào)整虛擬機中各個VCPU對資源的占用率,即不改變虛擬機的狀態(tài)及規(guī)格,實現(xiàn)各個VCPU對資源的合理的分時復(fù)用。[0048]圖2為本發(fā)明資源復(fù)用的控制方法實施例二的流程圖。如圖2所示,本實施例是在圖1所示的實施例的基礎(chǔ)上,描述一種可能的實現(xiàn)方式,具體的,該控制方法包括:
[0049]S201、實時監(jiān)控虛擬機中各個VCPU對資源的使用率。
[0050]本實施例中在執(zhí)行S201時,是針對每一個虛擬機來說的,且在本實施例中各個VCPU的資源使用信息具體以各個VCPU對資源的使用率為例,在實際應(yīng)用中,各個VCPU的資源使用信息還可以為各個VCPU對資源的占用量,例如分配于VCPU的core的數(shù)量及其他物理資源等。
[0051]S202、根據(jù)各個VCPU的資源使用信息,調(diào)整各個VCPU對資源的占用率。
[0052]具體的,上述S201的監(jiān)控是按照時間段進行,通過監(jiān)控發(fā)現(xiàn),若第一時間段內(nèi)第一 VCPU對資源的使用率大于或等于第一預(yù)設(shè)閾值,將第一 VCPU對資源的占用時長由正常時長增加為加長時長;
[0053]其中第一 VCPU為上述各個VCPU中的任意一個,而第一時間段可以為I個小時、2個小時等任意時刻開始的一段時長,例如,第一時間段為6:00到7:00的一個小時,此時控制每個VCPU占用資源的時長為10s,稱為正常狀態(tài),且針對每個VCPU來說,VCPU對資源的占用時長IOs為正常時長;而在該第一時間內(nèi),發(fā)現(xiàn)第一 VCPU的使用率持續(xù)I小時保持在80% (即上述第一預(yù)設(shè)閾值)以上,則將該第一 VCPU對core的占用時長由正常時長調(diào)整為增加20% (20%僅為舉例,具體調(diào)整的比例可以根據(jù)需要預(yù)設(shè)),即由正常時長增加為加長時長;
[0054]進一步,在所述第一時間段之后,若第二時間段內(nèi)第一 VCPU對資源的使用率低于或等于第二預(yù)設(shè)閾值,將第一 VCPU對資源的占用時長由加長時長恢復(fù)為所述正常時長。
[0055]也就是說,在上述由正常時長增加為加長時長之后,通過S201監(jiān)控后發(fā)現(xiàn)第一VCPU的使用率持續(xù)2小時(即上述第二時間段)保持在20% (即上述第二預(yù)設(shè)閾值)以下,則將該第一 VCPU對core的占用時長由由加長時長恢復(fù)為所述正常時長;此時開始的時間段繼續(xù)作為可以理解的,在上述由正常時長增加為加長時長之后,第一 VCPU對資源的使用率沒有大于或等于第一預(yù)設(shè)閾值,且沒有低于或等于第二預(yù)設(shè)閾值,則第一 VCPU對資源的占用時長保持不變。
[0056]相應(yīng)的,對于正常狀態(tài)下第一 VCPU的對資源的使用率低的情況,與上述類似,即若第一時間段內(nèi)第一 VCPU對資源的使用率小于或等于第三預(yù)設(shè)閾值,將第一 VCPU對資源的占用時長由正常時長減小為縮短時長;
[0057]進一步的,在第一時間段之后,若第二時間段內(nèi)第一 VCPU對資源的使用率大于或等于第四預(yù)設(shè)閾值,將第一 VCPU對資源的占用時長由縮短時長恢復(fù)為正常時長。
[0058]上述第一時間段和第二時間段為相對概念,即隨著各個VCPU不斷由正常時長變?yōu)榧娱L時長或縮短時長,及由加長時長或縮短時長恢復(fù)為正常時間,第一時間段和第二時間段依次出現(xiàn),從而S201和S202隨著每一次時間段的到來循環(huán)被執(zhí)行,以實現(xiàn)各個VCPU對資源的分時復(fù)用。
[0059]本實施例中,通過獲取的虛擬機中各個VCPU的資源使用信息,適應(yīng)的調(diào)整虛擬機中各個VCPU對資源的占用率,即不改變虛擬機的狀態(tài)及規(guī)格,實現(xiàn)各個VCPU對資源的合理的分時復(fù)用。
[0060]圖3為本發(fā)明資源復(fù)用的控制方法實施例三的流程圖。如圖3所示,本實施例是在圖1所示的實施例的基礎(chǔ)上,描述另一種可能的實現(xiàn)方式,具體的,該控制方法包括:
[0061]S301、在預(yù)設(shè)周期內(nèi)監(jiān)控虛擬機的各個VCPU,獲取每個VCPU在各個時間段內(nèi)對資源的使用率。
[0062]預(yù)設(shè)周期遠大于上述各個時間段,例如預(yù)設(shè)周期以一周為例,通過一周的監(jiān)控發(fā)現(xiàn)每個虛擬機的各個VCPU在固定的時間段內(nèi)的使用率基本固定,例如由于虛擬機所負責處理的業(yè)務(wù)不同,則一個虛擬機中的各個VCPU可能集中在每天早上的9:00至10:00對資源的使用率較高,而另一個虛擬機中的各個VCPU在每天晚上的21:00至22:00對資源的使用率較高,由此獲取到每個VCPU在各個時間段內(nèi)對資源的使用率。
[0063]本實施例中各個VCPU的資源使用信息具體以各個VCPU對資源的使用率為例,在實際應(yīng)用中,各個VCPU的資源使用信息還可以為各個VCPU對資源的占用量,例如分配于VCPU的core的數(shù)量及其他物理資源等。
[0064]S302、根據(jù)各個VCPU的資源使用信息,調(diào)整各個VCPU對資源的占用率。
[0065]具體的,在當前時間段的起始時刻到來時,根據(jù)獲取的每個VCPU在當前時間段內(nèi)對資源的使用率,控制各個VCPU在當前時間段內(nèi)對資源的占用時間;虛擬機在所述當前時間段內(nèi)對資源的占用時間與所述當前時間段的比值和獲取的所述虛擬機在當前時間段內(nèi)對資源的使用率相對應(yīng)。
[0066]例如,由于提前通過S301獲知虛擬機I的VCPU在6:00至8:00占用core的比值為20%,而虛擬機2的VCPU在6:00至8:00占用core的比值為80%,在6:00時,而在當前時間段6:00至8:00的起始時刻6:00到來時,分別控制虛擬機I和虛擬機2的VCPU在6:00至8:00占用core的占用時間,使虛擬機I的VCPU在6:00至8:00占用core的占用時間與當前時間段6:00至8:00的比值為20%,即虛擬機I的VCPU在6:00至8:00占用core的占用時間為24分鐘,該24分鐘與6:00至8:00的120分鐘時的比值為20% ;而虛擬機2在6:00至8:00占用core的占用時間為96分鐘,即虛擬機在當前時間段內(nèi)對資源的占用時間與當前時間段的比值和獲取的所述虛擬機在當前時間段內(nèi)對資源的使用率相對應(yīng),實現(xiàn)每個VCPU對資源的分時復(fù)用。
[0067]本實施例中,通過獲取的虛擬機中各個VCPU的資源使用信息,適應(yīng)的調(diào)整虛擬機中各個VCPU對資源的占用率,即不改變虛擬機的狀態(tài)及規(guī)格,實現(xiàn)各個VCPU對資源的合理的分時復(fù)用。
[0068]圖4為本發(fā)明資源復(fù)用的控制裝置實施例一的結(jié)構(gòu)圖。如圖4所示,本實施例中資源復(fù)用的控制裝置,包括:
[0069]獲取模塊41,用于獲取虛擬機中各個VCPU的資源使用信息;
[0070]處理模塊42,用于根據(jù)各個VCPU的資源使用信息,調(diào)整各個VCPU對資源的占用率。
[0071]在一種實現(xiàn)方式中,所述資源使用信息為資源的使用率,則獲取模塊41具體用于實時監(jiān)控虛擬機中各個所述VCPU對資源的使用率。
[0072]則在調(diào)整各個VCPU對資源的占用率時,可選的,處理模塊42具體用于若第一時間段內(nèi)第一 VCPU對資源的使用率大于或等于第一預(yù)設(shè)閾值,將所述第一 VCPU對資源的占用時長由正常時長增加為加長時長;
[0073]在所述第一時間段之后,若第二時間段內(nèi)第一 VCPU對資源的使用率低于或等于第二預(yù)設(shè)閾值,將所述第一 VCPU對資源的占用時長由加長時長恢復(fù)為所述正常時長。
[0074]或者,在調(diào)整各個VCPU對資源的占用率時,可選的,處理模塊42具體用于
[0075]若第一時間段內(nèi)第一 VCPU對資源的使用率小于或等于第三預(yù)設(shè)閾值,將所述第一 VCPU對資源的占用時長由正常時長減小為縮短時長;
[0076]在所述第一時間段之后,若第二時間段內(nèi)所述第一 VCPU對資源的使用率低于第四預(yù)設(shè)閾值,將所述第一 VCPU對資源的占用時長由所述縮短時長恢復(fù)為所述正常時長。
[0077]靈活的,在另一種實現(xiàn)方式中,所述資源使用信息為資源的使用率,則所述獲取模塊41具體用于
[0078]在預(yù)設(shè)周期內(nèi)監(jiān)控虛擬機的各個VCPU,獲取每個所述VCPU在各個時間段內(nèi)對資源的使用率;
[0079]則所述處理模塊42具體用于
[0080]在當前時間段的起始時刻到來時,根據(jù)獲取的每個所述VCPU在當前時間段內(nèi)對資源的使用率,控制各個VCPU在所述當前時間段內(nèi)對資源的占用時間;所述虛擬機在所述當前時間段內(nèi)對資源的占用時間與所述當前時間段的比值和獲取的所述虛擬機在當前時間段內(nèi)對資源的使用率相對應(yīng)。
[0081 ] 本實施例中上述各模塊對應(yīng)執(zhí)行上述各個方法實施例中的各個步驟,在此不再贅述。
[0082]本實施例中,資源復(fù)用的控制裝置通過獲取的虛擬機中各個VCPU的資源使用信息,適應(yīng)的調(diào)整虛擬機中各個VCPU對資源的占用率,即不改變虛擬機的狀態(tài)及規(guī)格,實現(xiàn)各個VCPU對資源的合理的分時復(fù)用。
[0083]圖5為本發(fā)明資源復(fù)用的控制裝置實施例二的結(jié)構(gòu)圖。如圖5所示,本實施例中資源復(fù)用的控制裝置,包括:
[0084]處理器51,用于獲取虛擬機中各個VCPU的資源使用信息;
[0085]上述處理器51用于根據(jù)各個VCPU的資源使用信息,調(diào)整各個VCPU對資源的占用率。
[0086]在一種實現(xiàn)方式中,所述資源使用信息為資源的使用率,則處理器51具體用于實時監(jiān)控虛擬機中各個所述VCPU對資源的使用率。
[0087]則在調(diào)整各個VCPU對資源的占用率時,可選的,處理器51具體用于若第一時間段內(nèi)第一 VCPU對資源的使用率大于或等于第一預(yù)設(shè)閾值,將所述第一 VCPU對資源的占用時長由正常時長增加為加長時長;
[0088]在所述第一時間段之后,若第二時間段內(nèi)第一 VCPU對資源的使用率低于或等于第二預(yù)設(shè)閾值,將所述第一 VCPU對資源的占用時長由加長時長恢復(fù)為所述正常時長。
[0089]或者,在調(diào)整各個VCPU對資源的占用率時,可選的,處理器51具體用于
[0090]若第一時間段內(nèi)第一 VCPU對資源的使用率小于或等于第三預(yù)設(shè)閾值,將所述第一 VCPU對資源的占用時長由正常時長減小為縮短時長;
[0091]在所述第一時間段之后,若第二時間段內(nèi)所述第一 VCPU對資源的使用率低于第四預(yù)設(shè)閾值,將所述第一 VCPU對資源的占用時長由所述縮短時長恢復(fù)為所述正常時長。
[0092]靈活的,在另一種實現(xiàn)方式中,所述資源使用信息為資源的使用率,則所述處理器51具體用于[0093]在預(yù)設(shè)周期內(nèi)監(jiān)控虛擬機的各個VCPU,獲取每個所述VCPU在各個時間段內(nèi)對資源的使用率;
[0094]則所述處理器51具體用于
[0095]在當前時間段的起始時刻到來時,根據(jù)獲取的每個所述VCPU在當前時間段內(nèi)對資源的使用率,控制各個VCPU在所述當前時間段內(nèi)對資源的占用時間;所述虛擬機在所述當前時間段內(nèi)對資源的占用時間與所述當前時間段的比值和獲取的所述虛擬機在當前時間段內(nèi)對資源的使用率相對應(yīng)。
[0096]本實施例中處理器對應(yīng)執(zhí)行上述各個方法實施例中的各個步驟,具體細節(jié)及效果在此不再贅述。
[0097]本實施例中,資源復(fù)用的控制裝置通過獲取的虛擬機中各個VCPU的資源使用信息,適應(yīng)的調(diào)整虛擬機中各個VCPU對資源的占用率,即不改變虛擬機的狀態(tài)及規(guī)格,實現(xiàn)各個VCPU對資源的合理的分時復(fù)用。
[0098]本領(lǐng)域普通技術(shù)人員可以理解:實現(xiàn)上述各方法實施例的全部或部分步驟可以通過程序指令相關(guān)的硬件來完成。前述的程序可以存儲于一計算機可讀取存儲介質(zhì)中。該程序在執(zhí)行時,執(zhí)行包括上述各方法實施例的步驟;而前述的存儲介質(zhì)包括:R0M、RAM、磁碟或者光盤等各種可以存儲程序代碼的介質(zhì)。
[0099]最后應(yīng)說明的是:以上各實施例僅用以說明本發(fā)明的技術(shù)方案,而非對其限制;盡管參照前述各實施例對本發(fā)明進行了詳細的說明,本領(lǐng)域的普通技術(shù)人員應(yīng)當理解:其依然可以對前述各實施例所記載的技術(shù)方案進行修改,或者對其中部分或者全部技術(shù)特征進行等同替換;而這些修改或者替換,并不使相應(yīng)技術(shù)方案的本質(zhì)脫離本發(fā)明各實施例技術(shù)方案的范圍。
【權(quán)利要求】
1.一種資源復(fù)用的控制方法,其特征在于,包括: 獲取虛擬機中各個虛擬中央處理器VCPU的資源使用信息; 根據(jù)各個所述VCPU的資源使用信息,調(diào)整各個所述VCPU對資源的占用率。
2.根據(jù)權(quán)利要求1所述的控制方法,其特征在于,所述資源使用信息為資源的使用率,則所述獲取虛擬機中各個VCPU的資源使用信息,包括: 實時監(jiān)控所述虛擬機中各個所述VCPU對資源的使用率。
3.根據(jù)權(quán)利要求2所述的控制方法,其特征在于,所述根據(jù)各個所述VCPU的資源使用信息,調(diào)整各個所述VCPU對資源的占用率,包括: 若第一時間段內(nèi)第一 VCPU對資源的使用率大于或等于第一預(yù)設(shè)閾值,將所述第一VCPU對資源的占用時長由正常時長增加為加長時長; 在所述第一時間段之后,若第二時間段內(nèi)第一 VCPU對資源的使用率低于或等于第二預(yù)設(shè)閾值,將所述第一 VCPU對資源的占用時長由加長時長恢復(fù)為所述正常時長。
4.根據(jù)權(quán)利要求2所述的控制方法,其特征在于,所述根據(jù)各個所述VCPU的資源使用信息,調(diào)整各個VCPU對資源的占用率,包括: 若第一時間段內(nèi)第一 VCPU對資源的使用率小于或等于第三預(yù)設(shè)閾值,將所述第一VCPU對資源的占用時長由正常時長減小為縮短時長; 在所述第一時間段之后,若第二時間段內(nèi)所述第一 VCPU對資源的使用率低于第四預(yù)設(shè)閾值,將所述第一 VCPU對資源的占用時長由所述縮短時長恢復(fù)為所述正常時長。
5.根據(jù)權(quán)利要求1所述的控制方法,其特征在于,所述資源使用信息為資源的使用率,則所述獲取虛擬機中各個VCPU的資源使用信息,包括: 在預(yù)設(shè)周期內(nèi)監(jiān)控所述虛擬機的各個VCPU,獲取各個所述VCPU在各個時間段內(nèi)對資源的使用率; 則根據(jù)各個所述VCPU的資源使用信息,調(diào)整各個所述VCPU對資源的占用率,包括: 在當前時間段的起始時刻到來時,根據(jù)獲取的各個所述VCPU在當前時間段內(nèi)對資源的使用率,控制各個所述VCPU在所述當前時間段內(nèi)對資源的占用時間;所述虛擬機在所述當前時間段內(nèi)對資源的占用時間與所述當前時間段的比值和獲取的所述虛擬機在當前時間段內(nèi)對資源的使用率相對應(yīng)。
6.一種資源復(fù)用的控制裝置,其特征在于,包括: 獲取模塊,用于獲取虛擬機中各個VCPU的資源使用信息; 處理模塊,用于根據(jù)各個所述VCPU的資源使用信息,調(diào)整各個所述VCPU對資源的占用率。
7.根據(jù)權(quán)利要求6所述的控制裝置,其特征在于,所述資源使用信息為資源的使用率,所述獲取模塊具體用于實時監(jiān)控所述虛擬機中各個所述VCPU對資源的使用率。
8.根據(jù)權(quán)利要求7所述的控制裝置,其特征在于,所述處理模塊具體用于若第一時間段內(nèi)第一 VCPU對資源的使用率大于或等于第一預(yù)設(shè)閾值,將所述第一 VCPU對資源的占用時長由正常時長增加為加長時長; 在所述第一時間段之后,若第二時間段內(nèi)第一 VCPU對資源的使用率低于或等于第二預(yù)設(shè)閾值,將所述第一 VCPU對資源的占用時長由加長時長恢復(fù)為所述正常時長。
9.根據(jù)權(quán)利要求7所述的控制裝置,其特征在于,所述處理模塊具體用于若第一時間段內(nèi)第一 VCPU對資源的使用率小于或等于第三預(yù)設(shè)閾值,將所述第一VCPU對資源的占用時長由正常時長減小為縮短時長;
在所述第一時間段之后,若第二時間段內(nèi)所述第一 VCPU對資源的使用率低于第四預(yù)設(shè)閾值,將所述第一 VCPU對資源的占用時長由所述縮短時長恢復(fù)為所述正常時長。
10.根據(jù)權(quán)利要求6所述的控制裝置,其特征在于,所述資源使用信息為資源的使用率,所述獲取模塊具體用于 在預(yù)設(shè)周期內(nèi)監(jiān)控所述虛擬機的各個VCPU,獲取各個所述VCPU在各個時間段內(nèi)對資源的使用率; 則所述處理模塊具體用于 在當前時間段的起始時刻到來時,根據(jù)獲取的各個所述VCPU在當前時間段內(nèi)對資源的使用率,控制各個所述VCPU在所述當前時間段內(nèi)對資源的占用時間;所述虛擬機在所述當前時間段內(nèi)對資源的占用時間與所述當前時間段的比值和獲取的所述虛擬機在當前時間段內(nèi)對資源的使用率相對應(yīng)。
【文檔編號】G06F9/50GK103678002SQ201310662560
【公開日】2014年3月26日 申請日期:2013年12月9日 優(yōu)先權(quán)日:2013年12月9日
【發(fā)明者】劉萬來 申請人:華為技術(shù)有限公司