两个人的电影免费视频_国产精品久久久久久久久成人_97视频在线观看播放_久久这里只有精品777_亚洲熟女少妇二三区_4438x8成人网亚洲av_内谢国产内射夫妻免费视频_人妻精品久久久久中国字幕

用于在云環(huán)境中指派虛擬資源的方法和設(shè)備的制作方法

文檔序號:6496003閱讀:226來源:國知局
用于在云環(huán)境中指派虛擬資源的方法和設(shè)備的制作方法
【專利摘要】本發(fā)明公開了一種虛擬資源指派能力。該虛擬資源指派能力被配置為支持在云環(huán)境(110)內(nèi)提供虛擬資源。在云環(huán)境中提供虛擬資源包括接收用來請求在云環(huán)境內(nèi)供應(yīng)虛擬資源的用戶虛擬資源請求,確定指明在云環(huán)境內(nèi)對虛擬資源的指派的虛擬資源指派信息,以及使用所述虛擬資源指派信息在云環(huán)境內(nèi)供應(yīng)虛擬資源。在云環(huán)境內(nèi)對所請求的虛擬資源的指派包括將虛擬資源向?qū)⑼泄芴摂M資源的云環(huán)境的數(shù)據(jù)中心(111)進行指派,以及特別是向?qū)⑼泄芴摂M資源的云環(huán)境的數(shù)據(jù)中心內(nèi)的物理資源進行指派。虛擬資源可包括虛擬處理器資源、虛擬存儲器資源等。物理資源可包括處理器資源(115)、存儲器資源等(例如云環(huán)境的數(shù)據(jù)中心的機架(112)的刀片式服務(wù)器(114)的物理資源)。
【專利說明】用于在云環(huán)境中指派虛擬資源的方法和設(shè)備
【技術(shù)領(lǐng)域】
[0001]本發(fā)明總體涉及對虛擬資源的指派,尤其涉及但不限于在云環(huán)境中對虛擬資源的指派。
【背景技術(shù)】
[0002]對經(jīng)由云環(huán)境的云計算的使用變得越來越流行。云環(huán)境包括用來托管用于云計算用戶的虛擬資源的物理資源。作為對來自云計算用戶的虛擬資源請求的響應(yīng),所請求的虛擬資源被供應(yīng)到云環(huán)境的物理資源上(例如位于一個或多個數(shù)據(jù)中心中的一個或多個服務(wù)器),以供用戶在云計算過程中使用。

【發(fā)明內(nèi)容】

[0003]現(xiàn)有技術(shù)中的各種不足由用于云環(huán)境中的虛擬資源指派的實施方式解決。
[0004]在一種實施方式中,一種設(shè)備包括處理器和存儲器,其中所述處理器被配置為接收針對虛擬資源的請求,接收與所述云環(huán)境相關(guān)聯(lián)的管理信息以及使用所請求的虛擬資源的數(shù)量、一個或多個虛擬資源指派限制和所述管理信息來確定對所述云環(huán)境內(nèi)所請求的虛擬資源的指派,其中所述請求包括所述所請求的虛擬資源的數(shù)量和所述一個或多個虛擬資源指派限制。
[0005]在一種實施方式中,一種計算機可讀存儲媒介存儲了指令,所述指令在被計算機執(zhí)行時使得所述計算機執(zhí)行一種方法,該方法包括:接收針對虛擬資源的請求,接收與所述云環(huán)境相關(guān)聯(lián)的管理信息以及使用所請求的虛擬資源的數(shù)量、一個或多個虛擬資源指派限制和所述管理信息來確定對所述云環(huán)境內(nèi)所請求的虛擬資源的指派,其中所述請求包括所述所請求的虛擬資源的數(shù)量和所述一個或多個虛擬資源指派限制。
[0006]在一種實施方式中,一種方法包括:使用處理器和存儲器來接收針對虛擬資源的請求,接收與所述云環(huán)境相關(guān)聯(lián)的管理信息以及使用所請求的虛擬資源的數(shù)量、一個或多個虛擬資源指派限制和所述管理信息來確定對所述云環(huán)境內(nèi)所請求的虛擬資源的指派,其中所述請求包括所述所請求的虛擬資源的數(shù)量和所述一個或多個虛擬資源指派限制。
【專利附圖】

