專利名稱:數(shù)據(jù)中心中的應用分配的制作方法
技術領域:
本發(fā)明涉及在數(shù)據(jù)中心中的應用分配。具體地,本發(fā)明涉及數(shù)據(jù)中心的分配實體、操作數(shù)據(jù)中心的分配實體的方法、計算機程序、計算機程序產品、以及操作數(shù)據(jù)中心的方法和這樣的數(shù)據(jù)中心。
背景技術:
近來數(shù)據(jù)中心由于其提供應用的遠程和/或分布式執(zhí)行而吸引了更大的關注。盡管應用在遠離用戶的地方運行,后者可以從任何地方經由網絡(例如,互聯(lián)網)來使用、訪問、和操作可以在虛擬機上運行的應用。在該上下文中,已經設計了術語云計算作為基于互聯(lián)網的計算的形式,在云計算中,通過互聯(lián)網向用戶提供共享資源、軟件和信息。換言之,可以將云計算視為利用和銷售數(shù)據(jù)中心的能力的新方式。在后者中,應用實際運行,且處理相應用戶數(shù)據(jù)。對于云來說通常是使用虛擬機鏡像,在虛擬機鏡像中,安裝了應用組。按照需要在數(shù)據(jù)中心的服務器上啟動這種鏡像。如果針對特定應用的需求改變,可以啟動或移除提供該應用的具有相同或類似類型的鏡像。從而,術語應用可以指定這樣的應用或一個或多個應用運行于其上的虛擬機鏡像(或簡稱為鏡像)。通常以分級方式來組織數(shù)據(jù)中心。如結合圖1所示出的,數(shù)據(jù)中心I'包括多個處理單元(所謂的刀片服務器)10。這些處理單元10經由至少一個交換機級200耦合到某種數(shù)據(jù)中心接入點。接入點可以是外部網關或路由器,例如所示網關實體30。在所示結果中,實際上存在3個交換機級201、202、203,它們構成了數(shù)據(jù)中心I'的分級結構??梢砸虼藢⑻峁┽槍玫耐ǔL摂M化平臺的處理單元10組織為機架(racks),進而將機架組織為行,進而將行組織為所謂的區(qū)。例如,區(qū)的分級將對應于交換機級201,行的分級將對應于交換機級202,以及機架的分級將對應于交換機級203。數(shù)據(jù)路徑40 (也可以被稱為網絡路徑)通向每個處理單元10。諸如網關實體30之類的中心路由器將整個數(shù)據(jù)中心Γ連接到如同互聯(lián)網的外部網絡,并將數(shù)據(jù)中心內的數(shù)據(jù)業(yè)務分發(fā)到各分級級別。因此,提供了分發(fā)數(shù)據(jù)中心中的數(shù)據(jù)業(yè)務的后續(xù)交換機或路由器。在所示示例中,區(qū)交換機將數(shù)據(jù)業(yè)務分發(fā)到行。行交換機分發(fā)到機架,以及最終,機架交換機將刀片服務器或處理單元連接到數(shù)據(jù)中心的其余部分。作為選項,數(shù)據(jù)中心中的上述分級結構還可以由數(shù)據(jù)中心各部分之間的附加直接捷徑來實現(xiàn),引入這些附加直接捷徑以增加內部聯(lián)網能力。例如,兩個機架路由器交換機23還可以彼此直接通信,而不管經由相關聯(lián)的行路由器交換機22的相應通信如何。此外,分級級別的數(shù)目可以根據(jù)數(shù)據(jù)中心的大小和復雜度而變化。為了運行對聯(lián)網能力有大量需求的應用,數(shù)據(jù)中心及其組件(分級級別、交換機、路由器等等)應當提供充足的網絡通信能力以滿足應用對通信業(yè)務的需求。這可以意味著需要將物理上對應用(或鏡像)的實例進行執(zhí)行的 一個處理單元經由網絡路徑耦合到滿足該應用的聯(lián)網需求的互聯(lián)網,該網絡路徑通過數(shù)據(jù)中心分級以及外部互聯(lián)(網關)。取決于應用和鏡像,這些聯(lián)網需求可以例如是特定的最小數(shù)據(jù)傳輸帶寬。當分配數(shù)據(jù)中心中的應用時,需要考慮鏡像及其應用的處理需求。在有充足處理容量可用的刀片服務器上啟動應用/鏡像。通常僅使用盡力而為(best effort)策略來考慮上述聯(lián)網需求:進行對高和低聯(lián)網能力的大致分類,并在應用分配中使用這種大致分類。這可以導致以下情形:應用原則上將能夠處理其任務,但是其與數(shù)據(jù)中心的其他部分或外部用戶的通信可能出現(xiàn)擁塞。結果將是對處理能力的糟糕使用,且最終導致糟糕的用戶體驗。在用戶體驗以及對應用或服務的響應性是關鍵性能指標的很多應用場景中,該情形是不可接受的。例如,這是針對電信服務的情況。如果數(shù)據(jù)中心的其他部分將具有用于向應用的需求提供服務的充足聯(lián)網能力,則該情形可以導致缺點。在該情況下,數(shù)據(jù)中心中的鏡像和應用的不同分配將導致顯著增強的整體服務。
發(fā)明內容
由獨立 權利要求的主題來解決上述問題。在從屬權利要求中定義了本發(fā)明的優(yōu)選實施例。本發(fā)明的目標是提供一種數(shù)據(jù)中心中的應用分配的增強概念。具體地,本發(fā)明的目標是考慮在選擇數(shù)據(jù)中心內合適的處理單元時應用所要求的網絡負載。因此,本發(fā)明的另一目標是提供一種操作數(shù)據(jù)中心的增強方法以及這樣一種增強數(shù)據(jù)中心。此外,本發(fā)明的目標是提供一種操作這種分配實體的相應方法以及提供相應計算機程序和計算機程序根據(jù)本發(fā)明的方面,提供了一種數(shù)據(jù)中心的分配實體,所述分配實體被配置為:接收用于向所述數(shù)據(jù)中心的多個處理單元中的一個處理單元分配應用的應用分配請求,所述應用分配請求包括應用網絡負載信息;獲取路徑網絡負載信息,所述路徑網絡負載信息指示通向所述多個處理單元的至少一部分的網絡路徑的網絡負載息;以及基于所述應用網絡負載信息和所述路徑網絡負載信息,從所述多個處理單元中選擇處理單元以分配所述應用。根據(jù)本發(fā)明的第二方面,提供了一種數(shù)據(jù)中心的分配實體,包括:接收用于向所述數(shù)據(jù)中心的多個處理單元中的一個處理單元分配應用的應用分配請求,所述應用分配請求包括應用網絡負載信息;獲取路徑網絡負載信息,所述路徑網絡負載信息指示通向所述多個處理單元的至少一部分的網絡路徑的網絡負載;以及基于所述應用網絡負載信息和所述路徑網絡負載信息,從所述多個處理單元中選擇處理單元以分配所述應用。根據(jù)本發(fā)明的第三方面,提供了一種數(shù)據(jù)中心的分配實體,包括:接收用于向所述多個處理單元中的一個處理單元分配應用的應用分配請求,所述應用分配請求包括應用網絡負載信息;獲取路徑網絡負載信息,所述路徑網絡負載信息指示通向所述多個處理單元的至少一部分的網絡路徑的網絡負載;以及基于所述應用網絡負載信息和所述路徑網絡負載信息,從所述多個處理單元中選擇處理單元以分配所述應用。根據(jù)本發(fā)明的第四方面,提供了一種數(shù)據(jù)中心的分配實體,包括:多個處理單元;通向所述多個處理單元的至少一部分的網絡路徑;以及根據(jù)本發(fā)明的各個實施例的分配實體。根據(jù)本發(fā)明的其他方面,提供了一種包括代碼在內的計算機程序,所述代碼可被加載到根據(jù)本發(fā)明的實施例的分配實體的代碼處理單元中,其中,所述代碼執(zhí)行如結合本實施例所述的方法。此外,本發(fā)明的又一方面是提供一種包括上述計算機程序在內的計算機程序產品。
現(xiàn)在將參照附圖來描述為了更好地理解發(fā)明概念而呈現(xiàn)的、但不應被視為對本發(fā)明進行限制的本發(fā)明的實施例,在附圖中:圖1示出了傳統(tǒng)數(shù)據(jù)中心的示意表示圖;圖2示出了具有根據(jù)本發(fā)明的實施例的分配實體的數(shù)據(jù)中心的示意表示圖;圖3示出了根據(jù)本發(fā)明的另一實施例的分配實體的交互的示意表示圖;圖4更詳細地示出了具有根據(jù)本發(fā)明的另一實施例的分配實體的數(shù)據(jù)中心的示意表不圖;圖5示出了根據(jù)本發(fā)明的另一實施例的分配實體的交互的示意表示圖;圖6更詳細地示出了具有根據(jù)本發(fā)明的另一實施例的分配實體的數(shù)據(jù)中心的示意表不圖;圖7示出了根據(jù)本發(fā)明的另一實施例的分配實體的示意表示圖;圖8A示出了本發(fā)明的方法實施例的示意流程圖;以及圖8B示出了本發(fā)明的方法實施例的示意流程圖。
具體實施例方式在本發(fā)明中,所謂的應用可以標識傳統(tǒng)意義上的應用,即為了向用戶提供所需功能而執(zhí)行的應用程序。這種功能包括文本處理、電子表格計算、數(shù)據(jù)庫和管理、圖像和圖形數(shù)據(jù)的處理/生成/管理等。然而,術語應用還可以標識要被理解為虛擬機的鏡像。虛擬機是在另一個實體(即物理機)上提供一個虛擬處理實體的軟件集合。例如,虛擬機可以是在采用基于Linux的操作系統(tǒng)的計算機上實際運行的虛擬Windows(TM)計算機。然而,在虛擬機和運行虛擬機的處理單元之間的操作系統(tǒng)可以不一定彼此不同。無論如何,虛擬機的特征在于:其向一個或多個用戶提供了用于執(zhí)行應用的一個封裝實體,其中,應用的執(zhí)行以及因此的虛擬機的運行不干擾運行在相同處理單元上的其他虛擬機(至少在某個給定的限制下)。在本發(fā)明中,處理單元應當被理解為用于在數(shù)據(jù)中心中處理數(shù)據(jù)和/或通信的一個單元。前述所謂的刀片服務器可以構成一個這種處理單元。然而,處理單元還可以是獨立PC或服務器,多個該獨立PC或服務器被布置為彼此互連以形成數(shù)據(jù)中心。可以至少借助交換機級來使用所述互聯(lián),然而通常交換機級對應于多個處理單元的物理設置,即區(qū)、行、機架等。然而處理單元還可以將其各自能力限制為數(shù)據(jù)轉發(fā)、路由和/或交換。因此,還可以將處理單元理解為其本身不運行鏡像的交換機或路由器實體,而是當在處理單元上運行應用時,應用可以構成路由器/交換機實體。如已經解釋的,數(shù)據(jù)中心采用至少一個交換機級,其可以反映多個處理單元的物理設置。如果例如將處理單元安裝在機架上,進而將機架布置為行,且其中多個這種行構成所謂的區(qū),將存在至少3個這種交換機級,例如用區(qū)交換機級、行交換機級和機架交換機級來表示。在不同交換機級的兩個交換/路由實體之間,存在至少一個用于數(shù)據(jù)通信的連接??梢詫?個不同或相鄰交換機級的2個這種實體之間的連接的部分表示為所謂的網絡子路徑,其中,將所謂的網絡路徑定義為在來自多個處理單元中的一個特定處理單元處結束。換言之,網絡路徑是針對被調度去往或來自特定處理單元的數(shù)據(jù)的可能路徑。網絡路徑可以在另一端在另一處理單元處或在某種中央接入點(例如,前述網關實體)處結束。從而,可以根據(jù)要求和所需數(shù)據(jù)流來定義網絡路徑的另一端。例如,如果要將來自和去往相應處理單元的數(shù)據(jù)路由至例如互聯(lián)網,可以在相應處理單元和某種高級接入點之間形成網絡路徑。然而,網絡路徑也可以很好地保持在一個數(shù)據(jù)中心內,例如在連接2個不同處理單元時。如果例如在若干處理單元之間分布一個應用,或當一個應用與運行在另一處理單元上的另一應用交互時,則這種數(shù)據(jù)流可以變?yōu)楸夭豢缮?。示例可以是作為第一處理單元上的第一應用運行的web服務器和作為第二處理上第二應用運行的視頻流服務器:兩個服務器應用可以交互之處在于:web服務器利用視頻流服務器來提供基于web的視頻流應用。在上述若干交換機級的設置中,通常存在樹狀路徑結構,即一個交換機級的一個交換機/路由器實體與更高交換機級的一個實體接收和發(fā)送數(shù)據(jù),反之,存在從一個交換機/路由器實體向更低交換機級的實體展開(fanout)若干連接。這樣,如也在下面更全面解釋的,在每個交換機級上對展開可能之一的選擇定義了通向特定處理單元的網絡路徑。根據(jù)本發(fā)明的各方面,當向數(shù)據(jù)中心添加應用/鏡像實例時,可以允許考慮數(shù)據(jù)中心的聯(lián)網能力。具體地,可以考慮數(shù)據(jù)中心的各部分的當前通信負載以及本地和臨時可用的聯(lián)網容量。這允許數(shù)據(jù)中心中更好的聯(lián)網負載分布,且其可以避免在使用數(shù)據(jù)中心提供的應用和服務時可能引起糟糕用戶體驗的瓶頸情形。此外,本發(fā)明的各方面還允許在整個數(shù)據(jù)中心中對容量的(軟)預留,從而與通常的盡力而為方案將會允許的相比,能夠以更受控的方式來提供服務級別協(xié)議(SLA)。與沒有該可能性的數(shù)據(jù)中心相比,這可以提供若干優(yōu)點,其中,可以用非常保守和謹慎的方式來給出SLA保證(如果有的話)。圖2和4示出了根據(jù)本發(fā)明的實施例的數(shù)據(jù)中心的示意圖。多個處理單元10經由至少一個交換機級200耦合到網關實體30。如上文已經描述的,交換機級200可以實際上包括與處理單元10的實際物理設置相對應的多于一個交換機級(區(qū)級、行級、機架級等等)??梢杂上鄳粨Q機實體來表示交換機級,例如區(qū)交換機21、行交換機22、以及機架交換機23。根據(jù)本實施例,提供了數(shù)據(jù)中心I中的分配實體50,其從網關實體30、一個或多個交換機級200、以及處理單元10接收數(shù)據(jù)和/或信息。借助所接收的數(shù)據(jù),分配實體50可以收集與將網關實體30連接到各個處理實體10的所有網絡路徑40相關的信息。更具體地,分配實體50可以收集與網關實體30和每個處理單元10之間的實際的、預測的、或調度的網絡負載相關的信息。所述信息可以涉及當前和/或給定間隔和/或將來的時間點。換言之,分配實體50被配置為獲取路徑網絡負載信息,該路徑網絡負載信息指示通向多個處理單元10的至少一部分的網絡路徑的網絡負載。此外,分配實體50被配置為接收用于向數(shù)據(jù)中心I的多個處理單元10之一分配應用的應用分 配請求500。應用分配請求500包括所謂的應用網絡負載信息,應用網絡負載信息在為了正確操作而要求的所需網絡負載和/或由應用引起的所需網絡負載方面對向多個處理單元中的一個處理單元分配的應用進行表征。還可以在保證服務質量(QoS)或指定最大響應時間方面來定義所述正確操作。此外,所述應用分配請求或所述應用網絡負載信息可以包括所謂的應用網絡負載簡檔,該應用網絡負載簡檔指定在事件、特定時間點或時間間隔等方面的所需網絡負載。這樣,分配實體50可以變得知道被請求分配的特定應用在特定時間點上要求或引起多少網絡負載。因此,分配實體50能夠選擇特定處理單元10',該特定處理單元10'經由滿足應用網絡負載信息所闡述的要求的一個特定網絡路徑40'耦合到網關實體30。例如,要分配給多個處理單元10之一的分配可以是要求大量網絡負載的視頻流服務器,因為視頻數(shù)據(jù)量通常很大。知道該應用的實際網絡要求,分配實體50可以選擇處理單元10'以分配應用,因為其相應網絡路徑40'能夠處理當前、將來或將來的特定時間和時間間隔處所要求的網絡負載。換言之,將分配實體50作為新節(jié)點(即,業(yè)務意識應用/鏡像分配器)加以引入,其允許在數(shù)據(jù)中心內找到對于應用/鏡像合適的分配。為了這么做,該節(jié)點收集與數(shù)據(jù)中心內的所有聯(lián)網鏈路上的壽命聯(lián)網負載情形相關的數(shù)據(jù)。使用路由器和交換機的業(yè)務測量接口來收集該信息。如果需要分配新的應用/鏡像,分配實體50可以執(zhí)行搜索模式,該搜索模式在數(shù)據(jù)中心的外部互聯(lián)節(jié)點(網關實體50)開始,并通過選取具有最低聯(lián)網負載的路徑,通過聯(lián)網節(jié)點/交換機的分級進行至刀片服務器(在所示示例中,處理單元10')。這樣,還引入了負載意識管理層。該層將數(shù)據(jù)中心結構的虛擬鏡像(從而,數(shù)據(jù)中心的模型)與瞬時聯(lián)網負載情形一起保存。此外,所分配的應用/鏡像附有對應的應用網絡負載信息或對應的聯(lián)網負載簡檔。這是對應用的聯(lián)網負載要求的描述。當在數(shù)據(jù)中心中分配應用時,負載意識管理層始終根據(jù)負載簡檔通過數(shù)據(jù)中心為該應用虛擬地預留聯(lián)網負載。如果業(yè)務意識鏡像分配器對虛擬數(shù)據(jù)中心模型而不是實際數(shù)據(jù)中心執(zhí)行其搜索模式,為了找到針對該應用的 最優(yōu)位置,即處理單元10',可以將根據(jù)其他鏡像的聯(lián)網負載簡檔的對其它鏡像的預留和潛在負載需要考慮在內。一般而言,不管數(shù)據(jù)中心中分配應用的決定的聯(lián)網方面如何,當然可以存在可以影響該決定的很多其他標準。本發(fā)明提出的實體和方法向整體決定過程提供了貢獻?,F(xiàn)在參照圖3和4,分配實體50具有通向數(shù)據(jù)中心I的分級和樹狀網絡結構中的交換機/路由器21、22、23和處理單元10的接口。此外,分配實體50具有通向數(shù)據(jù)中心管理系統(tǒng)64的接口 66。通過該接口 66,分配實體50可以接收用于搜索可以在數(shù)據(jù)中心I內分配新應用的位置的命令。將該搜索的結果傳輸回數(shù)據(jù)中心管理,其進而可以相應分配應用/鏡像。為了獲得關于應用的要求的信息,分配實體50具有通向應用和或鏡像的倉庫(即,數(shù)據(jù)存儲器600)的接口 65,應用或鏡像存儲在該倉庫中或在該倉庫中描述。接口 65可以由應用/鏡像管理API(應用編程接口)來構成。除了通常存儲的與這種應用相關的信息(數(shù)據(jù)存儲器61中的代碼、應用數(shù)據(jù)和庫71)之外,引入了應用網絡負載信息72,其與應用/鏡像相關聯(lián),以提供與要求相關的附加信息,具體地,關于網絡負載的附加信息。所述信息72可以存儲在分離的數(shù)據(jù)存儲器62中,或應用數(shù)據(jù)71和信息72可以存儲在一個單一的公共數(shù)據(jù)存儲器600中。信息的源位于通向數(shù)據(jù)中心網絡節(jié)點63的接口 67的可用性中,該接口 67允許取回與所有節(jié)點及其網絡鏈路(即涉及的交換機21、22、23、網關實體30、以及處理單元10)相關的當前實況網絡負載情形。因此,將至少一部分節(jié)點和鏈路耦合到分配實體50,以提供這種信息(圖2&4中的虛線)。在一個實施例中,分配實體50可以主動地請求與其當前考慮/觀察的節(jié)點和鏈路的負載情形相關的瞬時信息,或在另一實施例中,其可以規(guī)律地向整個數(shù)據(jù)中心I輪詢負載信息,并存儲該信息以用在搜索算法中。在又一實施例中,可以在數(shù)據(jù)中心的網絡節(jié)點(即所有涉及的交換機21、22、23)處注冊分配實體50,以接收與網絡負載信息相關的規(guī)律更新。此外,可以將取回和處理負載情形的這些概念加以組合,且可以用不同方式來處理數(shù)據(jù)中心I的不同部分。當應當向數(shù)據(jù)中心I添加新應用或添加其上安裝了應用的虛擬鏡像時,分配實體50參與以下決定:在數(shù)據(jù)中心I中應當分配應用/鏡像。其找到數(shù)據(jù)中心I中具有最高空閑聯(lián)網容量,且具體地,在從處理單元10到外部(即網關實體30)的整個網絡路徑40'上具有空閑并合適的容量的合適處理單元10。執(zhí)行該搜索的命令通常來自于數(shù)據(jù)中心管理64,且向數(shù)據(jù)中心管理64報告回結果。這允許數(shù)據(jù)中心管理系統(tǒng)64在分配應用/鏡像的新實例時將網絡負載考慮在內。如上面已經提到的,應用/鏡像還可以附有描述其聯(lián)網負載需要的簡檔。在一個實施例中,可以例如在這種負載簡檔的倉庫(即,數(shù)據(jù)存儲器62)中的單獨文件72中存儲這種負載簡檔。在該情況下,針對每個應用/鏡像單獨選擇合適的簡檔。在另一實施例中,可以將應用網絡負載信息與應用/鏡像存儲在一起,或甚至存儲在鏡像文件或鏡像描述的區(qū)中。
應用網絡負載信息的簡檔可以包含例如將始終不超過的所需最小帶寬或最大帶寬的信息。然而,該簡檔還可以包含與條件性或時間性帶寬特征(figure)相關的信息。例如,可以針對一天中不同的時間或一周中不同的天來提供單獨的帶寬要求。分配實體50可以使用該負載簡檔來決定要選擇的網絡鏈路是否適合支持被假定要部署在數(shù)據(jù)中心I中的應用/鏡像的所有要求??梢詫⑺鰬镁W絡負載簡檔擴展為還包含與應用/鏡像的不涉及聯(lián)網的其他方面相關的要求。例如,此處可以與聯(lián)網需求一起來指定處理容量需求。現(xiàn)在參照圖5和6,在分配實體50中還可以提供數(shù)據(jù)中心負載控制器51。數(shù)據(jù)中心負載控制器51在數(shù)據(jù)中心網絡負載的測量中建立了中間層。數(shù)據(jù)中心負載控制器51可以將數(shù)據(jù)中心拓撲的地圖與當前負載情形的特征一起存儲。對于數(shù)據(jù)中心的每個物理節(jié)點以及數(shù)據(jù)中心節(jié)點中的每個鏈路,數(shù)據(jù)中心負載控制器保存與其聯(lián)網負載情形相關的信息。同樣地,所述節(jié)點可以由交換機21、22、23、實體30、和/或單元10來構成。所述鏈路可以構成上述子路徑。這樣,數(shù)據(jù)中心負載控制器51維護實際數(shù)據(jù)中心負載情形的抽象鏡像。信息的取回和負載特征的連續(xù)更新可以類似于與本發(fā)明的其他實施例一起描述的方式來進行。隨著該中間層在恰當位置上,分配實體50將不直接從實際數(shù)據(jù)中心節(jié)點接收負載特征,而是從數(shù)據(jù)中心負載控制器51接收其維護的抽象數(shù)據(jù)中心地圖中取得的負載特征。除了在尋找新應用/鏡像的位置的算法中的該變化,其他可以保持相同。
該實施例基于數(shù)據(jù)中心的抽象鏡像,而不是數(shù)據(jù)中心本身?;跀?shù)據(jù)中心I的其抽象鏡像,數(shù)據(jù)中心負載控制器51可以針對每個節(jié)點和鏈路來執(zhí)行網絡容量的預留。因此,數(shù)據(jù)中心負載控制器51可以接收或獲得路徑網絡預留信息。注意到:最終在數(shù)據(jù)中心I上部署應用實例,且向其通知為該應用實例找到的網絡路徑40'。一旦部署了其實例,且在沿著被選擇用于向該應用實例提供聯(lián)網服務的路徑40'上的所有虛擬數(shù)據(jù)中心節(jié)點和虛擬數(shù)據(jù)中心鏈路處存儲該網絡負載簡檔,數(shù)據(jù)中心負載控制器501訪問應用的相應應用網絡負載簡檔(或一般的,應用網絡負載信息)。如果分配實體50為新的應用實例搜索位置,則針對每個節(jié)點和鏈路所呈現(xiàn)的負載特征可以是壽命(當前)負載,或其可以是基于在數(shù)據(jù)中心負載控制器50中存儲的負載簡檔定義的累積要求的潛在負載。此外,可以使用實況負載特征和累積要求的組合。這樣,可以達到網絡容量的軟預留,因為在分配新應用時,將已經部署的應用實例所要求的容量考慮在內。盡管當前負載情形將指示留有容量,但是針對新的部署,可以拒絕已經具有與聯(lián)網相關的高潛在需求的路徑40。數(shù)據(jù)中心負載控制器51知道由該路徑所服務的應用具有潛在高的需求。因此,可以避免將來的瓶頸。由于網絡負載簡檔可以提供例如在不同時間和日期上區(qū)分負載要求的復雜特征,因此當決定特定節(jié)點或鏈路是否能夠獲取另一應用的負載時,也可以將這點考慮在內。不僅可以匹配當前的要求,還可以匹配將來的要求。需要由數(shù)據(jù)中心管理向數(shù)據(jù)中心負載控制器51通知所有的鏡像部署和移除。如果移除或移動應用實例,需要移除或重新布置與指派的網絡負載簡檔一起對應存儲的路徑。圖7示出了根據(jù)本發(fā)明的另一實施例的分配實體內部設置的示意圖。該分配實體50包括處理器501和存儲器502。處理器執(zhí)行在存儲器502中作為單元503存儲的代碼。從而,可以由單元503來實現(xiàn)或執(zhí)行如結合本發(fā)明的實施例所描述的實體的任何特征或方法的任何步驟,其中,由處理器501來執(zhí)行其相應代碼。圖8A示出了本發(fā)明 的方法實施例的示意流程圖。因此,在步驟SI中,接收用于向數(shù)據(jù)中心的多個處理單元中的一個處理單元分配應用的應用分配請求。應用分配請求包括應用網絡負載信息。此外,在步驟S2中,獲取路徑網絡負載信息,該路徑網絡負信息指示通向多個處理單元中的至少一部分的網絡路徑的網絡負載的。最終,在步驟S3中,基于應用網絡負載信息和路徑網絡負載信息,從多個處理單元中選擇處理單元以分配應用。圖SB示出了本發(fā)明的另一方法實施例的示意流程圖。該實施例描述了用于在數(shù)據(jù)中心中針對要分配的特定應用來搜索合適的處理單元的可能方法。根據(jù)該實施例,在第一步驟Sll中,搜索合適的處理單元在數(shù)據(jù)中心的網關實體處開始。然后,在步驟S12中,分配實體檢查與到后續(xù)節(jié)點/路由器/交換機的所有路徑相關的負載情形?;谠撉樾?,在步驟S15中,分配實體選擇在本搜索過程中之前尚未嘗試的、到具有最高空閑容量的后續(xù)節(jié)點(即,下一個分級級別的交換機)的鏈路(子路徑)。如果在S13中,在當前檢查的節(jié)點/路由器/交換機中找不到具有充足空閑聯(lián)網容量的鏈路,則搜索返回之前的網絡節(jié)點和該算法的步驟S12。如果由于不存在更高分級級別的之前的網絡節(jié)點/路由器/交換機而使得這不可能,則搜索失敗且不能在數(shù)據(jù)中心中分配該應用(S14)。如果在所選鏈路之后的后續(xù)節(jié)點同樣是路由器/交換機,算法在步驟S12中繼續(xù)。然而如果在所選鏈路之后的后續(xù)節(jié)點是處理單元,在步驟S17中檢查該單元是否滿足要分配的應用/鏡像的所有要求。這不僅可以檢查處理單元的聯(lián)網負載情形,還可以例如將處理負載或存儲器利用率考慮在內。如果在步驟S17中找到的處理單元滿足所有要求,則在步驟S18中在該處理單元18上分配/部署該應用。然而在步驟S17中如果找到的處理單元不滿足所有要求,搜索返回之前的網絡節(jié)點和該算法的步驟S12。如果由于沒有之前的網絡節(jié)點/路由器/交換機而使得這不可能,則搜索失敗且不能在數(shù)據(jù)中心中分配該應用/鏡像(同樣,S14)。上述算法能夠為對外部網絡(例如,公共互聯(lián)網)有高聯(lián)網需求的應用/鏡像找到合適的分配??梢蕴峁┬薷牡乃惴ㄓ糜跒閷?shù)據(jù)中心的其他部分有高聯(lián)網需求的應用/鏡像找到合適的分配。在該情況下,在步驟Sll中,搜索將在要應用的應用/鏡像對其具有高聯(lián)網需求的處理單元處開始。所呈現(xiàn)的算法包含以下檢查:鏈路的可用容量是否充分支持要分配的應用/鏡像的要求。可以使用如上所述的應用/鏡像負載簡檔來確定與這些要求相關的信息。如果這種信息不可用,則算法還可以僅選擇最佳路徑,而不控制其容量是否將充足。在本發(fā)明的上述實施例中,至少設想了以下修改:根據(jù)修改,可以相應實現(xiàn)分配實體以在數(shù)據(jù)中心上運行,即作為由數(shù)據(jù)中心的一個或多個處理單元執(zhí)行的代碼。盡管已描述了詳細的實施例,這些實施例僅用于提供對由所附權利要求限定的本發(fā)明的更好的理解,且預期不應將這些實施例視為`是限制性的。
權利要求
1.一種數(shù)據(jù)中心的分配實體,所述分配實體被配置為: -接收用于向所述數(shù)據(jù)中心的多個處理單元中的一個處理單元分配應用的應用分配請求,所述應用分配請求包括應用網絡負載信息; -獲取路徑網絡負載信息,所述路徑網絡負載信息指示通向所述多個處理單元的至少一部分的網絡路徑的網絡負載;以及 -基于所述應用網絡負載信息和所述路徑網絡負載信息,從所述多個處理單元中選擇處理單元以分配所述應用。
2.根據(jù)權利要求1所述的分配實體,其中,所述網絡路徑通過至少一個交換機級將所述數(shù)據(jù)中心的網關實體耦合到所述多個處理單元,以及所述分配實體還被配置為: -獲取子路徑網絡負載信息,所述子路徑網絡負載信息指示所述網關實體和所述多個處理單元之間的網絡子路徑的網絡負載;以及 -從所述多個處理單元中選擇一個處理單元以分配所述應用,所述選擇基于耦合到所述一個處理單元的子路徑的子路徑網絡負載信息。
3.根據(jù)權利要求2所述的分配實體,還被配置為: -基于所述應用網絡負載信息來確定耦合所述一個處理單元的另一子路徑是否可用;以及 -如果所述另一子路徑不可用,從所述多個處理單元中選擇另一處理單元以分配所述應用。
4.根據(jù)權利要求1至3中任一項所述的分配實體,還被配置為: -接收路徑網絡預留信息;以及 -還基于所述路徑網絡預留信息,從所述多個處理單元中選擇所述處理單元。
5.根據(jù)權利要求1至4中任一項所述的分配實體,還被配置為:基于另一應用網絡負載信息和所述路徑網絡負載信息,從所述多個處理單元中選擇另一處理單元以分配另一應用。
6.根據(jù)權利要求1至5中任一項所述的分配實體,還被配置為:通過比較所述應用網絡負載信息與通向所述多個處理單元中每個處理單元的網絡路徑的路徑網絡負載信息,選擇所述處理單元。
7.根據(jù)權利要求6所述的分配實體,還被配置為:至少基于通向所述多個處理單元中每個處理單元的網絡路徑的網絡負載來選擇所述處理單元。
8.根據(jù)權利要求1至7中任一項所述的分配實體,其中,所述應用網絡負載信息包括應用網絡負載簡檔。
9.根據(jù)權利要求1至8中任一項所述的分配實體,所述分配實體被實現(xiàn)為在所述數(shù)據(jù)中心的一個或多個處理單元上運行的應用。
10.一種操作數(shù)據(jù)中心的網絡實體的方法,所述方法包括: -接收用于向所述數(shù)據(jù)中心的多個處理單元中的一個處理單元分配應用的應用分配請求,所述應用分配請求包括應用網絡負載信息; -獲取路徑網絡負載信息,所述路徑網絡負載信息指示通向所述多個處理單元的至少一部分的網絡路徑的網絡負載;以及 -基于所述應用網絡負載信息和所述路徑網絡負載信息,從所述多個處理單元中選擇處理單元以分配所述應用。
11.根據(jù)權利要求10所述的方法,所述方法適用于根據(jù)權利要求1至9中任一項所述的分配實體。
12.一種包括代碼的計算機程序,所述代碼能夠被加載到分配實體的代碼執(zhí)行單元中,所述代碼執(zhí)行根據(jù)權利要求1至9中任一項所述的方法。
13.—種包括根據(jù)權利要求12所述的計算機程序的計算機程序產品。
14.一種操作包括多個處理單元的數(shù)據(jù)中心的方法,所述方法包括: -接收用于向所述多個處理單元中的一個處理單元分配應用的應用分配請求,所述應用分配請求包括應用網絡負載信息; -獲取路徑網絡負載信息,所述路徑網絡負載信息指示通向所述多個處理單元的至少一部分的網絡路徑的網絡負載;以及 -基于所述應用網絡負載信息和所述路徑網絡負載信息,從所述多個處理單元中選擇處理單元以分配所述應用。
15.根據(jù)權利要求14所述的操作數(shù)據(jù)中心的方法,其中,所述數(shù)據(jù)中心包括網關實體以及至少一個交換機級,所述多個處理單元通過所述至少一個交換機級經由網絡路徑耦合到所述網關實體,所述方法還包括: -獲取子路徑網絡負載信息,所述子路徑網絡負載信息指示所述網關實體和所述多個處理單元之間的網絡子路徑的網絡負載;以及· -從所述多個處理單元中選擇一個處理單元以分配所述應用,所述選擇基于耦合到所述一個處理單元的子路徑的子路徑網絡負載信息。
16.根據(jù)權利要求15所述的方法,還包括: -基于所述應用網絡負載信息來確定耦合所述一個處理單元的另一子路徑是否可用;以及 -如果所述另一子路徑不可用,從所述多個處理單元中選擇另一處理單元以分配所述應用。
17.根據(jù)權利要求14至16中任一項所述的方法,還包括: -接收路徑網絡預留信息;以及 -還基于所述路徑網絡預留信息,從所述多個處理單元中選擇所述處理單元。
18.根據(jù)權利要求14至17中任一項所述的方法,還包括:基于另一應用網絡負載信息和所述路徑網絡負載信息,從所述多個處理單元中選擇另一處理單元以分配另一應用。
19.一種數(shù)據(jù)中心,包括: -多個處理單元; -通向所述多個處理單元的至少一部分的網絡路徑;以及 -根據(jù)權利要求1至9中任一項所述的分配實體。
全文摘要
提供了數(shù)據(jù)中心的分配實體,其中,所述分配實體被配置為接收用于向所述數(shù)據(jù)中心的多個處理單元中的一個處理單元分配應用的應用分配請求,所述應用分配請求包括應用網絡負載信息;獲取指示通向所述多個處理單元的至少一部分的網絡路徑的網絡負載的路徑網絡負載信息;以及基于所述應用網絡負載信息和所述路徑網絡負載信息,從所述多個處理單元中選擇處理單元以分配所述應用。
文檔編號G06F9/50GK103250140SQ201080070538
公開日2013年8月14日 申請日期2010年10月6日 優(yōu)先權日2010年10月6日
發(fā)明者喬格·尼默勒, 斯蒂凡·鮑基 申請人:瑞典愛立信有限公司