虛擬機資源管理系統(tǒng)及其方法
【專利說明】
【背景技術(shù)】
[0001]云計算在現(xiàn)代社會中已經(jīng)變得無處不在,并且通常由運行用于在計算系統(tǒng)之間共享資源的多個虛擬機的多個物理機器構(gòu)成。這些虛擬機是基于云的數(shù)據(jù)中心的構(gòu)造模塊,尤其在創(chuàng)建私有云系統(tǒng)、公共云系統(tǒng)和混合云系統(tǒng)時。此外,虛擬機(VM)在兼容性、隔離性、封裝和硬件獨立性方面給予巨大益處并且給予其它控制和定制優(yōu)勢。
[0002]在典型的數(shù)據(jù)中心中,為了對各種商業(yè)服務(wù)進行管理的不同目的,由不同組創(chuàng)建數(shù)個VM。由于虛擬機被配置為以與物理機相同的方式工作,所以大量VM的存在(由于VM創(chuàng)建的容易性)有時可能導(dǎo)致VM蔓延,在蔓延中,所創(chuàng)建的虛擬機的數(shù)量變得非常大,以致它們對物理資源造成壓力,因此不利地影響云環(huán)境中所有VM的整體性能。
【附圖說明】
[0003]由于結(jié)合下面的圖進行實現(xiàn)方式的詳細(xì)描述,所以下文中將更清楚地理解本公開的特征和優(yōu)勢以及本公開的附加特征和優(yōu)勢,其中:
[0004]圖1圖示根據(jù)示例實現(xiàn)方式的虛擬機資源管理系統(tǒng)的簡化框圖。
[0005]圖2圖示根據(jù)示例實現(xiàn)方式的虛擬機資源管理系統(tǒng)的另一框圖。
[0006]圖3圖示根據(jù)示例實現(xiàn)方式的用于虛擬機資源管理的方法的簡化流程圖。
[0007]圖4圖示根據(jù)示例實現(xiàn)方式的用于虛擬機資源管理的方法的時序圖。
[0008]圖5圖示依照示例實現(xiàn)方式的用于評估虛擬機資源管理系統(tǒng)中的虛擬機的處理步驟的簡化流程圖。
[0009]圖6圖示依照示例實現(xiàn)方式的用于取消虛擬機資源管理系統(tǒng)中的虛擬機的處理步驟的簡化流程圖。
【具體實施方式】
[0010]下面的討論針對各個示例。盡管可以詳細(xì)地討論這些示例中的一個或多個,但是所公開的實現(xiàn)方式不應(yīng)該被解釋為或另外被用作對包括權(quán)利要求的本公開的范圍進行限制。此外,本領(lǐng)域技術(shù)人員將理解,下面的描述具有廣泛應(yīng)用,并且任何實現(xiàn)方式的討論僅意在作為一個實現(xiàn)方式的示例,而不旨在表示包括權(quán)利要求的本公開的范圍受限于該實現(xiàn)方式。此外,如本文所用的,特別地與附圖中的附圖標(biāo)記相關(guān)的標(biāo)識符以及“N”表示可以通過本公開的示例包括這樣標(biāo)識的特定特征的數(shù)量。這些標(biāo)識符可以表示相同數(shù)量或不同數(shù)量的特定特征。
[0011]本文的附圖遵循編號慣例,其中開始的一位或多位數(shù)字對應(yīng)于圖的編號,其余的數(shù)字表示該圖中的元件或組件??梢杂上嗨茢?shù)字的用戶來識別不同圖之間的相似元件或組件。例如,143可以指圖1中的元件“43”,并且相似元件可以在圖2中被稱為“243”。可以增加、交換和/或去除本文的圖中示出的元件,以提供本公開的多個其它示例。此外,各圖中提供的元件的比例和相對尺寸旨在圖示本公開的示例,而不應(yīng)當(dāng)從限制的意義上去理解。
[0012]云架構(gòu)有助于提供服務(wù),如基礎(chǔ)設(shè)施即服務(wù)(IaaS)、平臺即服務(wù)(PaaS)或軟件即服務(wù)(SaaS)等。對于IaaS而言,這樣的云架構(gòu)利用運行虛擬機的物理服務(wù),其創(chuàng)建相對地簡單。例如,可以簡單地使用服務(wù)目錄模板來在企業(yè)云中創(chuàng)建大量VM。但是,VM創(chuàng)建的容易性最終導(dǎo)致企業(yè)所需的必要VM過多,這也被稱為VM蔓延。經(jīng)過一段時間,虛擬機變得過時,并且由于像需求改變、服務(wù)改變或一些其它環(huán)境因素這樣的各種因素而不再起到它們被創(chuàng)建的作用,但仍然消耗寶貴的資源,并且引發(fā)主體機構(gòu)的不必要開支。當(dāng)沒有為創(chuàng)建像生產(chǎn)環(huán)境或預(yù)演(staging)環(huán)境這樣的關(guān)鍵環(huán)境留有容量時,VM蔓延顯著得多,這可能引起生產(chǎn)發(fā)布的延遲。
[0013]在典型的數(shù)據(jù)中心中,VM被創(chuàng)建為部署服務(wù)或一組服務(wù)。如今的重要缺陷中的一些在于:由于VM的監(jiān)視參數(shù)與服務(wù)的監(jiān)視參數(shù)不同,所以數(shù)據(jù)中心管理員不能通過對服務(wù)器(VM)進行管理和監(jiān)視來決定VM的必要性。目前,基于代理的和類似的監(jiān)視方案被配置為監(jiān)視虛擬機的CPU、存儲器、I/O盤、I/O網(wǎng)絡(luò)。此外,將低性能的VM分類為過時通常是有危險的,因為VM可能正在管理未充分使用的服務(wù)或VM的規(guī)模過大。因此,為了正確地確定特定VM的有用性,需要監(jiān)視服務(wù)而不是監(jiān)視服務(wù)器。更特別地,特定服務(wù)需要被監(jiān)視并且被檢驗,以檢查用于管理該服務(wù)的部署的原因,以便針對是否有效地使用VM以及VM是否仍然必需做出正確決策。因此,本領(lǐng)域中需要獨立地監(jiān)視和管理服務(wù),而不是僅監(jiān)視和管理服務(wù)器或與其關(guān)聯(lián)的虛擬機。
[0014]如今,不存在基于所部署的服務(wù)來識別未充分使用的VM的自動化方式。相反,數(shù)據(jù)中心管理員必須手動地檢驗服務(wù)的活性,這在手動地執(zhí)行時是耗時間的并且是容易出錯的行為。在數(shù)據(jù)中心和生產(chǎn)環(huán)境中,服務(wù)基于負(fù)載、性能等不斷地移動至具有不同能力的虛擬機,使得較舊的或未充分使用的虛擬機保持沒有特定用途。這些虛擬機需要自動地被清除,使得可以回收資源。例如,客戶/消費者經(jīng)常需要最新的服務(wù)版本,這需要升級或撤回較舊的服務(wù)以及使之前的VM和關(guān)聯(lián)的服務(wù)版本廢棄。但是,監(jiān)視VM或服務(wù)器不能給出與VM關(guān)聯(lián)的服務(wù)或一組服務(wù)的準(zhǔn)確利用。例如,虛擬機有時可能以不合適的順序出現(xiàn),但VM中的服務(wù)可能是無反應(yīng)的或不穩(wěn)定的并且因此未被使用。因此,關(guān)聯(lián)的虛擬機未起到正確作用,并且需要一種自動的方式來識別和移除這樣的虛擬機以有助于防止VM蔓延。
[0015]例如,考慮數(shù)據(jù)中心中的用戶的數(shù)量對于數(shù)據(jù)中心的容量而言較高并且所有VM都活躍的情況。虛擬資源容量已達到其閾值,并且開發(fā)團隊想要建立預(yù)演環(huán)境,以重現(xiàn)并分析在生產(chǎn)期間發(fā)現(xiàn)的關(guān)鍵問題。在這樣的情景中,現(xiàn)有方法都不是有效的并且可能在日復(fù)一日的活動中產(chǎn)生延遲,甚至阻礙生產(chǎn)活動。這是因為:當(dāng)勞動力隨時間增加時,基礎(chǔ)設(shè)施容量與用戶數(shù)量的比率不斷降低至活躍VM的數(shù)量超過閾值的程度。此時,將不存在可以用于像預(yù)演或生產(chǎn)這樣的高優(yōu)先級環(huán)境的VM。
[0016]用于檢測VM蔓延的一個之前的方案涉及在電子表格中手動地跟蹤VM,使得當(dāng)VM的數(shù)量超過特定閾值時,取消空閑的VM,通知VM的所有者,并且刪除或歸檔VM。這里,VM創(chuàng)建涉及對創(chuàng)建的VM的總數(shù)進行控制的管理員的批準(zhǔn)。但是,由于需要管理員控制并監(jiān)視所創(chuàng)建的VM中的每個,所以這些手動過程是非常費力的。另一方案涉及使用監(jiān)視軟件來基于使用而監(jiān)視VM,以及隨后歸檔已空閑或休眠預(yù)定時間的VM。但是,這些軟件方法簡單地被配置為識別不活躍的VM并且僅去除未使用的VM。其它方案包括通過從私有云向公共云移動來擴展基礎(chǔ)設(shè)施容量。但是,這樣的移動可能導(dǎo)致更高成本,并且還會給用戶帶來安全問題。因此,前述方案中的每個在某一方面有缺陷,并且不足以正確地檢測和解決與VM蔓延關(guān)聯(lián)的冋題。
[0017]本公開的實現(xiàn)方式提供用于虛擬機資源管理的系統(tǒng)和方法。所提出的方案描述如下方法:除基于生命周期階段優(yōu)先級而預(yù)先取消VM以外,基于被管理的服務(wù)和服務(wù)目錄來識別不再需要的虛擬機。結(jié)果,可以收回資源,以提供更有效的資源利用和成本節(jié)約。這樣的方案將有助于數(shù)據(jù)中心管理員控制不必要的VM蔓延,并且確保一直有效地使用所有虛擬資源。
[0018]現(xiàn)在更詳細(xì)地參照附圖,其中相同的附圖標(biāo)記標(biāo)識所有圖中對應(yīng)的部分,圖1圖示根據(jù)示例實現(xiàn)方式的用于虛擬機監(jiān)視和取消的系統(tǒng)的簡化框圖。環(huán)境100被示出為包括用于管理云環(huán)境中的資源的系統(tǒng)。本文描述的用于管理云系統(tǒng)中的虛擬機的系統(tǒng)表示用于執(zhí)行本發(fā)明的實現(xiàn)方式的物理組件(例如,硬件)和/或編程指令的適當(dāng)組合。
[0019]如圖1中說明的,云系統(tǒng)100可以包括公共云系統(tǒng)、私有云系統(tǒng)和/或混合云系統(tǒng)。例如,包括公共云系統(tǒng)和私有云系統(tǒng)的環(huán)境100可以包括混合環(huán)境和/或混合云系統(tǒng)。公共云系統(tǒng)可以包括使公眾可通過互聯(lián)網(wǎng)獲得資源的服務(wù)提供商。私有云系統(tǒng)可以包括向防火墻后面的有限多個人提供被管理的服務(wù)的計算架構(gòu)。例如,私有云系統(tǒng)可以包括向防火墻后面的有限多個計算機提供被管理的服務(wù)的計算架構(gòu)?;旌显瓶梢岳绨▊鹘y(tǒng)服務(wù)器系統(tǒng)、私有云系統(tǒng)、公共云系統(tǒng)和/或動態(tài)云服務(wù)的混合?;旌显瓶梢岳缟婕坝啥鄠€系統(tǒng)構(gòu)成的物理上分離的服務(wù)和邏輯上分離的服務(wù)之間的相互依賴關(guān)系?;旌显瓶梢岳绨軌虮3知毺貙嶓w但能夠綁定在一起的多個云(例如,兩個云)。公共云系統(tǒng)和私有云系統(tǒng)可以例如被綁定在一起,例如通過公共云系統(tǒng)中的應(yīng)用和私有云系統(tǒng)中的虛擬機資源管理系統(tǒng)綁定在一起。
[0020]參照圖1,云架構(gòu)100可以包括物理主機服務(wù)器101a和物理主機服務(wù)器101b、虛擬化層103、VM控制層105、優(yōu)先級取消器120以及VM評估器115。此外,云計算環(huán)境100包括至少