【附圖說明】
[0007]可通過結(jié)合附圖考慮以下【具體實施方式】來容易的理解這里的教導(dǎo),其中:
[0008]圖1描述被配置為支持向云環(huán)境的物理資源自動指派VM的系統(tǒng)的實施方式;
[0009]圖2描述用于響應(yīng)于針對VM的用戶請求在云環(huán)境的數(shù)據(jù)中心中供應(yīng)VM的方法的實施方式;
[0010]圖3描述用于確定向數(shù)據(jù)中心內(nèi)的物理資源指派VM以供在云環(huán)境的數(shù)據(jù)中心內(nèi)提供VM使用的方法的實施方式;
[0011]圖4A和4B描述被配置為確定VM將被指派到的數(shù)據(jù)中心的集合的進程;
[0012]圖5描述被配置到VM將被指派到的機架(rack)、刀片(blade)和CPU的進程;[0013]圖6描述了適用于在執(zhí)行這里描述的功能中使用的計算機的高級框圖。
[0014]為了促進理解,盡可能地使用相同的參考符號來表示附圖中共有的相同元素。
【具體實施方式】
[0015]這里對虛擬資源指派能力進行一般性的說明和描述,但各種其他能力也可在這里呈現(xiàn)。
[0016]在至少一些實施方式中,虛擬資源指派能力向云環(huán)境中的物理資源提供對虛擬資源的自動指派。虛擬資源可包括虛擬計算資源、虛擬存儲資源等,以及其中的各種組合。物理資源可包括處理器資源(例如數(shù)據(jù)中心的機架的刀片式服務(wù)器的中央處理單元(CPU))、存儲資源等。
[0017]在至少一些實施方式中,虛擬資源指派能力響應(yīng)于針對虛擬資源的用戶請求向云環(huán)境中的物理資源提供對虛擬資源的自動指派。在至少一些實施方式中,接收針對虛擬資源的用戶請求,確定將虛擬資源向云環(huán)境的物理資源進行的指派,并基于將所述虛擬資源向云環(huán)境的物理資源的指派在云環(huán)境中供應(yīng)虛擬資源。針對虛擬資源的用戶請求可包括虛擬資源請求信息(例如所請求的虛擬資源的數(shù)量、虛擬資源指派限制等),其可被用作針對確定將虛擬資源向云環(huán)境的物理資源進行的指派的輸入??墒褂锰摂M資源指派信息(例如,對所請求的虛擬資源所位于的數(shù)據(jù)中心的選擇、對所請求的虛擬資源所位于的數(shù)據(jù)中心內(nèi)的設(shè)備的選擇等等)來指定所確定的將虛擬資源向云環(huán)境的物理資源進行的指派。注意的是,各種其他類型的信息(例如網(wǎng)絡(luò)拓撲和/或與數(shù)據(jù)中心之間的連接性相關(guān)聯(lián)的狀態(tài)信息、數(shù)據(jù)中心拓撲和/或狀態(tài)信息等)可被用于確定將虛擬資源向云環(huán)境的物理資源進行的指派。注意的是,可以使用各種其他類型的信息(例如對托管虛擬資源的機架/刀片式服務(wù)器/CPU的選擇、特定虛擬資源到托管虛擬資源的特定機架/刀片式服務(wù)器/CPU的映射等)來指定將虛擬資源向云環(huán)境的物理資源進行的指派。
[0018]在至少一些實施方式中,虛擬資源指派能力以趨于提高云環(huán)境的性能的方式(例如提高對網(wǎng)絡(luò)資源的利用)和趨于提高使用虛擬資源的用戶應(yīng)用的性能的方式(例如減小通信延遲、提高恢復(fù)能力等)向云環(huán)境中的物理資源提供對虛擬資源的自動指派。
[0019]雖然這里主要在其中虛擬資源是虛擬機(VM)和物理資源是刀片式服務(wù)器的處理器的實施方式的語境中進行說明和描述,但是應(yīng)該注意的是虛擬資源指派能力可被用于確定對各種其他類型的虛擬資源的指派和/或確定對各種其他類型物理資源的指派。
[0020]圖1描述被配置為支持向云環(huán)境的物理資源自動指派VM的系統(tǒng)的實施方式。
[0021]系統(tǒng)100包括云環(huán)境110、云管理系統(tǒng)(CMS)120、網(wǎng)絡(luò)管理系統(tǒng)(NMS)130、云自動系統(tǒng)(CAS) 140、和通信網(wǎng)絡(luò)(CN) 150。
[0022]云環(huán)境110包括被配置為托管虛擬資源的物理資源。物理資源包括服務(wù)器和被配置為托管虛擬資源的其它類型的物理資源。虛擬資源可包括虛擬機(VM)、虛擬存儲(VS)等,以及其各種組合。
[0023]云環(huán)境110包括多個數(shù)據(jù)中心III1-1IId (統(tǒng)稱為數(shù)據(jù)中心111)。
[0024]數(shù)據(jù)中心111包括數(shù)據(jù)中心資源(例如計算資源、通信資源等)。數(shù)據(jù)中心111被配置為經(jīng)由通信網(wǎng)絡(luò)150進行通信,從而能夠彼此進行通信。數(shù)據(jù)中心111可以是地理上分布的。[0025]數(shù)據(jù)中心111每個包括被配置為托管虛擬資源的物理資源。每個數(shù)據(jù)中心111包括多個機架I U1-1Uk(統(tǒng)稱為機架112)。每個機架112包括多個刀片式服務(wù)器I H1-1Hb(統(tǒng)稱為刀片式服務(wù)器114)。每個刀片式服務(wù)器114包括多個CpuIIS1-1ISJ統(tǒng)稱為CPU115)。每個CPU115可具有一個或多個相關(guān)聯(lián)的CPU核心(為了簡明已略去)。CPU被配置為托管VM。數(shù)據(jù)中心111內(nèi)的機架112、刀片式服務(wù)器114和CPU115的典型排列和操作是本領(lǐng)域技術(shù)人員所理解的。注意的是,在任意的數(shù)據(jù)中心111內(nèi)可使用任何適當(dāng)類型、數(shù)量和/或排列的機架112、刀片式服務(wù)器114和CPU115。雖然這里主要是參照特定數(shù)量的數(shù)據(jù)中心111、機架112、刀片式服務(wù)器114和CPU115進行說明和描述的,但是應(yīng)注意的是,在云環(huán)境110中可使用任何其它適當(dāng)數(shù)量的數(shù)據(jù)中心111、機架112、刀片式服務(wù)器114和/或CPU115(例如云環(huán)境110可包括一個或多個數(shù)據(jù)中心111,每個數(shù)據(jù)中心111可包括一個或多個機架112,每個機架可包括一個或多個刀片式服務(wù)器114,并且每個刀片式服務(wù)器114可包括一個或多個CPU115)。
[0026]每個數(shù)據(jù)中心111包括被配置為支持?jǐn)?shù)據(jù)中心內(nèi)通信和數(shù)據(jù)中心間通信的數(shù)據(jù)中心通信資源。
[0027]數(shù)據(jù)中心111的數(shù)據(jù)中心通信資源是分層排列的(但是,注意也可使用其它類型的排列)。
[0028]同一刀片式服務(wù)器114的CPUl 15能夠直接進行通信(例如在不通過任何開關(guān)的情況下)。
[0029]同一機架112的刀片式服務(wù)器114的CPU能夠經(jīng)由與機架112相關(guān)聯(lián)的機架頂(TOR)開關(guān)113進行通信(需要說明的是,TOR開關(guān)113^113^1」與機架112^11240*8)。
[0030]不同機架112的刀片式服務(wù)器114的CPU115能夠經(jīng)由一個或多個開關(guān)114(一般稱作聚合開關(guān))和/或路由器117進行通信。舉例來講,在示例性的數(shù)據(jù)中心Ill1中,相鄰的機架112對耦合到聚合(a ggregator)開關(guān)116 (機架112「1122的TOR開關(guān)113r1132稱合到聚合開關(guān)Iiei,類似地,機架112κ耦合到聚合開關(guān)116α)。雖然為了簡明進行了省略,但是應(yīng)該理解的是聚合開關(guān)116 (表示為第一層聚合開關(guān))可被連接到數(shù)據(jù)中心中的第二層聚合開關(guān)(例如,其中第一層聚合開關(guān)116的集合包括兩個或更多個相鄰聚合開關(guān)116,每個耦合到第二層聚合開關(guān),其中第二層聚合開關(guān)的集合包括兩個或更多個相鄰的聚合開關(guān)116,其中每個耦合到第三層聚合開關(guān),以此類推)。如此,機架112和聚合開關(guān)116可被排列成分層的樹結(jié)構(gòu)。結(jié)果,數(shù)據(jù)中心111內(nèi)的機架112中的刀片式服務(wù)器114的CPU115之間的時延取決于機架112在由機架112和聚合開關(guān)116構(gòu)成的分層樹結(jié)構(gòu)內(nèi)的位置(從而,為用戶供應(yīng)的VM之間的通信的時延取決于在其上供應(yīng)所請求的VM的數(shù)據(jù)中心111的物理資源)。
[0031]假設(shè)在本地通信的情況下排列數(shù)據(jù)中心111的數(shù)據(jù)中心通信資源。其中假設(shè)每個數(shù)據(jù)中心111內(nèi)的通信的很大一部分將在相同機架114的CPU115之間發(fā)生。隨著數(shù)據(jù)中心111的CPU115之間的距離增加,CPU115之間的可用通信帶寬減少。結(jié)果,在數(shù)據(jù)中心111內(nèi)供應(yīng)的所請求的VM (—旦供應(yīng),其將經(jīng)由數(shù)據(jù)中心內(nèi)通信資源彼此通信)的可用通信帶寬至少部分地取決于其上供應(yīng)所請求的VM的數(shù)據(jù)中心111的CPU115。類似地,數(shù)據(jù)中心111的總體效率還至少部分地取決于其上在數(shù)據(jù)中心111內(nèi)供應(yīng)所請求的VM的CPU115。結(jié)果,可針對能被接受在云環(huán)境110中托管的用戶請求的數(shù)量還分別至少部分地取決于其上在數(shù)據(jù)中心111內(nèi)供應(yīng)所請求的VM的CPU115。
[0032]數(shù)據(jù)中心111的機架112經(jīng)由路由器117(并且按照說明可選地經(jīng)由聚合開關(guān)116的一個或多個層)與數(shù)據(jù)中心111的外界進行通信。
[0033]本領(lǐng)域技術(shù)人員將理解對數(shù)據(jù)中心通信資源的典型排列和操作。
[0034]需要注意的是,為了支持任何數(shù)據(jù)中心111內(nèi)的數(shù)據(jù)中心內(nèi)和數(shù)據(jù)中心外通信,可使用任何適當(dāng)類型、數(shù)量和/或排列的開關(guān)(例如TOR開關(guān)113、聚合開關(guān)116等)和/或路由器(例如路由器117)。
[0035]CMS120被配置為針對云環(huán)境110的管理提供管理功能。本領(lǐng)域技術(shù)人員將會理解云環(huán)境的云管理系統(tǒng)所典型提供的管理功能。CMS120維持與云環(huán)境110的管理相關(guān)聯(lián)的云管理信息。CMS120向CAS140提供云管理信息,以用于對響應(yīng)于用戶請求來確定將VM向云環(huán)境110的物理資源的指派。云管理信息可包括與數(shù)據(jù)中心111中的每一個相關(guān)聯(lián)的數(shù)據(jù)中心資源信息(例如當(dāng)前可用資源、期望在將來可用的資源、資源的當(dāng)前分配、將來期望的資源分配、資源類型、資源排列、資源能力等)、與數(shù)據(jù)中心111中的每一個相關(guān)聯(lián)的數(shù)據(jù)中心拓撲信息(例如與每個機架內(nèi)的連接性相關(guān)聯(lián)的、機架之間的連接性等)、與數(shù)據(jù)中心111中的每一個相關(guān)聯(lián)的數(shù)據(jù)中心狀態(tài)信息(例如資源狀態(tài)信息、連接性狀態(tài)信息等)等,以及其各種組合。
[0036]匪S130被配置為提供針對CN150的管理的管理功能。本領(lǐng)域技術(shù)人員將理解由通信網(wǎng)絡(luò)的網(wǎng)絡(luò)管理功能提供的典型排列和操作。匪S130維持與CN150的管理相關(guān)聯(lián)的網(wǎng)絡(luò)管理信息。WS130向CAS140提供網(wǎng)絡(luò)管理信息,以用于響應(yīng)于用戶請求來確定將VM向云環(huán)境110的物理資源的指派。網(wǎng)絡(luò)管理信息可包括網(wǎng)絡(luò)拓撲信息、網(wǎng)絡(luò)狀態(tài)信息等,以及其各種組合。
[0037]CAS140被配置為對響應(yīng)于針對VM的用戶請求來確定將所請求的VM向云環(huán)境110的物理資源的指派。
[0038]CAS140被配置為接收請求在云環(huán)境110之內(nèi)供應(yīng)VM的用戶VM請求。用戶VM請求包括供CAS140在確定將所請求的VM向云環(huán)境110的物理資源的指派過程中使用的用戶VM請求信息。用戶VM請求信息包括多個所請求的VM。用戶VM請求信息還可包括針對所請求的VM之間的通信的通信要求。用戶VM請求信息還可包括一個或多個VM指派限制(例如VM放置限制、VM通信限制、VM恢復(fù)限制、VM類型限制等中的一個或多個)。VM指派限制可包括將為每機架112指派的VM的最大數(shù)量、將為每機架112指派的VM的最小數(shù)量、每個數(shù)據(jù)中心111將使用的機架112的最大數(shù)量(例如為了降低機架間流量)、每個數(shù)據(jù)中心111將使用的機架112的最小數(shù)量(例如針對恢復(fù))、將被指派給每個數(shù)據(jù)中心111的VM的最大數(shù)量(例如針對恢復(fù))、將被指派給每個數(shù)據(jù)中心111的VM的最小數(shù)量(例如為了降低數(shù)據(jù)中心間流量)、將被使用的數(shù)據(jù)中心111的最大數(shù)量(例如為了降低數(shù)據(jù)中心間流量)、將被使用的數(shù)據(jù)中心111的最小數(shù)量(例如為了恢復(fù))、基于將被指派的VM的類型的將被使用的刀片服務(wù)器114的類型等中的一個或多個,以及其各種組合。用戶VM請求信息可包括適于在確定對所請求的VM在云環(huán)境110內(nèi)的指派的過程中使用的任何其他信息。
[0039]CAS140被配置為接收管理信息,以用于由CAS140在確定將所請求的VM向云環(huán)境110的物理資源的指派的過程中進行使用。例如,CAS140可接收管理信息,該管理信息包括來自CMS120的云管理信息、來自匪S130的網(wǎng)絡(luò)管理信息等。[0040]CAS140可使用與用戶VM請求一同接收的用戶VM請求信息、與系統(tǒng)100的部分相關(guān)聯(lián)的管理信息等以及其各種組合來確定將所請求的VM向云環(huán)境110的物理資源的指派。
[0041]CAS140可被配置為以用來降低資源使用的方式來確定將所請求的VM向云環(huán)境110的物理資源的指派(例如降低數(shù)據(jù)中心111內(nèi)的機架間通信和降低數(shù)據(jù)中心之間的數(shù)據(jù)中心間通信)并向?qū)⑹褂肰M (—旦它們在云環(huán)境110中被供應(yīng))的用戶應(yīng)用提供提高的性能。數(shù)據(jù)中心111內(nèi)的機架間通信的減少可通過降低被指派了 VM的數(shù)據(jù)中心111的機架112的數(shù)量、將VM指派到在可能的情況下彼此相對較近的機架112等來提供。數(shù)據(jù)中心111之間的數(shù)據(jù)中心間通信的降低可通過降低被指派了 VM的數(shù)據(jù)中心的數(shù)量、基于對數(shù)據(jù)中心111之間的通信能力的了解來向數(shù)據(jù)中心111指派VM、基于對數(shù)據(jù)中心111之間的流量的了解向數(shù)據(jù)中心111指派VM以及被期待使用VM (—旦它們在云環(huán)境110中被供應(yīng))的一個或多個客戶端的一個或多個客戶端位置等來提供。
[0042]CAS140可被配置為可以基于用戶VM請求的一個或多個其他特性(例如彈性、錯誤容忍度等)來確定將所請求的VM向云環(huán)境110的物理資源的指派。例如,CAS140可被配置為以針對確保增長空間的方式(例如其中用戶可能需要或想要在未來添加一個或多個附加VM)指派VM。例如,CAS140可被配置為在考慮錯誤場景的同時指派VM,從而對VM的結(jié)果指派使得能夠從云環(huán)境110和/或CN150中的錯誤快速恢復(fù)。
[0043]可參考圖2-6來更好地理解CAS140確定將所請求的VM向云環(huán)境110的物理資源的指派的方式。
[0044]CAS140可按照VM指派信息來指明對所請求的VM向云環(huán)境110的物理資源的指派。VM指派信息包括所請求的VM將被放置的數(shù)據(jù)中心的標(biāo)識、所請求的VM將被放置的數(shù)據(jù)中心內(nèi)的設(shè)備的標(biāo)識(例如根據(jù)每個VM將被放置的機架112、刀片式服務(wù)器114和CPU115(以及可選地,核))等。VM指派信息還可包括被配置為在供應(yīng)所請求的VM之間的連接性的過程中使用的網(wǎng)絡(luò)配置信息。
[0045]CAS140可在相關(guān)聯(lián)的數(shù)據(jù)庫141中維持各種類型的信息。例如,與CAS140相關(guān)聯(lián)的數(shù)據(jù)庫141可存儲由CAS140接收的信息(例如用戶VM請求信息、管理信息等)、由CAS140確定的VM指派信息等,以及其各種組合。
[0046]CAS140被配置為基于VM指派信息參與在云環(huán)境110中供應(yīng)所請求的VM的過程。在一種實施方式中,CAS140被配置為基于VM指派信息執(zhí)行在云環(huán)境110內(nèi)對所請求的VM的供應(yīng)(例如經(jīng)由基于VM指派信息生成相關(guān)聯(lián)的VM供應(yīng)請求以及將VM供應(yīng)請求傳遞到云環(huán)境110)。在一種實施方式中,CAS140被配置為基于VM指派信息發(fā)起在云環(huán)境110中對所請求的VM的供應(yīng)(例如通過將針對用戶VM請求的VM指派信息提供給一個或多個管理系統(tǒng)(例如CMS120、匪S130等中的一個或多個)),以供一個或多個管理系統(tǒng)在基于VM指派信息在云環(huán)境110中供應(yīng)所請求的VM的過程中使用。
[0047]CAS140可被配置為執(zhí)行支持虛擬資源指派能力的各種其它功能。
[0048]CN150可以是任何類型的適合支持?jǐn)?shù)據(jù)中心111之間的通信的通信網(wǎng)絡(luò)。例如,可通過使用公共數(shù)據(jù)網(wǎng)絡(luò)(例如因特網(wǎng))中的一個或多個、一個或多個私有數(shù)據(jù)網(wǎng)絡(luò)等以及其中的各種組合來提供CN150。
[0049]圖2描述用于響應(yīng)于針對VM的用戶請求在云環(huán)境的數(shù)據(jù)中心中供應(yīng)VM的方法的一種實施方式。雖然說明和描述是按先后順序進行的,但是需要注意的是,方法200的步驟可以同時執(zhí)行和/或按照與所呈現(xiàn)的順序不同的順序執(zhí)行。
[0050]在步驟210,方法200開始。方法200可以響應(yīng)于任何適當(dāng)?shù)臓顩r或觸發(fā)而開始。
[0051]在步驟220,接收用戶VM請求,請求在云環(huán)境內(nèi)供應(yīng)VM。用戶VM請求包括用戶VM請求信息。用戶VM請求信息包括由用戶請求的多個VM。用戶VM請求信息還可包括針對所請求的VM之間的通信的通信要求。用戶VM請求信息還可包括一個或多個VM指派限制(例如VM放置限制、VM通信限制、VM恢復(fù)限制等中的一個或多個)。用戶VM請求信息可包括適于在確定所請求的VM在數(shù)據(jù)中心內(nèi)的放置的過程中使用的任何其它信息。
[0052]在步驟230,在數(shù)據(jù)中心內(nèi)對所請求的VM的指派被確定。使用用戶VM請求信息、網(wǎng)絡(luò)管理信息、數(shù)據(jù)中心管理信息等以及其中的各種組合來確定在數(shù)據(jù)中心中對所請求的VM的指派??砂凑誚M指派信息來指明在數(shù)據(jù)中心內(nèi)對所請求的VM的指派。VM指派信息包括將要在其中放置所請求的VM的數(shù)據(jù)中心的標(biāo)識、將要在其上放置所請求的VM的數(shù)據(jù)中心內(nèi)的設(shè)備的標(biāo)識(例如按照每個VM將被放置的機架、刀片式服務(wù)器和CPU (以及可選地,核))等。VM指派信息還可包括被配置為在在所請求的VM之間供應(yīng)連接性的過程中使用的網(wǎng)絡(luò)配置信息。在一種實施方式中,按照參照圖3的描述和說明來確定在數(shù)據(jù)中心內(nèi)對所請求的VM的指派。
[0053]在步驟240,使用VM指派信息在云環(huán)境內(nèi)供應(yīng)所請求的VM??刹捎萌魏芜m當(dāng)?shù)哪J絹韴?zhí)行在云環(huán)境內(nèi)對所請求的VM的供應(yīng)(例如使用發(fā)送到所請求的VM將被指派到的數(shù)據(jù)中心的供應(yīng)消息)。
[0054]在步驟250,方法200結(jié)束。
[0055]圖3描述用于確定在數(shù)據(jù)中心內(nèi)對VM的指派以供在云環(huán)境的數(shù)據(jù)中心內(nèi)供應(yīng)VM的過程中使用的方法的一種實施方式。雖然說明和描述是按先后順序進行的,但是需要注意的是,方法300的步驟可以同時執(zhí)行和/或與按所呈現(xiàn)的順序不同的順序執(zhí)行。
[0056]在步驟310,方法300開始。
[0057]在步驟320,為所請求的VM確定數(shù)據(jù)中心的集合。
[0058]所述數(shù)據(jù)中心的集合包括所請求的VM將被指派到的一個或多個數(shù)據(jù)中心。所述數(shù)據(jù)中心的集合包括云環(huán)境的一個或多個可用數(shù)據(jù)中心。注意的是,單個數(shù)據(jù)中心可能不具有足夠的容量來托管所有所請求的W,并且進一步講,即使單個數(shù)據(jù)中心中存在足夠的容量來托管所有所請求的VM,用戶也可能想要將所請求的VM分布到多個數(shù)據(jù)中心上,以便提聞恢復(fù)能力。
[0059]可使用用戶VM請求信息來確定數(shù)據(jù)中心的集合??墒褂镁W(wǎng)絡(luò)管理信息、數(shù)據(jù)中心管理信息等中的一個或多個以及其中的各種組合來確定數(shù)據(jù)中心的集合。可使用適合在確定數(shù)據(jù)中心的集合的過程中使用的任何其它信息來確定數(shù)據(jù)中心的集合。
[0060]在一種實施方式中,以趨于進行以下步驟的方式來確定數(shù)據(jù)中心的集合:(1)最小化數(shù)據(jù)中心的集合中的數(shù)據(jù)中心的數(shù)量;以及(2)降低與所請求的VM的放置相關(guān)聯(lián)的數(shù)據(jù)中心間流量(并且從而最小化所消耗的網(wǎng)絡(luò)帶寬)。
[0061]在一種實施方式中,通過選擇可用數(shù)據(jù)中心中的滿足以下條件的子集來確定數(shù)據(jù)中心的集合:(I)最小化任何兩個數(shù)據(jù)中心之間的最大距離(例如跳的數(shù)量);(2)受一個或多個限制(例如所期望數(shù)量的VM的可用性、放置在每個數(shù)據(jù)中心中的VM的最小和/或最大數(shù)量等)。需要注意的是,對滿足這些條件的數(shù)據(jù)中心的子集的選擇可被看做子圖選擇問題(這里將其表示為數(shù)據(jù)中心選擇問題MINDIAMETER (最小直徑)),其描述如下。
[0062]令可用數(shù)據(jù)中心的集合被表示為圖(G)。圖G=(V,E)包括頂點(V)和邊(E)。頂點(V)對應(yīng)于數(shù)據(jù)中心。頂點(V)具有與之關(guān)聯(lián)的頂點權(quán)重(W),其中頂點(V)的權(quán)重(W)對應(yīng)于數(shù)據(jù)中心中的可用VM的數(shù)量。圖是完全圖,其中邊(E)對應(yīng)于連接數(shù)據(jù)中心的通信路徑(例如經(jīng)由因特網(wǎng)和/或任何其它相關(guān)聯(lián)的分組網(wǎng)絡(luò))。邊(E)具有與之關(guān)聯(lián)的邊權(quán)重或長度(I),其中兩個數(shù)據(jù)中心之間的邊(E)的長度(I)對應(yīng)于數(shù)據(jù)中心之間的距離(例如跳的數(shù)量)。
[0063]在一種實施方式中,可基于可在用戶VM請求中指明的一個或多個VM指派限制對初始圖G進行修改。如果用戶VM請求包括關(guān)于可被放置在數(shù)據(jù)中心內(nèi)的VM的最大數(shù)量的限制,則頂點(V)的權(quán)重不能大于該限制(即具有大于所述限制的權(quán)重的頂點被從圖中移除)。如果用戶VM請求包括關(guān)于可被放置在數(shù)據(jù)中心內(nèi)的VM的最小數(shù)量的限制,則頂點(V)的權(quán)重不能小于該限制(即具有小于所述限制的權(quán)重的頂點被從圖中移除)。
[0064]令s表示用戶VM請求中所請求的VM的數(shù)量。在一種實施方式中,數(shù)據(jù)中心選擇問題MINDIAMETER對應(yīng)于找到權(quán)重之和至少等于s并且具有最小的直徑(即頂點之間的任何最小距離的最大長度)的G的子圖。需要注意的是,由于原始圖G是完全圖,所以由所選擇的頂點導(dǎo)致的子圖也是完全的。如此,在一種實施方式中,數(shù)據(jù)中心選擇問題MINDIAMETER對應(yīng)于找到最長邊的長度最小的子圖。
[0065]需要注意的是,數(shù)據(jù)中心選擇問題MINDIAMETER是NP-困難的,且對于任何的ε >0都不能被近似到2-ε內(nèi)。還注意的是,數(shù)據(jù)中心選擇問題MINDIAMETER可以從最大分團(clique)問題縮減,其中問題是找到最大尺寸的分團。縮減如下所述。給定具有最大分團問題的實例G= (V,E),則創(chuàng)建了具有最小直徑子圖問題的實例。新的完全圖G’ = (V’,E’,w,I)被創(chuàng)建。G’的頂點與G的頂點相同,并且具有權(quán)重一(I)。如果G中的兩個頂點u和V之間存在邊,則G’的相應(yīng)頂點之間的邊的長度是一(I);否則,頂點之間的邊的長度是二(2)。該圖中的邊滿足三角不等式。當(dāng)且僅當(dāng)G中的相應(yīng)子圖是分團的情況下,G’的子圖具有直徑一(I)。這是因為,如果G具有尺寸為k的分團,則G’的相應(yīng)頂點可被采用,以形成具有權(quán)重為k和直徑為一(I)的子圖。類似地,如果G’具有權(quán)重k和直徑I的子圖,則G的相應(yīng)頂點形成具有尺寸k的分團。當(dāng)且僅當(dāng)G中的相應(yīng)頂點是分團時,G’的子圖具有直徑一(I)。從而,可通過找到存在尺寸為s和直徑為一(I)的子圖的最大se {η, n-1,...]_}來找到對最大分團問題的解決方案。
[0066]需要再次注意的是,除非P=NP,否則對于任何的ε >0,數(shù)據(jù)中心選擇問題MINDIAMETER都不能被近似到因數(shù)2- ε內(nèi)。如果存在針對數(shù)據(jù)中心選擇問題MINDIAMETER的2-ε近似進程,則可按如下來解決最大分團問題。為了找到具有尺寸k的分團,使用以上的縮減來創(chuàng)建具有權(quán)重k的MINDIAMETER問題。如果存在尺寸為k的分團,則存在針對具有直徑一(I)的數(shù)據(jù)中心選擇問題MINDIAMETER的子圖。如果不存在這樣的分團,則數(shù)據(jù)中心選擇問題MINDIAMETER的直徑至少為二( 2 )。從而,如果針對數(shù)據(jù)中心選擇問題MINDIAMETER的2- ε進程返回直徑小于二(2)的子圖,則在原始的圖G中存在尺寸為k的分團。
[0067]在一種實施方式中,為解決最小直徑子圖問題(即數(shù)據(jù)中心選擇問題MINDIAMETER)提供近似進程。在一種實施方式中,進程所輸出的子圖的直徑至多為最優(yōu)子圖的直徑的兩倍。對于近似進程,假定三角不等式對圖中的邊權(quán)重成立。需要注意的是,三角不等式在這一問題設(shè)置中時有效的,這是因為邊的長度對應(yīng)于對應(yīng)數(shù)據(jù)中心之間的路徑長度。還應(yīng)注意的是,如果存在三個數(shù)據(jù)中心之間違反三角不等式,則仍可通過強制較長的邊采用由較短的邊形成的路徑來維持對三角不等式的符合。
[0068]在一種實施方式中,針對解決最小直徑子圖問題所提供的近似進程被實施為兩個進程,這里表示為FindMinStar (G, v, s)進程(在圖4A中說明和描述)和MinDiameterGraph (G, s)進程(在圖4B中說明和描述),其描述如下。需要注意的是,雖然主要說明和描述為單獨的進程,但是這些進程可被實施為更少或更多的進程,其中可為了提供所描述的功能執(zhí)行這些進程。還需要注意的是,雖然參照進程的特定實施(例如特定變量、進程的步驟的特定排列等)進行說明和描述,但是可以使用適于提供所描述的功能的任何其它方式來實施這些進程。
[0069]如此所述,圖4A的FindMinStar (G, V, s)進程410和圖4B的MinDiameterGraph (G, s)進程420被配置為確定VM將被指派到的數(shù)據(jù)中心的集合。
[0070]如圖4A中所述,F(xiàn)indMinStar (G, v, s)進程410被配置為包括頂點v的權(quán)重至少為S的子圖。通過以長度的增序向V增加節(jié)點來形成以頂點V為中心的星形拓撲,直到所述星形拓撲的權(quán)重至少為S為止。通過添加由星(star)中的節(jié)點引入的邊來形成最終的子圖。FindMinStar (G, v, s)進程410還通過隨著添加節(jié)點而維持直徑來計算所得到的子圖的直徑(其中存在如下限制,當(dāng)添加節(jié)點時,只有由該節(jié)點所引入的邊的長度大于當(dāng)前直徑的情況下,子圖的直徑能夠改變)。
[0071]如圖4B中所述,MinDiameterGraph (G, s)進程420被配置為通過為每個頂點調(diào)用FindMinStar (G, v, s)進程410來找到權(quán)重至少為s的子圖。MinDiameterGraph(G, s)進程420隨后選擇具有最小直徑的子圖。
[0072]FindMinStar (G, v, s)進程410找到權(quán)重至少為s的子圖,其在入射到V上的任何邊的長度是最小的。FindMinStar (G, v, s)進程410首先向子圖添加頂點V。FindMinStar (G, v, s)進程410隨后以邊權(quán)重的增加順序來添加與v相鄰的頂點,直到子圖中的頂點的權(quán)重之和為s為止。從而,F(xiàn)indMinStar (G, v, s)進程410找到針對入射到v的邊具有最小邊權(quán)重的子圖。
[0073]MinDiameterGraph (G, s)進程420找到權(quán)重至少為s的子圖,其直徑至多為最優(yōu)的兩倍。MinDiameterGraph (G, s)進程 420 為 G 的每個頂點調(diào)用 FindMinStar (G, v, s)進程410并選擇具有最小直徑的一個。令V’作為FindMinStar (G,V,s)進程410所返回的圖G’的直徑最小的節(jié)點,并且令I(lǐng)’作為入射到子圖G’中的V’上的最長邊的長度。由于邊長度遵循三角不等式,并且G’是完全圖,所以G’中的任何邊的長度至多為21’且從而G’的直徑最多為21’。
[0074]關(guān)于數(shù)據(jù)中心選擇問題MINDIAMETER,需要注意的是,針對解決數(shù)據(jù)中心選擇問題MINDIAMETER的近似進程是2-近似進程。令G_作為數(shù)據(jù)中心選擇問題MINDIAMETER的最優(yōu)方案。令I(lǐng)”作為Gtjpt的最長邊。令u”和V”作為I”的端點。由于Gtjpt的邊滿足三角不等式,所以Gtjpt中在u”和V”之間的最短距離時I”。從而,G_的直徑至少為I”?,F(xiàn)在,在運行 MinDiameterGraph(G, s)進程 420 的同時,考慮由 FindMinStar (G, v, s)進程 410 所返回的圖G”。如上所述,入射到G”上的V”的邊的長度至多為I”。由于G”的直徑至多為21”,所以由MinDiameterGraph (G,s)進程420所返回的子圖(即G’)的直徑最多為21”。從而,針對解決數(shù)據(jù)中心選擇問題MINDIAMETER的近似進程是2-近似進程。
[0075]現(xiàn)在返回圖3,需要注意的是,可以以其它方式(例如,使用其它信息、以針對滿足其他條件的方式、使用其它進程等,以及其中的各種組合)執(zhí)行針對所請求的VM的所確定的數(shù)據(jù)中心的集合。
[0076]在步驟330,確定將所請求的VM向數(shù)據(jù)中心的集合中的數(shù)據(jù)中心的指派。
[0077]將所請求的VM向數(shù)據(jù)中心的集合中的數(shù)據(jù)中心的指派針對數(shù)據(jù)中心的集合中的每個數(shù)據(jù)中心指明向該數(shù)據(jù)中心所指派的所請求的VM的數(shù)量。需要注意的是,將所請求的VM向數(shù)據(jù)中心的集合中的數(shù)據(jù)中心的指派不必指明VM將被指派到的數(shù)據(jù)中心的設(shè)備(由于這可在步驟340處被確定)或VM中的哪一個將被指派到數(shù)據(jù)中心中的哪一個(由于這可在步驟350處被確定)。
[0078]可使用用戶VM請求信息、網(wǎng)絡(luò)管理信息、數(shù)據(jù)中心管理信息等中的一個或多個以及其各種組合將所請求的VM指派到所述數(shù)據(jù)中心的集合中的數(shù)據(jù)中心。在一種實施方式中,以趨于最小化數(shù)據(jù)中心間流量的方式將所請求的VM指派到數(shù)據(jù)中心的集合中的數(shù)據(jù)中心。在一種實施方式中,根據(jù)用戶VM請求中指明的一個或多個VM指派限制將所請求的VM指派到數(shù)據(jù)中心的集合中的數(shù)據(jù)中心。在一種實施方式中,例如其中用戶VM請求信息包括與向不同數(shù)據(jù)中心指派不同類型的VM相關(guān)聯(lián)的VM類型限制,基于VM類型限制來將所請求的VM指派到數(shù)據(jù)中心的集合中的數(shù)據(jù)中心。
[0079]在一種實施方式中,使用被配置用于向數(shù)據(jù)中心指派VM的VM指派進程將所請求的VM指派到數(shù)據(jù)中心 的集合中的數(shù)據(jù)中心。一般來講,VM指派進程的目標(biāo)是將圖分成多個等尺寸的部分,從而圖的這些部分之間存在很少連接(由此,最小化支持所請求的VM所需的網(wǎng)絡(luò)通信資源)。然而,即使將圖分成兩個相等部分的最簡單情況(典型的被稱作圖二分問題)也是NP-困難的。此外,相關(guān)問題是K-切割問題,其中目標(biāo)是將圖分成K個部分,其中每部分的尺寸也是被輸入所指明的。
[0080]在VM指派進程中,用戶VM請求可被看作需要被分割的圖。圖的節(jié)點表示VM,且圖的鏈接表示由鏈接所連接的VM對之間所需的相關(guān)帶寬。對圖的每個部分表示需要被指派到相同數(shù)據(jù)中心的VM的集合。每個部分的尺寸需要由數(shù)據(jù)中心中用于托管VM的可用資源的數(shù)量作為上限。與傳統(tǒng)圖分割問題不同,該問題不可指明每個部分中的節(jié)點的具體數(shù)量;反而,其只指明每個部分中的最大節(jié)點數(shù)。這是由于,在任一點,在云環(huán)境中可用于托管VM的資源的數(shù)量要多于由用戶所請求的VM的數(shù)量。結(jié)果,VM指派進程可通過在具有可用于托管VM的最大的資源的一個或多個數(shù)據(jù)中心之內(nèi)指派VM來最優(yōu)化(數(shù)據(jù)中心間的)通信。針對向數(shù)據(jù)中心指派VM,數(shù)據(jù)中心間通信成本取決于數(shù)據(jù)中心間的通信路由。從而,為了最小化應(yīng)用的通信成本,對數(shù)據(jù)中心部分之間的通信距離進行考慮。
[0081]關(guān)于VM指派進程,可按如下一般化所述問題。給定具有指派的邊權(quán)重w:E — N的圖G= (V,E),以及具有將部分i和j之間的距離表示為d(i,j)的分割容量kl,k2,…的集合。將V分成分離的集合Cl,C2…,Cm,以使得Ci |≤Ki以及
TL Σ?=?+ι Σ,?π, h<vi,爾,J)



