用于基礎(chǔ)設(shè)施即服務(wù)云中故障管理的方法和布置的制作方法
【技術(shù)領(lǐng)域】
[0001]一般而言,本發(fā)明涉及云計(jì)算,并且確切地說(shuō),涉及IaaS云中的改進(jìn)的故障管理。
【背景技術(shù)】
[0002]術(shù)語(yǔ)云計(jì)算在其最一般意義上用于描述使用在網(wǎng)絡(luò)(例如因特網(wǎng))上作為服務(wù)遞送的計(jì)算資源(例如硬件和軟件)的概念。該名稱從現(xiàn)今常用云作為它在系統(tǒng)圖中含有的復(fù)雜基礎(chǔ)設(shè)施的抽象來(lái)導(dǎo)出。闡明它的另一方式是,云計(jì)算實(shí)現(xiàn)了對(duì)可以用最小管理努力或服務(wù)提供商交互迅速供應(yīng)和釋放的可配置計(jì)算資源(例如網(wǎng)絡(luò)、服務(wù)器、存儲(chǔ)裝置、應(yīng)用和服務(wù))的共享池方便的按需網(wǎng)絡(luò)接入。通常,云計(jì)算由于構(gòu)建在彼此之上的若干服務(wù)而被描述為堆棧。這些服務(wù)可被分成三個(gè)主要模型,即,軟件即服務(wù)(SaaS)、平臺(tái)即服務(wù)(PaaS)和基礎(chǔ)設(shè)施即服務(wù)(IaaS),其中IaaS是最基本模型。簡(jiǎn)言之,不同模型可被描述如下:
SaaS云提供商安裝和操作云中的應(yīng)用軟件,并且云用戶從云客戶端訪問(wèn)軟件。云用戶不管理應(yīng)用正運(yùn)行在其上的云基礎(chǔ)設(shè)施和平臺(tái)。
[0003]PaaS云提供商遞送計(jì)算平臺(tái),其通常包含操作系統(tǒng)、編程、語(yǔ)言執(zhí)行環(huán)境、數(shù)據(jù)庫(kù)和web服務(wù)器。
[0004]IaaS云提供商提供了計(jì)算機(jī)、物理或虛擬機(jī)以及其它資源,這是當(dāng)前公開(kāi)的焦點(diǎn),并且將在下面進(jìn)一步描述。具體地說(shuō),當(dāng)前公開(kāi)針對(duì)基礎(chǔ)設(shè)施即服務(wù)(IaaS)云系統(tǒng)中的故障管理?;A(chǔ)設(shè)施即服務(wù)是組織外包用于支持操作的物理設(shè)備的遞送模型,包含存儲(chǔ)裝置、硬件、服務(wù)器和連網(wǎng)組件。通常來(lái)說(shuō),虛擬化被用作提供客戶端隔離和資源復(fù)用的手段。通常,客戶端請(qǐng)求的基礎(chǔ)設(shè)施可隨時(shí)間縮放(增大或縮小)??蛻舳送ǔT诎词褂玫幕A(chǔ)上支付。
[0005]在云服務(wù)內(nèi),并且具體地說(shuō)對(duì)于IaaS云,一個(gè)困難是如何處置例如在數(shù)據(jù)中心(物理服務(wù)器、存儲(chǔ)裝置、網(wǎng)絡(luò)等)中發(fā)生的故障,以及這些故障如何影響利用云的應(yīng)用或服務(wù)。由于應(yīng)用或服務(wù)不知道基礎(chǔ)設(shè)施的硬件功能性,因此難以實(shí)現(xiàn)處置故障的任何方式。今天,存在處置云基礎(chǔ)設(shè)施中的故障的若干不同方法。
[0006]Rackspace,美國(guó)的最大IaaS提供商之一,已經(jīng)定義了云監(jiān)視應(yīng)用編程接口(API)[I]。那個(gè)API是基于RESTful的,并且允許創(chuàng)建檢查、警告、通知計(jì)劃,以及其它事項(xiàng)。如果檢測(cè)到檢查條件,則開(kāi)啟警告,并且可使用通知計(jì)劃。然而,通知計(jì)劃是發(fā)送到人類操作員的純電子郵件,其又輪到可對(duì)此事起作用O也支持webhook,但它也不通知應(yīng)用本身。
[0007]亞馬遜WS也已經(jīng)提供了與那個(gè)問(wèn)題有關(guān)的相關(guān)解決方案。好的示例是亞馬遜CloudWatch [2],一種通過(guò)度量監(jiān)視VM的性能的服務(wù)。如果度量在規(guī)定級(jí)別以外,則云管理系統(tǒng)可采取行動(dòng)。所定義的度量是CPU利用、等待時(shí)間和請(qǐng)求計(jì)數(shù)或自定義。所提出的警告類型是0K、ALARM或INSUFICIENT_DATA (沒(méi)有讀取是可能的)。然而,這個(gè)解決方案僅聚焦在性能VM上,不提供用于故障監(jiān)視和通知的全框架。
[0008]另一相關(guān)服務(wù)是亞馬遜簡(jiǎn)單通知服務(wù)[3]。它提供了應(yīng)用向訂戶通知通常用于實(shí)現(xiàn)應(yīng)用邏輯本身的事件的方式。它構(gòu)建在簡(jiǎn)單隊(duì)列服務(wù)(類似于在此發(fā)明中使用的服務(wù)的服務(wù))之上。然而,這僅是像任何其它的通知總線;它不提供用于故障監(jiān)視的解決方案。
[0009]因此,存在對(duì)于用于實(shí)現(xiàn)IaaS云中改進(jìn)的故障監(jiān)視和管理的方法和布置的需要。
【發(fā)明內(nèi)容】
[0010]本發(fā)明涉及IaaS云中的故障管理。
[0011]根據(jù)第一方面,本公開(kāi)呈現(xiàn)了 IaaS(基礎(chǔ)設(shè)施即服務(wù))云中的服務(wù)器節(jié)點(diǎn),所述服務(wù)器節(jié)點(diǎn)包括管理程序布置和多個(gè)虛擬機(jī)布置,所述多個(gè)虛擬機(jī)布置的至少一個(gè)子集一起定義利用IaaS云的至少一個(gè)應(yīng)用。服務(wù)器節(jié)點(diǎn)還包括管理程序布置內(nèi)的云基礎(chǔ)設(shè)施監(jiān)視器。云基礎(chǔ)設(shè)施監(jiān)視器包括:監(jiān)視器布置,其配置用于通過(guò)監(jiān)視物理網(wǎng)絡(luò)、物理網(wǎng)絡(luò)內(nèi)的存儲(chǔ)裝置、服務(wù)器節(jié)點(diǎn)或所述多個(gè)虛擬機(jī)布置中的至少一個(gè)虛擬機(jī)布置中的至少一項(xiàng)來(lái)監(jiān)視IaaS云的基礎(chǔ)設(shè)施;以及檢測(cè)器布置,其配置用于檢測(cè)監(jiān)視的IaaS基礎(chǔ)設(shè)施內(nèi)的故障;以及通知布置,其配置用于在消息總線上提供檢測(cè)的故障的通知。服務(wù)器節(jié)點(diǎn)還包含布置在管理程序布置與每個(gè)至少一個(gè)監(jiān)聽(tīng)?wèi)?yīng)用之間用于從云基礎(chǔ)設(shè)施監(jiān)視器向所述至少一個(gè)監(jiān)聽(tīng)?wèi)?yīng)用中繼故障通知的相應(yīng)消息總線。最后,每個(gè)至少一個(gè)應(yīng)用配置成響應(yīng)于接收的故障通知而自動(dòng)管理其操作。
[0012]根據(jù)第二方面,本公開(kāi)呈現(xiàn)了 IaaS云中的服務(wù)器節(jié)點(diǎn)中的故障管理的方法,所述服務(wù)器節(jié)點(diǎn)包括管理程序布置和多個(gè)虛擬機(jī)布置,所述多個(gè)虛擬機(jī)布置的至少一個(gè)子集一起定義利用IaaS云的至少一個(gè)應(yīng)用。所述方法包含通過(guò)監(jiān)視物理網(wǎng)絡(luò)、物理網(wǎng)絡(luò)內(nèi)的存儲(chǔ)裝置布置、物理服務(wù)器節(jié)點(diǎn)或所述多個(gè)虛擬機(jī)布置中的至少一個(gè)虛擬機(jī)布置中的至少一項(xiàng)來(lái)監(jiān)視IaaS云的基礎(chǔ)設(shè)施的步驟。另外,所述方法包含如下步驟:檢測(cè)監(jiān)視的IaaS基礎(chǔ)設(shè)施中的故障;在布置在管理程序布置與每個(gè)至少一個(gè)應(yīng)用之間的相應(yīng)消息總線上通知至少一個(gè)應(yīng)用檢測(cè)的故障。最后,所述方法包含基于故障通知自動(dòng)管理每個(gè)至少一個(gè)應(yīng)用的操作的步驟。
[0013]本公開(kāi)的優(yōu)點(diǎn)包含使每個(gè)應(yīng)用能夠自動(dòng)管理以及從在IaaS云中監(jiān)視的和檢測(cè)的故障條件恢復(fù)。
【附圖說(shuō)明】
[0014]通過(guò)參考如下結(jié)合附圖進(jìn)行的描述可最好地理解本發(fā)明,以及其另外目標(biāo)和優(yōu)點(diǎn),附圖中:
圖1是IaaS云的不意性概覽;
圖2是當(dāng)前公開(kāi)的實(shí)施例的示意性流程圖;
圖3是根據(jù)當(dāng)前公開(kāi)的服務(wù)器節(jié)點(diǎn)的實(shí)施例的示意性圖示;
圖4是根據(jù)當(dāng)前公開(kāi)的多個(gè)服務(wù)器節(jié)點(diǎn)的實(shí)施例的示意性圖示;
圖5是X86架構(gòu)中的實(shí)施例的示意性圖示;
圖6是根據(jù)當(dāng)前公開(kāi)的實(shí)施例的流程圖;
圖7是當(dāng)前公開(kāi)的另一實(shí)施例的流程圖;
圖8是當(dāng)前公開(kāi)的實(shí)施例的另外的流程圖;
圖9圖不了當(dāng)如公開(kāi)的另外實(shí)施例; 圖10圖示了根據(jù)當(dāng)前公開(kāi)的實(shí)施例的信令圖;
圖11圖示了當(dāng)前公開(kāi)的實(shí)施例的計(jì)算機(jī)實(shí)現(xiàn)。
[0015]縮寫(xiě):
AMQP 高級(jí)消息排隊(duì)協(xié)議 API 應(yīng)用編程接口 CIM 云基礎(chǔ)設(shè)施監(jiān)視器 CPU 中央處理單元 IaaS 基礎(chǔ)設(shè)施即服務(wù) NIC 網(wǎng)絡(luò)接口卡 PaaS 平臺(tái)即服務(wù) SaaS 軟件即服務(wù) VM 虛擬機(jī)。
【具體實(shí)施方式】
[0016]本公開(kāi)涉及IaaS云中的改進(jìn)的故障管理。出于簡(jiǎn)單性原因,本公開(kāi)主要描述與IaaS云中的一個(gè)物理服務(wù)器節(jié)點(diǎn)相關(guān)的功能。然而,它容易適用于數(shù)據(jù)中心中多個(gè)物理服務(wù)器節(jié)點(diǎn)的情況。
[0017]如上面在背景部分中所說(shuō)明的,現(xiàn)有解決方案在故障情況下要求人為干預(yù)或者采取通用行動(dòng)。電信應(yīng)用在故障情況下要求對(duì)行為的更多控制(例如,以便實(shí)現(xiàn)高可用性)。而且,并且如發(fā)明人所標(biāo)識(shí)的,如果應(yīng)用本身可決定當(dāng)發(fā)生特定故障時(shí)做什么,則可采取更智能的行動(dòng)。
[0018]此公開(kāi)解決的問(wèn)題之一是,在故障的情況下讓?xiě)?yīng)用決定采取什么行動(dòng)的問(wèn)題。在過(guò)去的幾年中,技術(shù)已經(jīng)從單個(gè)獨(dú)立web服務(wù)器移動(dòng)到復(fù)雜多服務(wù)器應(yīng)用。應(yīng)用被分解成更小的服務(wù),更小的服務(wù)可獨(dú)立部署在虛擬機(jī)上,并且獨(dú)立縮放。這些多服務(wù)器應(yīng)用被部署在云數(shù)據(jù)中心中。
[0019]此公開(kāi)解決的問(wèn)題涉及在此環(huán)境中發(fā)生故障的情形。與IaaS云中的故障相關(guān)的兩個(gè)主要問(wèn)題出現(xiàn):
應(yīng)用通常在虛擬化環(huán)境(例如虛擬機(jī))上運(yùn)行,并且它們不知道下面(管理程序和硬件)正在發(fā)生什么,見(jiàn)圖1。在某種故障的情況下,應(yīng)用沒(méi)有知道故障的位置或性質(zhì)的手段,例如,無(wú)論它是連網(wǎng)故障、管理程序故障還是存儲(chǔ)裝置故障。
[0020]當(dāng)故障發(fā)生時(shí),人類操作員得到它的通知,并可采取行動(dòng)。備選地,云系統(tǒng)可被預(yù)先配置成采取自動(dòng)化行動(dòng)。然而,清楚的是,應(yīng)用更適合于采取此類決定,因?yàn)樗鼈兎浅R蕾囉趹?yīng)用邏輯和故障的類型。
[0021]本公開(kāi)的發(fā)明人已經(jīng)