專利名稱:利用虛擬機并發(fā)遷移技術(shù)降低云計算平臺能源消耗的方法
技術(shù)領(lǐng)域:
本發(fā)明屬于云計算平臺技術(shù)領(lǐng)域,具體為一種利用虛擬機并發(fā)遷移技術(shù)降低云計算平臺能源消耗的方法。
背景技術(shù):
當(dāng)今世界,由于可用能源的存儲總量有限,而能源的消耗總量卻不斷增加,因此,、節(jié)能技術(shù)越來越受到人們的重視。隨著近年來云計算的迅猛發(fā)展,各大公司都推出了服務(wù)器規(guī)模達(dá)到數(shù)以百萬計的大型數(shù)據(jù)中心,對能源的消耗非常高,因此如何降低云計算平臺的能耗成為了一個重要的課題。因此,本專利所描述的節(jié)能方法,能夠通過降低完成相同任務(wù)情況下服務(wù)器所需要的能耗,同時也為節(jié)能事業(yè)做出貢獻。虛擬機在線遷移是云計算平臺提供的重要功能之一。云計算平臺可通過在線遷移技術(shù),在多個不同物理主機之間進行負(fù)載均衡與服務(wù)器整合,將多臺物理主機的服務(wù)整合在一臺或少數(shù)幾臺物理主機上,同時關(guān)閉閑置的物理主機,從而降低整體功耗。與此同時,在線遷移技術(shù)能夠所運行服務(wù)的可用性,一次遷移所造成的服務(wù)不可用時間僅僅為數(shù)百毫秒?,F(xiàn)有的在線遷移技術(shù)需要將虛擬機的所有內(nèi)存通過網(wǎng)絡(luò)從源主機傳輸至目標(biāo)主機。由于虛擬機所運行的服務(wù)持續(xù)運行,因此在網(wǎng)絡(luò)傳輸過程中,虛擬機的內(nèi)存同時不斷發(fā)生變化,因此單輪傳輸并不足夠完成虛擬機遷移,而是通過多輪傳輸進行。每一輪需要首先掃描虛擬機內(nèi)存相對比上一輪傳輸時所產(chǎn)生的差異,并傳輸內(nèi)存差異量,在末輪會暫停虛擬機并傳輸剩余的內(nèi)存。由于每一輪都需要傳輸內(nèi)存差異量,因此每一輪所消耗的時間越長,就會產(chǎn)生更多的內(nèi)存差異量。
發(fā)明內(nèi)容
本發(fā)明的目的在于提出一種能夠方便、有效降低云計算平臺能源消耗的方法。本發(fā)明提出的降低云計算平臺能源消耗的方法,是通過減少虛擬機在線遷移時無效數(shù)據(jù)傳輸,提高虛擬機遷移的效率,降低完成遷移的能量消耗,從而減少服務(wù)器能耗。本發(fā)明的主要原理為將虛擬機在線遷移中的內(nèi)存掃描與網(wǎng)絡(luò)傳輸步驟進行并行化,進而減少無效的內(nèi)存?zhèn)鬏敚苊獠槐匾哪芰肯?。原理有以下幾點第一,通過并發(fā)內(nèi)存掃描,降低單次掃描的時間。第二,通過并發(fā)網(wǎng)絡(luò)傳輸,降低單次傳輸?shù)臅r間。第三,通過前兩者,降低單輪掃描/傳輸?shù)臅r間,從而降低兩輪之間所產(chǎn)生的內(nèi)存差異量,進而減少由于重復(fù)的內(nèi)存變化而發(fā)生的網(wǎng)絡(luò)傳輸。第四,無效網(wǎng)絡(luò)傳輸?shù)臏p少使得遷移的效率增加,從而減少了單次遷移所消耗的能量。第五,單次遷移性能的提高有助于云計算全局的遷移策略更靈活,管理員能夠更加充分的利用遷移進行負(fù)載均衡與服務(wù)整合,從而在更大的范圍內(nèi)進行能耗的管理與優(yōu)化。本發(fā)明提出的降低云計算平臺能源消耗的方法,具體步驟為
首先,使用多核處理器并發(fā)進行內(nèi)存掃描,減少單次內(nèi)存掃描所需要的時間;其次,使用多網(wǎng)卡并發(fā)傳輸方式進行內(nèi)存數(shù)據(jù)的傳輸,從而減少單次傳輸?shù)臅r間。由于單次掃描/傳輸時間的減少,使得在此期間的內(nèi)存變化量隨之減少,從而降低了完成在線更新所需要的掃描/傳輸輪次。再次對兩次傳輸?shù)膬?nèi)存差異量進行判斷,若差異量小于一定閾值,則暫停虛擬機并進入末輪掃描/傳輸,從而進一步減少不必要的輪次。本發(fā)明方法一方面能夠在保證最小化服務(wù)不可用時間的同時,有效提高虛擬機在線遷移的效率,壓縮虛擬機在線遷移的時間,減少無效數(shù)據(jù)的傳輸總量,從而降低完成等效工作量的服務(wù)器能耗。另一方面,由于單次遷移所需要的功耗降低,管理員可對云計算平臺的整體遷移策略進行進一步優(yōu)化,通過更靈活的利用虛擬機動態(tài)遷移技術(shù)來,在更大的節(jié)點范圍進行負(fù)載均衡,從而進一步提高全局的服務(wù)器能量利用效率。本發(fā)明的具體實現(xiàn)為對虛擬機監(jiān)控器(VMM, Virtual Machine Monitor)進行修 改,對虛擬機在線遷移中的以下步驟進行優(yōu)化。第一,對于內(nèi)存掃描步驟,將傳統(tǒng)的單核掃描方式改為多核掃描方式。若處理器核的數(shù)量為n,則每個處理器核負(fù)責(zé)虛擬機所有內(nèi)存的1/n,將內(nèi)存掃描時間降低為原來的1/n。第二,將掃描后得到的內(nèi)存差異通過多塊網(wǎng)卡同時進行發(fā)送。若網(wǎng)卡的數(shù)量為m,則每塊網(wǎng)卡負(fù)責(zé)發(fā)送所有數(shù)據(jù)的1/m,將數(shù)據(jù)發(fā)送時間降低為原來的1/m。第三,對數(shù)據(jù)掃描/傳輸輪次的控制。每次內(nèi)存差異量掃描與內(nèi)存?zhèn)鬏敃r,均對差異量與傳輸量進行評測,若本地的內(nèi)存差異量與上次傳輸量的差值小于閾值T,則表示內(nèi)存的改動速度已經(jīng)超過了掃描/傳輸?shù)乃俣?,通常是由于虛擬機正在運行內(nèi)存敏感型應(yīng)用,不斷修改大量內(nèi)存。由于內(nèi)存的修改速度遠(yuǎn)大于掃描/傳輸內(nèi)存的速度,因此部分內(nèi)存可能會在傳輸過程中又一次被修改,導(dǎo)致兩次或多次重復(fù)的內(nèi)存?zhèn)鬏?。因此?dāng)差值小雨閾值時暫停整個虛擬機的運行,將剩余所有的內(nèi)存通過網(wǎng)絡(luò)進行傳輸,從而進一步減少無效數(shù)據(jù)的傳輸。本書面說明可使該技術(shù)領(lǐng)域具有普通技能的人能夠使用含有與權(quán)利要求所列要素近似的可替代要素的實施方案。因此,這項發(fā)明的范圍包括與權(quán)利要求的字面意思完全相同的方法,還包括其他與權(quán)利要求的字面意思沒有實質(zhì)性區(qū)別的方法。雖然在這里只描述和說明了部分特征和實施方案,但相關(guān)技術(shù)的基本方法可以進行許多修改和變化。所附權(quán)利要求將涵蓋所有這些修改和變化。
圖I為虛擬機監(jiān)控器在使用并發(fā)在線遷移后的數(shù)據(jù)流示意圖。圖2為實現(xiàn)并發(fā)在線遷移的流程示意圖。
具體實施例方式下面結(jié)合實例對本發(fā)明進行進一步說明。當(dāng)前,許多公司與機構(gòu)均擁有大規(guī)模的數(shù)據(jù)中心,并使用虛擬化技術(shù)對服務(wù)進行部署,虛擬機在線遷移成為了負(fù)載均衡與服務(wù)整合的核心技術(shù),遷移發(fā)生的頻率也相當(dāng)高。現(xiàn)有的遷移方法可能對同一內(nèi)存區(qū)域進行多次重復(fù)掃描與傳輸,不但因此降低了性能,而且浪費了能耗。尤其是當(dāng)虛擬機內(nèi)部運行的服務(wù)需要進行大量內(nèi)存寫操作時,這一浪費更為明顯對于內(nèi)存為16G且運行memcached服務(wù)的虛擬機,遷移的時間大于半小時。因此,通過本發(fā)明對遷移過程的能耗進行優(yōu)化,從數(shù)據(jù)中心整體來看,能夠節(jié)約的能量總量非??捎^。該方法也同樣能夠?qū)θ值囊赃w移為核心的節(jié)能策略進行調(diào)整。傳統(tǒng)的以遷移為核心的節(jié)能策略通常通過將若干運行于不同物理主機的虛擬機整合至同一臺物理主機,關(guān)閉空閑主機來節(jié)約能耗。但由于遷移本身會帶來能耗成本,因此必須考慮遷移所帶來的能耗節(jié)約是否大于遷移操作本身。未采用本方法前,由于遷移的能耗成本較大,因此對節(jié)能策略有較大約束。通過本方法,可以使得節(jié)能策略更加靈活,從而為進一步降低云計算環(huán)境的 全局能耗打下了基礎(chǔ)。
權(quán)利要求
1.一種利用虛擬機并發(fā)遷移技術(shù)降低云計算平臺能源消耗的方法,其特征在于具體步驟為 首先,使用多核處理器并發(fā)進行內(nèi)存掃描,減少單次內(nèi)存掃描所需要的時間; 其次,使用多網(wǎng)卡并發(fā)傳輸方式進行內(nèi)存數(shù)據(jù)的傳輸,減少單次傳輸?shù)臅r間;由于單次掃描和傳輸時間的減少,使得在此期間的內(nèi)存變化量隨之減少,從而降低完成在線更新所需要的掃描/傳輸輪次; 再次,對兩次傳輸?shù)膬?nèi)存差異量進行判斷,若差異量小于一定閾值,則暫停虛擬機并進入末輪掃描/傳輸,從而進一步減少不必要的輪次。
全文摘要
本發(fā)明屬于云計算平臺技術(shù)領(lǐng)域,具體為一種利用虛擬機并發(fā)遷移技術(shù)降低云計算平臺能源消耗的方法。具體實現(xiàn)為對于虛擬機在線遷移的單次內(nèi)存掃描,使用多核并發(fā)的掃描方式,減少單次掃描時間;對于改動內(nèi)存單次數(shù)據(jù)傳輸,使用多網(wǎng)卡并發(fā)的傳輸方式,減少單次數(shù)據(jù)傳輸?shù)臅r間;計算兩次內(nèi)存?zhèn)鬏數(shù)牟町惲?,若差異量小于閾值,則暫停虛擬機運行并進入末輪掃描與傳輸,從而減少不必要的輪次。該方法可以有效提高虛擬機在線遷移的效率,減少對不必要的內(nèi)存更改所做的數(shù)據(jù)傳輸,從而減少服務(wù)器系統(tǒng)在運行時的整體能量消耗。
文檔編號G06F9/46GK102662746SQ201210117918
公開日2012年9月12日 申請日期2012年4月22日 優(yōu)先權(quán)日2012年4月22日
發(fā)明者夏虞斌, 宋翔, 施繼成, 臧斌宇, 陳海波 申請人:復(fù)旦大學(xué)