用于在云內自動部署地理分布式應用的方法和設備的制造方法
【技術領域】
[0001] 這里公開的各種示例性實施方式通常涉及云計算。
【背景技術】
[0002] 當前,許多云運營商擁有云服務,該云服務使用少量數(shù)據(jù)中心,提供相對集中的操 作。在這種系統(tǒng)中,請求方可以請求對來自云控制器的一個或多個資源的使用,該云控制器 轉而可以分配來自數(shù)據(jù)中心的所請求的資源,以供請求方使用。然而,該集中式操作可能不 能很好地適用于擁有多種類型的應用的情況,例如,具有嚴格延遲或可靠性需求的應用。
[0003] 另一方面,分布式數(shù)據(jù)中心架構提供大量較小的數(shù)據(jù)中心,這些數(shù)據(jù)中心地理上 可以是分布式的。數(shù)據(jù)中心可以通過網(wǎng)絡(例如,因特網(wǎng)或載波網(wǎng)絡)保持在一個或多個云 控制器的控制下。在這種分布式系統(tǒng)下,網(wǎng)絡傳播延遲的效果會通過提供云應用來被降低, 其中,在地理或網(wǎng)絡距離方面,相比于集中式云能夠提供的距離,所述云應用更靠近于不同 用戶。
【發(fā)明內容】
[0004] 下面給出各種示例性實施方式的簡要概述。在以下概述中,做出了一些簡化和省 略,所述概述意圖用于強調并引入各種示例性實施方式的一些方面,但不用于限制本發(fā)明 的范圍。對優(yōu)選示例性實施方式的詳細描述足以允許本領域的普通技術人員實施并使用本 發(fā)明的概念,這些詳細描述將跟隨在隨后的章節(jié)。
[0005] 這里描述的各種實施方式涉及由云控制器執(zhí)行的用于在云內建立應用的組件 (component)的方法,該方法包括:從請求設備接收建立所述組件的請求;識別與所述應用 相關聯(lián)的策略文件,其中,所述策略文件為應用定義至少一個分段,并且定義對所述至少一 個分段的第一分段的至少一個約束;為所述組件的建立選擇所述第一分段;為所述組件的 建立選擇位置,其中,所述位置被選擇以符合所述至少一個約束;以及在所選擇的位置建立 所述組件。
[0006] 這里描述的各種實施方式涉及用于在云內建立應用的組件的云控制器,該云控制 器包括:數(shù)據(jù)存儲器;與所述數(shù)據(jù)存儲器通信的處理器,該處理器被配置成:從請求設備接 收建立所述組件的請求;識別存儲在所述數(shù)據(jù)存儲器中并與所述應用相關聯(lián)的策略文件, 其中,所述策略文件為應用定義至少一個分段,并且定義對所述至少一個分段的第一分段 的至少一個約束;為所述組件的建立選擇所述第一分段;為所述組件的建立選擇位置,其 中,所述位置被選擇以符合所述至少一個約束;以及在所選擇的位置建立所述組件。
[0007] 這里描述的各種實施方式涉及非暫時性機器可讀存儲介質,該存儲介質用指令進 行編碼,所述指令由云控制器運行以在云內建立應用的組件,所述介質包括:用于從請求設 備接收建立所述組件的請求的指令;用于識別與所述應用相關聯(lián)的策略文件的指令,其中, 所述策略文件為應用定義至少一個分段,并且定義對所述至少一個分段的第一分段的至少 一個約束;用于為所述組件的建立選擇所述第一分段的指令;用于為所述組件的建立選擇 位置的指令,其中,所述位置被選擇以符合所述至少一個約束;以及用于在所選擇的位置建 立所述組件的指令。
[0008] 這里描述了各種實施方式,其中,所述至少一個約束包括單獨分段約束,該單獨分 段約束規(guī)定了對屬于所述第一分段的組件的約束。
[0009] 這里描述了各種實施方式,其中,所述至少一個約束包括分段內約束,該分段內約 束規(guī)定了屬于所述第一分段的至少兩個組件之間的約束。
[0010] 這里描述了各種實施方式,其中,所述至少一個約束包括分段間約束,該分段間約 束規(guī)定了屬于所述第一分段的至少一個組件與屬于所述至少一個分段的第二分段的至少 一個組件之間的約束。
[0011] 各種實施方式還包括向所述請求設備報告所述組件的建立以及標簽;從所述請求 設備接收包括所述標簽的縮放(scale)請求;識別與所述標簽相關聯(lián)的所述第一分段;以 及執(zhí)行關于所述第一分段的縮放操作。
[0012] 各種實施方式還包括在識別所述第一分段之后:從所述策略文件中識別對所述第 一分段的所述至少一個約束;以及為所述縮放操作選擇位置,其中,所述位置被選擇以符合 所述至少一個約束;其中,執(zhí)行所述縮放操作包括在所選擇的位置執(zhí)行所述縮放操作。
[0013] 各種實施方式還包括從所述請求設備接收建立所述應用的另外的組件的請求;為 所述另外的組件的建立選擇所述至少一個分段的第二分段;為所述第二分段內的所述另外 的組件的建立選擇位置;以及在所選擇的位置建立所述另外的組件。
[0014] 這里描述了各種實施方式,其中,選擇所述第二分段包括基于所述至少一個分段 的策略文件定義和反映所述第一分段內的所述組件的建立的系統(tǒng)狀態(tài)信息,為所述另外的 組件的建立選擇所述第二分段。
[0015] 這里描述的各種實施方式涉及由云控制器執(zhí)行的用于在云內建立應用的方法,該 方法包括:從用戶接收配置(recipe)文件,該配置文件定義應用的多個組件;從所述用戶 接收策略文件,該策略文件為應用定義多個分段;以及在所述云內建立所述多個組件,其 中,所述組件被建立以使應用根據(jù)所述多個分段分布。
[0016] 這里描述的各種實施方式涉及用于在云內建立應用的云控制器,該云控制器包 括:數(shù)據(jù)存儲器;與所述數(shù)據(jù)存儲器通信的處理器,該處理器被配置成:從用戶接收配置文 件,該配置文件定義應用的多個組件;從所述用戶接收策略文件,該策略文件為應用定義多 個分段;以及在所述云內建立所述多個組件,其中,所述組件被建立以使應用根據(jù)所述多個 分段分布。
[0017] 這里描述的各種實施方式涉及機器可讀存儲介質,該存儲介質用指令進行編碼, 所述指令由云控制器運行以在云內建立應用,所述介質包括:用于從用戶接收配置文件的 指令,該配置文件定義應用的多個組件;用于從所述用戶接收策略文件的指令,該策略文件 為應用定義多個分段;以及用于在所述云內建立所述多個組件的指令,其中,所述組件被建 立以使應用根據(jù)所述多個分段分布。
[0018] 描述了各種實施方式,其中,所述策略文件還定義關于所述多個分段的第一分段 的至少一個約束,以及建立所述多個組件以使所述應用根據(jù)所述多個分段分布包括:向所 述第一分段指派第一組件;以及在符合所述至少一個約束的位置建立所述第一組件。
[0019] 描述了各種實施方式,其中:所述至少一個約束規(guī)定了在其中建立被指派給所述 第一分段的組件的地理區(qū)域;以及在符合所述至少一個約束的位置建立所述第一組件包括 在所述地理區(qū)域內建立所述組件。
[0020] 描述了各種實施方式,其中:所述至少一個約束規(guī)定了被指派給所述第一分段的 組件之間的緊密性(affinity);以及在符合所述至少一個約束的位置建立所述第一組件 包括在被選擇為與被指派給所述第一分段的至少一個另外的組件靠近的位置建立所述第 一組件。
[0021] 描述了各種實施方式,其中:所述至少一個約束規(guī)定了所述第一分段與所述多個 分段的第二分段之間的非緊密性(anti-affinity);以及在符合所述至少一個約束的位置 建立所述第一組件包括在被選擇為遠離于被指派給所述第二分段的至少一個另外的組件 的位置建立所述第一組件。
[0022] 描述了各種實施方式,其中,所述策略文件規(guī)定:與所述多個組件的第一組件和所 述多個分段的第一分段相關聯(lián)的第一比例;以及與所述第一組件和所述多個分段的第二分 段相關聯(lián)的第二比例。
[0023] 描述了各種實施方式,其中,建立所述多個組件以使所述應用根據(jù)所述多個分段 分布包括:在所述第一分段內建立第一數(shù)量的所述第一組件;以及在所述第二分段內建立 第二數(shù)量的所述第一組件,其中,所述第一數(shù)量和所述第二數(shù)量基于所述第一比例和所述 第二比例來選取。
[0024] 各種實施方式還包括向應用管理器轉發(fā)所述配置文件;在所述云控制器存儲所述 策略文件;以及從所述應用管理器接收建立組件的請求,其中,建立所述多個組件包括基于 所接收到的請求和所存儲的策略文件建立所述組件。
【附圖說