O
[0082]關(guān)于VM指派進程,需要注意的是,要么可以以遞增的方式分離地處理單獨的用戶請求,要么可將所有多重請求合并在一起以形成大的分割圖,其中該分割圖在不同用戶請求的節(jié)點之間不包含任何邊。
[0083]關(guān)于VM指派進程,需要注意的是,圖分割問題是NP-困難的,并且沒有任何進程具有良好的(例如常量的)近似保證。
[0084]在一種實施方式中,VM指派進程被實施為貪婪啟發(fā)式進程。
[0085]在一種實施方式中,VM指派進程一次選擇一個數(shù)據(jù)中心??梢砸匀魏芜m當(dāng)?shù)捻樞騺磉x擇數(shù)據(jù)中心(例如執(zhí)行每個選擇以使得選擇帶有可用于托管VM的最大數(shù)量資源的數(shù)據(jù)中心、基于在用戶VM請求中指明的一個或多個VM指派限制等,以及其各種組合)并向所選的數(shù)據(jù)中心指派盡可能多的VM。VM指派進程選擇具有參數(shù)的最大值的VM (例如進入/離開的帶寬、鄰居數(shù)量等)并向所選的數(shù)據(jù)中心指派所選的VM。所選的VM被添加到集合C,其是指派到所選數(shù)據(jù)中心的VM的集合。VM指派進程隨后考慮C的所有鄰居并選擇具有到往/離開C的最大流量的W,以及將所選的VM添加到集合C??芍貜?fù)該進程直到針對所選的數(shù)據(jù)中心滿足條件為止(例如所選數(shù)據(jù)中心的所有可用資源已被耗盡,針對所選的數(shù)據(jù)中心滿足按照數(shù)據(jù)中心限制的最大VM數(shù)量等XVM指派進程從而選擇下一個數(shù)據(jù)中心并針對該下一個所選數(shù)據(jù)中心和尚未被指派到(V-C)數(shù)據(jù)中心的剩余VM的圖重復(fù)所述進程。
[0086]在一種實施方式中,通過交換特定節(jié)點來修改VM指派進程。VM指派進程考慮在不同的部分中存在的節(jié)點對。VM進程可確定交換所考慮的節(jié)點是否會改進所述方案(例如使用較少的數(shù)據(jù)中心間帶寬XVM進程可確定將節(jié)點在部分之間移動(例如從其當(dāng)前部分移動到具有可用容量的不同部分)是否會改進所述方案。VM指派進程選擇一個或多個所考慮的移動并進行所選的移動。需要注意的是,該進程可被重復(fù)(例如,直到達到了移動的閾值數(shù)量、直到所有移動已被考慮且VM指派中沒有任何進一步的改進空間,等等)
[0087]在步驟340,針對數(shù)據(jù)中心的集合中的每個數(shù)據(jù)中心,選擇將被用來托管將被指派到的數(shù)據(jù)中心的所請求的VM的數(shù)據(jù)中心的物理資源。
[0088]對數(shù)據(jù)中心內(nèi)的物理資源的選擇可包括對將被用來托管指派到數(shù)據(jù)中心的VM的數(shù)據(jù)中心的機架的選擇。對數(shù)據(jù)中心內(nèi)的物理資源的選擇可進一步包括對所選的機架上的刀片式服務(wù)器的選擇。對數(shù)據(jù)中心內(nèi)的物理資源的選擇可進一步包括對所選的機架的所選刀片式服務(wù)器上的CPU的選擇。對數(shù)據(jù)中心內(nèi)的物理資源的選擇可進一步包括對所選機架的所選刀片式服務(wù)器的所選CPU的核心的選擇。如此,用于對數(shù)據(jù)中心內(nèi)的物理資源的選擇的進程在此可被更為一般地稱為設(shè)備選擇進程、機器選擇進程和/或物理資源選擇進程。需要注意的是,對物理資源的選擇不必指明從將被指派到數(shù)據(jù)中心的CM到數(shù)據(jù)中心的所選物理資源的映射(這可在步驟350被確定)。
[0089]可以以趨于最小化數(shù)據(jù)中心內(nèi)的VM之間的機架間流量的方式執(zhí)行對數(shù)據(jù)中心的物理資源的選擇。這將趨于防止指派到數(shù)據(jù)中心內(nèi)的VM之間的長通信路徑,由此防止數(shù)據(jù)中心內(nèi)的VM之間的通信中的較大時延并減少數(shù)據(jù)中心內(nèi)對資源(例如通信資源)的使用。
[0090]這可大大縮減較大數(shù)據(jù)中心(例如那些具有上百機架、上千機架甚至更多機架的數(shù)據(jù)中心)中的通信延遲,其中彼此位置相對不近的機架之間的任何通信可能必須遍歷各個數(shù)量/級別的聚合開關(guān)。
[0091]可以以趨于提供彈性的方式執(zhí)行對數(shù)據(jù)中心的物理資源的選擇。
[0092]需要注意的是,對數(shù)據(jù)中心的物理資源的選擇可改進數(shù)據(jù)中心利用以及請求了 VM的一個或多個用戶應(yīng)用的性能。
[0093]在一種實施方式中,使用機架選擇進程(例如實施機器選擇進程,其中選擇了針對所請求的VM的一個或多個機架)執(zhí)行對所選數(shù)據(jù)中心的一個或多個機架的選擇。
[0094]在一種實施方式中,機架選擇進程被實施為用于數(shù)據(jù)中心選擇的數(shù)據(jù)中心選擇進程的修改版本。在該實施方式中,機架選擇進程是2-近似進程,其被配置為最小化機架之間的最大距離。在這一實施方式中,圖的頂點表示機架,且對于每個機架,機架的相關(guān)聯(lián)的權(quán)重表示機架中用于支持指派到數(shù)據(jù)中心的VM的可用的資源數(shù)量。
[0095]在一種實施方式中,其中數(shù)據(jù)中心的拓撲是分層網(wǎng)絡(luò),機架選擇進程可確定針對機架選擇問題的最優(yōu)方案。所述拓撲可被認(rèn)為是樹型拓撲,其中樹的根節(jié)點表示最高層的一個或多個開關(guān)(例如用于提供到往/來自數(shù)據(jù)中心的連接性的路由器),根節(jié)點的子節(jié)點表示開關(guān)(例如頂級聚合開關(guān))的網(wǎng)絡(luò)層,以此類推,直到表示機架的葉節(jié)點。需要注意的是,在這一樹中,所有的葉節(jié)點在相同的級別。樹被擴大為包括標(biāo)簽,標(biāo)簽用于針對每個機架指示對于支持指派到數(shù)據(jù)中心的VM可用的機架的資源數(shù)量。
[0096]在一種實施方式中,使用刀片式服務(wù)器選擇進程來執(zhí)行對機架的刀片式服務(wù)器的選擇(例如使用實施機器選擇進程,其中選擇針對所請求的VM的機架和刀片式服務(wù)器)。在一種實施方式中,刀片式服務(wù)器選擇進程被實施為機架選擇進程的修改版本,其中樹的葉節(jié)點表示刀片式服務(wù)器級別,且葉節(jié)點的父節(jié)點表示機架。
[0097]在一種實施方式中,使用CPU選擇進程(例如使用對機器選擇進程的實施,其中選擇針對所請求的VM的機架、刀片式服務(wù)器和CPU)來執(zhí)行對機架的刀片式服務(wù)器的CPU的選擇。在一種實施方式中,CPU選擇進程被實施為機架選擇進程的修改版本,其中樹的葉節(jié)點表示CPU級別,且刀片式服務(wù)器節(jié)點的父節(jié)點表示機架。
[0098]如上所述,可針對數(shù)據(jù)中心執(zhí)行機器選擇進程,以用于選擇數(shù)據(jù)中心內(nèi)的指派到數(shù)據(jù)中心的VM被指派到的一個或多個機器。
[0099]在一種實施方式中,針對VM被指派到的給定數(shù)據(jù)中心,機器選擇進程被配置為最小化指派到數(shù)據(jù)中心的兩個VM之間的最大通信距離。這可被譯為,找到葉上的標(biāo)簽之和至少等于所需的VM的目標(biāo)數(shù)量的具有最小高度的有根子樹。如在數(shù)據(jù)中心選擇進程中一樣,機器選擇進程可考慮到一個或多個VM指派限制(例如每個機架可被指派的VM的最大數(shù)量、每個機架可被指派的VM的最小數(shù)量等)。可通過根據(jù)VM指派限制改變表示機架的節(jié)點的權(quán)重來考慮這些類型的VM指派限制。
[0100]在一種實施方式中,機器選擇進程被實施為FindMinHeightTree (T, r, s)進程(如圖5中描述和說明)。
[0101]如圖5中所述,FindMinHeightTree (T, r, s)進程500被配置為針對給定的數(shù)據(jù)中心選擇將被用于托管指派到該數(shù)據(jù)中心的VM的數(shù)據(jù)中心的物理資源。令s作為將被指派到數(shù)據(jù)中心內(nèi)的VM的數(shù)量。令T作為數(shù)據(jù)中心資源的樹表示(例如計算資源、網(wǎng)絡(luò)資源等)。下列兩個變量與T中的每個節(jié)點相關(guān)聯(lián):(I)權(quán)重(V),表示以節(jié)點V處為根的可用于支持VM的數(shù)據(jù)中心資源的數(shù)量;以及(2)高度(V),表示節(jié)點的高度。只初始化葉節(jié)點的權(quán)重變量。FindMinHeightTree (T, r, s)進程500找到以r處為根的子樹,其中該子樹的葉節(jié)點具有至少為s的累積權(quán)重且具有最小高度。FindMinHeightTree (T,r, s)進程500執(zhí)行對樹的順次遍歷,并維持每個節(jié)點的高度和權(quán)重以及該具有至少為s的權(quán)重的最小高度子樹的根。
[0102]現(xiàn)在返回到圖3,需要注意的是,對數(shù)據(jù)中心的物理資源的選擇可通過其它方式來執(zhí)行(例如使用其它信息、以滿足其它條件的方式、使用其它進程等,以及其各種組合)。
[0103]在步驟350,針對每個所請求的VM,確定將所請求的VM向所請求的VM所被指派的數(shù)據(jù)中心的物理資源的指派。將VM向數(shù)據(jù)中心的物理資源的指派包括將VM向托管VM的機架、刀片式服務(wù)器和CPU (以及可選的,CPU上的核)的指派。
[0104]可使用用戶VM請求信息、數(shù)據(jù)中心管理信息等中的一個或多個以及其各種組合將所請求的VM指派到所述數(shù)據(jù)中心的物理資源。在一種實施方式中,以趨于最小化數(shù)據(jù)中心內(nèi)的機架間流量的方式將VM指派到數(shù)據(jù)中心的物理資源。在一種實施方式中,可根據(jù)用戶VM請求中指明的一個或多個VM指派限制執(zhí)行將VM向?qū)⑼泄躒M的數(shù)據(jù)中心的物理資源的指派。在一種實施方式中,例如其中用戶VM請求信息包括與向不同數(shù)據(jù)中心指派不同類型的VM相關(guān)聯(lián)的VM類型限制,可基于VM類型限制執(zhí)行將VM向?qū)⑼泄躒M的數(shù)據(jù)中心的物理資源的指派。
[0105]在一種實施方式中,使用被配置用于向數(shù)據(jù)中心的物理資源指派VM的VM指派進程執(zhí)行將VM向?qū)⑼泄躒M的數(shù)據(jù)中心的物理資源的指派。一般來講,VM指派進程的目標(biāo)是將圖分成多個等尺寸的部分,從而圖的這些部分之間存在很少連接(由此,最小化支持將在數(shù)據(jù)中心中托管的所請求的VM所需的網(wǎng)絡(luò)通信資源)。然而,即使將圖分成兩個相等部分的最簡單情況(典型的被稱作圖二分問題)也是NP困難的。此外,相關(guān)問題是K-切割問題,其中目標(biāo)是將圖分成K個部分,其中每部分的尺寸也是被輸入所指明的。
[0106]在VM指派進程中,用戶VM請求可被看作需要被分割的圖。圖的節(jié)點表示VM,且圖的鏈接表示由鏈接所連接的VM對之間所需的相關(guān)帶寬。對圖的每個部分表示需要被指派到相同機架的VM的集合。每個部分的尺寸需要由機架中用于托管VM的可用的資源的數(shù)量作為上限。與傳統(tǒng)圖分割問題不同,該問`題可以不指明每個部分中的節(jié)點的具體數(shù)量;反而,其只指明每個部分中的最大節(jié)點數(shù)。這是由于,在任一點,在云環(huán)境中針對托管VM的可用的資源的數(shù)量要多于由用戶所請求的VM的數(shù)量。結(jié)果,VM指派進程可通過在針對托管VM的具有最大的可用資源的機架之內(nèi)指派VM來最優(yōu)化(機架間的)通信。為了在數(shù)據(jù)中心內(nèi)指派VM,機架間的數(shù)據(jù)中心內(nèi)通信成本取決于數(shù)據(jù)中心的開關(guān)分層中的機架的臨近性。從而,為了最小化應(yīng)用的通信成本,將機架部分之間的通信距離考慮在內(nèi)。
[0107]關(guān)于VM指派進程,所述問題可概括如下。給定具有指派的邊權(quán)重w:E — N的圖G= (V, E),以及具有將部分i和j之間的距離表示為d(i,j)的部分容量kl,k2,…的集合。將
V分成分離的集合 Cl,C2...,Cm,以使得 Ci I ( Ki 以及
【權(quán)利要求】
1.一種設(shè)備,該設(shè)備包括: 處理器和存儲器,所述處理器被配置為: 接收針對虛擬資源的請求,其中所述請求包括所請求的虛擬資源的數(shù)量和一個或多個虛擬資源指派限制; 接收與所述云環(huán)境相關(guān)聯(lián)的管理信息;以及 使用所請求的虛擬資源的數(shù)量、所述一個或多個虛擬資源指派限制、以及所述管理信息來確定所請求的虛擬資源在所述云環(huán)境內(nèi)的指派。
2.根據(jù)權(quán)利要求1所述的設(shè)備,其中所述云環(huán)境包括多個數(shù)據(jù)中心,其中所述管理信息包括以下至少一者: 與所述云環(huán)境的數(shù)據(jù)中心之間的數(shù)據(jù)中心間通信相關(guān)聯(lián)的網(wǎng)絡(luò)管理信息;以及 包括針對所述數(shù)據(jù)中心中的至少一個數(shù)據(jù)中心與所述數(shù)據(jù)中心相關(guān)聯(lián)的管理信息的云管理信息。
3.根據(jù)權(quán)利要求1所述的設(shè)備,其中所述一個或多個虛擬資源指派限制包括以下至少一者:每個機架將被指派的虛擬資源的最大數(shù)量、每個機架將被指派的虛擬資源的最小數(shù)量、將用于每個數(shù)據(jù)中心的機架的最大數(shù)量、將用于每個數(shù)據(jù)中心的機架的最小數(shù)量、每個數(shù)據(jù)中心將被指派的虛擬資源的最大數(shù)量、每個數(shù)據(jù)中心將被指派的虛擬資源的最小數(shù)量、將被使用的數(shù)據(jù)中心的最大數(shù)量、以及將被使用的數(shù)據(jù)中心的最小數(shù)量。
4.根據(jù)權(quán)利要求1所 述的設(shè)備,其中確定所請求的虛擬資源在所述云環(huán)境內(nèi)的指派包括: 從在所述云環(huán)境內(nèi)的可用數(shù)據(jù)中心的集合確定所述虛擬資源將被指派到的數(shù)據(jù)中心的集合; 確定將所述虛擬資源向所述虛擬資源將被指派到的數(shù)據(jù)中心的集合的指派; 針對將被指派所述虛擬資源的數(shù)據(jù)中心的集合的至少一個數(shù)據(jù)中心,選擇所述數(shù)據(jù)中心的物理資源,以托管將被指派到所述數(shù)據(jù)中心的虛擬資源;以及 針對所述虛擬資源中的至少一個虛擬資源,確定將所述虛擬資源向所述虛擬資源被指派到的數(shù)據(jù)中心的物理資源的指派。
5.根據(jù)權(quán)利要求4所述的設(shè)備,其中確定所述虛擬資源將被指派到的數(shù)據(jù)中心的集合包括: 將所述云環(huán)境表示為圖,其中所述圖包括表示所述可用的數(shù)據(jù)中心且具有與之相關(guān)聯(lián)的多個權(quán)重的多個頂點,其中所述圖包括表示所述可用的數(shù)據(jù)中心之間的多個通信路徑且具有與之相關(guān)聯(lián)的多個長度的多個邊; 確定所述圖的子圖,該子圖具有至少等于所請求的虛擬資源的數(shù)量的權(quán)重和以及最小直徑;以及 從所述子圖確定所述虛擬資源將被指派到的數(shù)據(jù)中心的集合。
6.根據(jù)權(quán)利要求4所述的設(shè)備,其中確定將所述虛擬資源向所述虛擬資源將被指派到的數(shù)據(jù)中心的集合的指派包括: 將所述針對虛擬資源的請求表示為圖,其中所述圖包括多個頂點和多個邊,所述頂點表示所述虛擬資源、且所述邊表示由所述邊所連接的虛擬資源之間的相關(guān)帶寬; 將所述圖分割成多個部分以由此形成分割圖,其中所述分割圖的每個部分表示在相同的各個數(shù)據(jù)中心中將被調(diào)度的各個虛擬資源的集合,其中所述分割圖的每個部分具有與之關(guān)聯(lián)的尺寸,該尺寸以在所述各個數(shù)據(jù)中心中可用的虛擬資源的數(shù)量作為上限;以及 使用所述分割圖來確定將所述虛擬資源向所述虛擬資源將被指派到的數(shù)據(jù)中心的集合的指派。
7.根據(jù)權(quán)利要求4所述的設(shè)備,其中選擇所述數(shù)據(jù)中心的物理資源以托管將被指派到所述數(shù)據(jù)中心的虛擬資源包括: 將所述數(shù)據(jù)中心表示為樹型拓撲,其中所述樹型拓撲包括表示所述數(shù)據(jù)中心的資源的多個節(jié)點,其中所述樹型拓撲的節(jié)點中的每一個節(jié)點具有與之相關(guān)聯(lián)的權(quán)重,該權(quán)重表示以所述節(jié)點為根的虛擬資源的數(shù)量,其中所述樹型拓撲的節(jié)點中的每一個節(jié)點具有與之相關(guān)聯(lián)的高度,該高度表示所述樹型拓撲內(nèi)的節(jié)點的高度,其中所述多個節(jié)點包括分別表示所述數(shù)據(jù)中心的多個機架、刀片式服務(wù)器或處理器的多個葉節(jié)點; 確定所述樹型拓撲的子樹,該子樹的葉節(jié)點具有至少等于將被指派到所述數(shù)據(jù)中心的虛擬資源的所述數(shù)量的累積權(quán)重以及最小高度;以及 從所述子樹確定將所述數(shù)據(jù)中心的物理資源以托管將被指派到所述數(shù)據(jù)中心的所述虛擬資源。
8.根據(jù)權(quán)利要求4所述的設(shè)備,其中確定將所述虛擬資源向所述虛擬資源將被指派到的數(shù)據(jù)中心的物理資源的指派包括: 選擇所述虛擬資源將被指派到的數(shù)據(jù)中心的機架; 選擇所述虛擬資源將被指派到的數(shù)據(jù)中心的所選機架的刀片式服務(wù)器;以及選擇所述虛擬資源將被指派到的數(shù)據(jù)中心的所選機架的所選刀片式服務(wù)器的中央處理單元(CPU)。`
9.一種存儲指令的計算機可讀存儲媒介,其中所述指令被計算機執(zhí)行時使得所述計算機執(zhí)行一種方法,該方法包括: 接收針對虛擬資源的請求,其中所述請求包括所請求的虛擬資源的數(shù)量和一個或多個虛擬資源指派限制; 接收與所述云環(huán)境相關(guān)聯(lián)的管理信息;以及 使用所請求的虛擬資源的數(shù)量、所述一個或多個虛擬資源指派限制、以及所述管理信息來確定將所請求的虛擬資源在所述云環(huán)境內(nèi)的指派。
10.一種方法,該方法包括: 使用處理器和存儲器以便: 接收針對虛擬資源的請求,其中所述請求包括所請求的虛擬資源的數(shù)量和一個或多個虛擬資源指派限制; 接收與所述云環(huán)境相關(guān)聯(lián)的管理信息;以及 使用所請求的虛擬資源的數(shù)量、所述一個或多個虛擬資源指派限制、以及所述管理信息來確定將所請求的虛擬資源在所述云環(huán)境內(nèi)的指派。
【文檔編號】G06F9/50GK103797463SQ201280037075
【公開日】2014年5月14日 申請日期:2012年6月18日 優(yōu)先權(quán)日:2011年7月27日
【發(fā)明者】M·A·阿里徹麗 申請人:阿爾卡特朗訊公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
高淳县| 多伦县| 东港市| 汾阳市| 天柱县| 洪泽县| 武城县| 长武县| 资兴市| 阳曲县| 孝感市| 都江堰市| 潮州市| 柳林县| 云浮市| 台北县| 上饶市| 英超| 乌海市| 鄄城县| 盐亭县| 洞口县| 额敏县| 西藏| 固始县| 河南省| 鄂托克前旗| 进贤县| 延边| 瑞昌市| 额济纳旗| 阜城县| 花莲市| 平塘县| 麦盖提县| 岳普湖县| 普格县| 肇东市| 荣昌县| 波密县| 彰武县|