分布式云中的工作負(fù)載遷移下的基于屬性的sla保證的制作方法
【技術(shù)領(lǐng)域】
[0001 ]本文公開(kāi)的不同示例性實(shí)施例一般地涉及云計(jì)算。
【背景技術(shù)】
[0002]許多云運(yùn)營(yíng)商目前使用數(shù)個(gè)大型數(shù)據(jù)中心來(lái)提供云服務(wù),這提供了相對(duì)集中式的操作。在這樣的系統(tǒng)中,請(qǐng)求方可以從云控制器請(qǐng)求一個(gè)或多個(gè)資源,該云控制器進(jìn)而可以從數(shù)據(jù)中心分配被請(qǐng)求的資源以供請(qǐng)求方使用。然而,這樣的集中式操作可能并不適于提供不同類型的應(yīng)用,諸如那些具有嚴(yán)格的延遲或可靠性要求的應(yīng)用。
[0003]另一方面,分布式數(shù)據(jù)中心架構(gòu)提供了可以在地理上分布開(kāi)來(lái)的更大數(shù)量的較小數(shù)據(jù)中心。該數(shù)據(jù)中心可以通過(guò)諸如互聯(lián)網(wǎng)或載波網(wǎng)絡(luò)之類的網(wǎng)絡(luò)而處于一個(gè)或多個(gè)云控制器的控制之下。在這樣的分布式系統(tǒng)下,通過(guò)提供在地理或網(wǎng)絡(luò)距離方面比集中式云所可能提供的更為接近的云應(yīng)用,網(wǎng)絡(luò)傳播延遲的影響可以有所減小。
[0004]在這兩種云網(wǎng)絡(luò)中,對(duì)于在可用設(shè)備之間重新安排提供給消費(fèi)者的資源偶爾會(huì)是有利的。例如,改變網(wǎng)絡(luò)條件可能使得設(shè)備由于連接退化而不適于繼續(xù)支持消費(fèi)者資源,對(duì)于資源間通信高度依賴的消費(fèi)者應(yīng)用會(huì)導(dǎo)致期望將這樣的資源在地理上進(jìn)行移動(dòng)以彼此接近,或者負(fù)載有所增加的一個(gè)設(shè)備可能導(dǎo)致期望將資源移動(dòng)至不太重度負(fù)載的設(shè)備。
【發(fā)明內(nèi)容】
[0005]以下給出各個(gè)示例性實(shí)施例的簡(jiǎn)要概述。在以下概述中可能進(jìn)行一些簡(jiǎn)化和省略,這意在對(duì)各個(gè)示例性實(shí)施例的一些方面進(jìn)行強(qiáng)調(diào)和介紹,而并非對(duì)本發(fā)明的范圍加以限制。在后續(xù)部分中間給出足以允許本領(lǐng)域技術(shù)人員制造和使用本發(fā)明概念的優(yōu)選示例性實(shí)施例的詳細(xì)描述。
[0006]這里所描述的不同實(shí)施例涉及到一種由云控制器執(zhí)行的用于在云網(wǎng)絡(luò)內(nèi)迀移資源的方法,該方法包括:從云網(wǎng)絡(luò)內(nèi)的至少一個(gè)設(shè)備接收性能量度;對(duì)該性能量度進(jìn)行分析以生成至少一個(gè)應(yīng)用要求,其中該至少一個(gè)應(yīng)用要求指示與為消費(fèi)者提供的資源相關(guān)聯(lián)的近期性能,其中該資源由該云網(wǎng)絡(luò)內(nèi)的第一設(shè)備所支持;基于該至少一個(gè)應(yīng)用要求識(shí)別該云網(wǎng)絡(luò)內(nèi)的第二設(shè)備以支持該資源;并且將該資源從該第一設(shè)備迀移至該第二設(shè)備。
[0007]這里所描述的不同實(shí)施例涉及到一種由云控制器執(zhí)行的用于在云網(wǎng)絡(luò)內(nèi)迀移資源的運(yùn)控制器,該云控制器包括:網(wǎng)絡(luò)接口;存儲(chǔ)器;以及與該存儲(chǔ)器通信的處理器,該處理器被配置為:經(jīng)由該網(wǎng)絡(luò)接口從云網(wǎng)絡(luò)內(nèi)的至少一個(gè)設(shè)備接收性能量度,對(duì)該性能量度進(jìn)行分析以生成至少一個(gè)應(yīng)用要求,其中該至少一個(gè)應(yīng)用要求指示與為消費(fèi)者提供的資源相關(guān)聯(lián)的近期性能,其中該資源由該云網(wǎng)絡(luò)內(nèi)的第一設(shè)備所支持,基于該至少一個(gè)應(yīng)用要求識(shí)別該云網(wǎng)絡(luò)內(nèi)的第二設(shè)備以支持該資源,并且將該資源從該第一設(shè)備迀移至該第二設(shè)備。
[0008]這里所描述的各個(gè)實(shí)施例涉及到一種非瞬態(tài)機(jī)器可讀存儲(chǔ)介質(zhì),其利用由云控制器所執(zhí)行以便在云網(wǎng)絡(luò)內(nèi)迀移資源的指令進(jìn)行編碼,該介質(zhì)包括:用于從云網(wǎng)絡(luò)內(nèi)的至少一個(gè)設(shè)備接收性能量度的指令;用于對(duì)該性能量度進(jìn)行分析以生成至少一個(gè)應(yīng)用要求的指令,其中該至少一個(gè)應(yīng)用要求指示與為消費(fèi)者提供的資源相關(guān)聯(lián)的近期性能,其中該資源由該云網(wǎng)絡(luò)內(nèi)的第一設(shè)備所支持;用于基于該至少一個(gè)應(yīng)用要求識(shí)別該云網(wǎng)絡(luò)內(nèi)的第二設(shè)備以支持該資源的指令;和用于將該資源從該第一設(shè)備迀移至該第二設(shè)備的指令。
[0009]描述了不同的實(shí)施例,其中基于該至少一個(gè)應(yīng)用要求識(shí)別該云網(wǎng)絡(luò)內(nèi)的第二設(shè)備以支持該資源包括確定至該第二設(shè)備的資源迀移將保持該至少一個(gè)應(yīng)用要求。
[0010]描述了不同的實(shí)施例,其中基于該至少一個(gè)應(yīng)用要求識(shí)別該云網(wǎng)絡(luò)內(nèi)的第二設(shè)備以支持該資源包括確定至該第二設(shè)備的資源迀移將以小于預(yù)定量的程度違反該至少一個(gè)應(yīng)用要求。
[0011]描述了不同的實(shí)施例,其中識(shí)別該云網(wǎng)絡(luò)內(nèi)的第二設(shè)備以支持該資源進(jìn)一步基于與該消費(fèi)者相關(guān)聯(lián)的顯式服務(wù)級(jí)別協(xié)定(SLA)。
[0012]描述了不同的實(shí)施例,其中該至少一個(gè)應(yīng)用要求包括設(shè)備級(jí)別的性能量度。
[0013]描述了不同的實(shí)施例,其中該至少一個(gè)應(yīng)用要求包括應(yīng)用級(jí)別的性能量度。
[0014]描述了不同的實(shí)施例,其中識(shí)別該云網(wǎng)絡(luò)內(nèi)的第二設(shè)備以支持該資源包括計(jì)算資源集合在屬于該云的多個(gè)設(shè)備之間的新的安排。
【附圖說(shuō)明】
[0015]現(xiàn)在參考附圖以便更好地理解各個(gè)示例性實(shí)施例,其中:
[0016]圖1示出了用于提供云資源的示例性網(wǎng)絡(luò);
[0017]圖2示出了示例性云控制器的組件圖;
[0018]圖3示出了示例性云控制器的硬件圖;
[0019]圖4示出了用于存儲(chǔ)設(shè)備級(jí)別性能量度的示例性數(shù)據(jù)部署;
[0020]圖5示出了用于存儲(chǔ)應(yīng)用級(jí)別性能量度的示例性數(shù)據(jù)部署;
[0021]圖6示出了用于存儲(chǔ)應(yīng)用要求的示例性數(shù)據(jù)部署;
[0022]圖7示出了用于在云網(wǎng)絡(luò)內(nèi)迀移消費(fèi)者資源的示例性方法。
[0023]為了促進(jìn)理解,已經(jīng)使用了相同的附圖標(biāo)記來(lái)指代具有基本上相同或相似的結(jié)構(gòu)或者基本上相同或相似的功能的要素。
【具體實(shí)施方式】
[0024]該描述和附圖示出了本發(fā)明的原則。因此將要意識(shí)到的是,本領(lǐng)域技術(shù)人員將能夠設(shè)計(jì)出雖然并未在這里明確描述或示出但是卻體現(xiàn)了本發(fā)明的原則并且被包括在其范圍之內(nèi)的各種部署形式。此外,這里所引用的所有示例在原則上都明確意在出于教導(dǎo)的目的,并且要被理解為并不對(duì)這樣專門(mén)引用的示例和條件加以限制。此外,如這里所使用的術(shù)語(yǔ)“或”是指非排除或,除非以其它方式有所指示(例如,“或者另外”或“或者可替換地”)。而且,這里所描述的各個(gè)實(shí)施例并非必然相互排斥,因?yàn)橐恍?shí)施例可以與一個(gè)或多個(gè)其它實(shí)施例進(jìn)行組合以形成新的實(shí)施例。
[0025]雖然消費(fèi)者資源在云網(wǎng)絡(luò)內(nèi)的迀移在許多情境中可能是有利的,但是也可能在這樣的迀移之后保持消費(fèi)者的體驗(yàn)。如這里所使用的,術(shù)語(yǔ)“消費(fèi)者”將被理解為是指與云提供方進(jìn)行對(duì)接以從云網(wǎng)絡(luò)接收基礎(chǔ)架構(gòu)即服務(wù)(Iaas)、平臺(tái)即服務(wù)(Paas)或軟件即服務(wù)(SaaS)的用戶。例如,云提供方和消費(fèi)者可能已經(jīng)進(jìn)入了服務(wù)級(jí)別協(xié)定(SLA),服務(wù)級(jí)別協(xié)定(SLA)定義了將被提供至該消費(fèi)者的應(yīng)用的最低性能要求。例如,SLA可以規(guī)定某個(gè)數(shù)量的計(jì)算能力或者資源之間的某個(gè)最大延時(shí)。在云網(wǎng)絡(luò)內(nèi)的資源進(jìn)行迀移時(shí),云提供方可能通過(guò)選擇支持滿足SLA供應(yīng)的資源的設(shè)備而嘗試保持SLA。
[0026]另外,在一些情況下,除了保持可以定義最低可接受性能的SLA之外,可能期望保持消費(fèi)者已經(jīng)習(xí)慣的消費(fèi)者體驗(yàn)。例如,雖然SLA可以規(guī)定20ms的資源間通信延遲是可接受的,但是消費(fèi)者可能平均具有10ms的資源間通信延遲并且因此期望如此。因此,可能在迀移時(shí)期望保持該高于并超出SLA供應(yīng)的消費(fèi)者體驗(yàn)。
[0027]現(xiàn)在參考附圖,其中同樣的數(shù)字指代同樣的組件或步驟,它們公開(kāi)了各個(gè)示例性實(shí)施例的多個(gè)寬泛方面。
[0028]圖1示出了用于提供云資源的示例性云架構(gòu)100。云架構(gòu)100可以實(shí)施網(wǎng)絡(luò)化的云架構(gòu)并且可以包括客戶端設(shè)備110、網(wǎng)絡(luò)115、云控制器120,以及數(shù)據(jù)中心130、140、150。
[0029]云設(shè)備110可以是被配置為利用一個(gè)或多個(gè)云資源的任意設(shè)備。在各個(gè)實(shí)施例中,客戶端設(shè)備110可以是臺(tái)式計(jì)算機(jī)、膝上計(jì)算機(jī)、平板電腦、移動(dòng)設(shè)備、服務(wù)器或刀片服務(wù)器??蛻舳嗽O(shè)備110可以經(jīng)由網(wǎng)絡(luò)115而與諸如云控制器120的其它設(shè)備進(jìn)行通信??蛻舳嗽O(shè)備110可以向云控制器120傳送對(duì)于一個(gè)或多個(gè)云資源的請(qǐng)求。例如,客戶端設(shè)備110可以請(qǐng)求使用云網(wǎng)絡(luò)100內(nèi)的虛擬機(jī)(VM)、虛擬機(jī)群組、存儲(chǔ)設(shè)備、存儲(chǔ)器或者其它資源中的一個(gè)或多個(gè)。另外類型的云資源將是顯而易見(jiàn)的。客戶端設(shè)備110可以表示從云控制器120請(qǐng)求分布式云應(yīng)用的部署的消費(fèi)者的設(shè)備,或者客戶端設(shè)備110可以表示這樣的通過(guò)直接與各個(gè)云設(shè)備131、132、133、144、155、166所支持的這樣的資源進(jìn)行通信而請(qǐng)求使用這樣的分布式云應(yīng)用中的一個(gè)或多個(gè)組件的消費(fèi)者中的消費(fèi)者。將會(huì)顯而易見(jiàn)的是,另外的客戶端設(shè)備(未示出)可以與網(wǎng)絡(luò)115進(jìn)行通信,并且這樣的另外客戶端設(shè)備屬于另外的消費(fèi)者。
[0030]網(wǎng)絡(luò)115可以是能夠使得在示例性云架構(gòu)100的各個(gè)設(shè)備之間能夠進(jìn)行通信的任意設(shè)備網(wǎng)絡(luò)或傳輸媒體。例如,網(wǎng)絡(luò)115可以包括被配置為向各個(gè)目的地交換和路由數(shù)據(jù)分組的多個(gè)設(shè)備。在各個(gè)實(shí)施例中,網(wǎng)絡(luò)115可以包括互聯(lián)網(wǎng)或者一個(gè)或多個(gè)載波網(wǎng)絡(luò)。
[0031]云控制器120可以是被配置為控制網(wǎng)絡(luò)化的云的操作的設(shè)備。如將在以下參考圖3更為詳細(xì)描述的,云控制器120可以包括各種硬件,諸如存儲(chǔ)設(shè)備、存儲(chǔ)器或者一個(gè)或多個(gè)處理器。這里所使用的術(shù)語(yǔ)“處理器”將被理解為包含各種設(shè)備,諸如微處理器、現(xiàn)場(chǎng)可編程門(mén)陣列(FPGA)、應(yīng)用特定集成電路(ASIC),以及其它類似處理設(shè)備。在各個(gè)實(shí)施例中,云控制器120例如可以包括服務(wù)器、刀片服務(wù)器、個(gè)人計(jì)算機(jī)、膝上計(jì)算機(jī)、平板計(jì)算機(jī)或移動(dòng)設(shè)備。在一些這樣的實(shí)施例中,云控制器120可以是利用云資源的虛擬機(jī),例如,云設(shè)備131、132、133所提供的硬件資源。云控制器120可以處于諸如數(shù)據(jù)中心130的數(shù)據(jù)中心,或者可以處于其它地方。云控制器120可以執(zhí)行各種云管理功能,包括云資源分配的管理。這樣,云控制器120可以從諸如客戶端設(shè)備110的客戶端設(shè)備接收建立云應(yīng)用的請(qǐng)求。當(dāng)接收到這樣的請(qǐng)求時(shí),云控制器120可以從一個(gè)或多個(gè)云設(shè)備131、132、133、144、155、156分配被請(qǐng)求的資源以便由客戶端設(shè)備使用。在各個(gè)實(shí)施例中,示例性云架構(gòu)100可以包括多個(gè)云控制器(未示出)。用于對(duì)多個(gè)云控制器的操作進(jìn)行協(xié)調(diào)的各種技術(shù)都將是顯而易見(jiàn)的。
[0032]數(shù)據(jù)中心130、140、150均可以是支持一個(gè)或多個(gè)提供云資源的設(shè)備的場(chǎng)所。例如,數(shù)據(jù)中心130可以存放云設(shè)備131、