宮大鵬 雷蕾 趙參 馮靜芳 陳卓
摘 要 云計(jì)算對(duì)于IT界來說是一場(chǎng)技術(shù)上的革命,成為IT行業(yè)未來的發(fā)展方向是毋庸置疑的。在這個(gè)倡導(dǎo)節(jié)能減排的時(shí)代,數(shù)據(jù)中心的節(jié)能減排則需要云計(jì)算技術(shù)來保駕護(hù)航。本文主要介紹在云計(jì)算技術(shù)體系下節(jié)能減排的關(guān)鍵技術(shù),通過調(diào)查、分析IT支撐系統(tǒng)云計(jì)算管理平臺(tái)的現(xiàn)狀,提出了云計(jì)算數(shù)據(jù)中心節(jié)能關(guān)鍵技術(shù)在IT支撐系統(tǒng)中的應(yīng)用原則和建設(shè)方案。
【關(guān)鍵詞】云計(jì)算 數(shù)據(jù)中心 節(jié)能關(guān)鍵技術(shù) IT支撐系統(tǒng) 動(dòng)態(tài)資源調(diào)度 動(dòng)態(tài)能耗管理
云計(jì)算技術(shù)的發(fā)展越來越好,建設(shè)數(shù)據(jù)中心所需要的IT設(shè)備也越來越多,數(shù)據(jù)中心的規(guī)模正在逐漸步入大型化,能耗也就成了數(shù)據(jù)中心不可忽視的問題。2011年開始,在IT支撐系統(tǒng)中引入云計(jì)算管理平臺(tái)開始盛行,在經(jīng)過虛擬化和云平臺(tái)的建設(shè)之后,給數(shù)據(jù)中心帶來的益處是有目共睹的。與此同時(shí),支撐云平臺(tái)的硬件規(guī)模得以快速發(fā)展,如何實(shí)現(xiàn)能源的合理利用是人們面臨的一大挑戰(zhàn)。
在數(shù)據(jù)中心的運(yùn)營(yíng)中,降低總體運(yùn)營(yíng)成本的方法有很多種,通常主要包括以下幾個(gè)方面:
引入虛擬化等技術(shù),提高資源的利用率,從而降低數(shù)據(jù)中心的整體運(yùn)營(yíng)成本;通過構(gòu)建虛擬化資源池,實(shí)現(xiàn)物理服務(wù)器和應(yīng)用的解耦,應(yīng)用可以在池內(nèi)漂移;靈活部署,提升運(yùn)維管理效率。
本文首先闡述云計(jì)算的關(guān)鍵節(jié)能技術(shù),分析云計(jì)算節(jié)能關(guān)鍵技術(shù)在IT支撐系統(tǒng)的應(yīng)用原則和建設(shè)方案,總結(jié)云計(jì)算節(jié)能技術(shù)的能效分析。
1 云計(jì)算的關(guān)鍵節(jié)能技術(shù)
首先將物理資源進(jìn)行整合,創(chuàng)建一個(gè)共享的資源池,其次根據(jù)系統(tǒng)當(dāng)前負(fù)載、系統(tǒng)資源的使用情況,啟用動(dòng)態(tài)資源調(diào)度和智能電源管理,實(shí)現(xiàn)云計(jì)算環(huán)境下的節(jié)能減排。
1.1 服務(wù)器整合
由于硬件發(fā)展速度遠(yuǎn)遠(yuǎn)超過軟件系統(tǒng)的發(fā)展速度,絕大多數(shù)情況下應(yīng)用服務(wù)器的平均利用率非常的低。服務(wù)器虛擬化技術(shù)的出現(xiàn),改變了這一現(xiàn)狀。通常虛擬化有兩種形式,即一虛多和多虛一。一虛多是將一臺(tái)物理服務(wù)器抽象成多臺(tái)相互隔離的邏輯服務(wù)器,多虛一是指多臺(tái)物理服務(wù)器相互協(xié)作,處理同一個(gè)業(yè)務(wù),即分布式計(jì)算。本文主要討論的服務(wù)器虛擬化技術(shù)是指一虛多的形式。
原來一臺(tái)物理服務(wù)器運(yùn)行一套系統(tǒng),虛擬化后一臺(tái)物理服務(wù)器可以虛擬為多臺(tái)相互獨(dú)立的系統(tǒng)。經(jīng)過虛擬化的整合后,物理服務(wù)器的數(shù)量明顯減少,從而降低IT設(shè)備的總能耗。物理服務(wù)器數(shù)量的減少,不僅可以節(jié)省電力,還可以節(jié)省數(shù)據(jù)中心的機(jī)房空間、設(shè)備維保、空調(diào)制冷等資源。在服務(wù)器整合時(shí),還要充分考慮系統(tǒng)的處理能力,即單臺(tái)虛擬機(jī)的資源不能超過所在宿主機(jī)的資源上限,同時(shí)為滿足系統(tǒng)的高可用性,還需要在資源池中提前預(yù)留一定量的資源做冗余。
1.2 動(dòng)態(tài)資源調(diào)度
在資源使用過程中,需求與容量隨著時(shí)間的變化,會(huì)有資源閑置和資源過載等情況,通過資源調(diào)度管理的優(yōu)化,可以對(duì)資源進(jìn)行動(dòng)態(tài)地重新分配。
資源調(diào)度通??煞譃閭?cè)重PaaS層的作業(yè)級(jí)調(diào)度和側(cè)重IaaS層的設(shè)施級(jí)調(diào)度。作業(yè)級(jí)調(diào)度主要針對(duì)PaaS層具體的運(yùn)行程序進(jìn)行調(diào)度,是系統(tǒng)為作業(yè)分配資源及調(diào)度資源的過程。設(shè)施級(jí)調(diào)度是指將底層資源作為一種基礎(chǔ)設(shè)施服務(wù)提供給用戶,用戶根據(jù)實(shí)際情況使用這些資源。
豐富的資源管理調(diào)度的策略為IT支撐系統(tǒng)的節(jié)能提供了有利支撐,目前IT支撐系統(tǒng)常用的資源管理調(diào)度策略包括基于負(fù)載的策略、基于填滿的策略、基于分散的策略、基于高可用的策略、彈性擴(kuò)展算法、負(fù)載均衡調(diào)整算法、預(yù)負(fù)載算法。
1.2.1 基于負(fù)載的策略
虛擬機(jī)優(yōu)先安裝于負(fù)載最輕的物理服務(wù)器之上,使應(yīng)用程序的運(yùn)行效率更高。在基于負(fù)載的策略下,影響主機(jī)部署優(yōu)先級(jí)的因子有:主機(jī)負(fù)載。
1.2.2 基于填滿的策略
虛擬機(jī)集中安裝在數(shù)量盡量少的物理服務(wù)器上,最大化每個(gè)被使用的服務(wù)器利用率,一方面可以減少資源碎片,另一方面可以根據(jù)需求動(dòng)態(tài)啟動(dòng)和關(guān)閉服務(wù)器,從而達(dá)到節(jié)能減排的目的。
1.2.3 基于分散的策略
虛擬機(jī)被分散安裝在數(shù)量盡可能多的物理服務(wù)器上,這樣可以降低物理服務(wù)器故障帶來的影響,提高應(yīng)用程序的運(yùn)行效率。在基于分散的策略下,影響主機(jī)部署優(yōu)先級(jí)的因子有:主機(jī)CPU容量、主機(jī)內(nèi)存容量、主機(jī)優(yōu)先級(jí)。
1.2.4 基于高可用的策略
將支持高可用性的物理服務(wù)器資源分配給關(guān)鍵業(yè)務(wù),使提供更高的資源可用性。在基于高可用性的策略下,影響主機(jī)部署優(yōu)先級(jí)的因子有:服務(wù)器類型。
1.2.5 彈性擴(kuò)展算法
彈性擴(kuò)展指在云應(yīng)用提供服務(wù)期間實(shí)現(xiàn)支撐云應(yīng)用的虛擬機(jī)實(shí)例個(gè)數(shù)動(dòng)態(tài)的增加或減少,通俗地說就是在業(yè)務(wù)負(fù)載較高的時(shí)候啟動(dòng)較多的虛擬機(jī)實(shí)例,在業(yè)務(wù)負(fù)載較低的時(shí)候停止一些虛擬機(jī)實(shí)例。云應(yīng)用集群的動(dòng)態(tài)管理就是彈性擴(kuò)展的一個(gè)典型用例。
1.2.6 負(fù)載均衡調(diào)整算法
資源負(fù)載均衡調(diào)整目的是保證云計(jì)算環(huán)境的計(jì)算平均分?jǐn)偟礁鱾€(gè)資源上,提升整體資源利用率,并縮短任務(wù)執(zhí)行時(shí)間。主要實(shí)現(xiàn)手段為:把池內(nèi)負(fù)載高于“均衡負(fù)載閥值”的物理主機(jī)上絕對(duì)負(fù)載最輕的虛擬機(jī)遷移到池內(nèi)負(fù)載低于“均衡負(fù)載閥值”的物理主機(jī)上,直到源物理主機(jī)的負(fù)載低于“均衡負(fù)載閥值”,同時(shí)也要保證目標(biāo)物理主機(jī)的負(fù)載不得高于“均衡負(fù)載閥值”。
1.2.7 預(yù)負(fù)載算法
應(yīng)用的負(fù)載通常具有一定的周期性,根據(jù)虛擬機(jī)負(fù)載的歷史數(shù)據(jù),分析虛擬機(jī)的負(fù)載高峰特征對(duì)虛擬機(jī)負(fù)載進(jìn)建模,可以合理判斷出應(yīng)用高峰期的時(shí)間段并將高性能的物理服務(wù)器及時(shí)啟動(dòng),將該應(yīng)用遷移到高性能的服務(wù)器上,以便在高峰期時(shí),可以提供高性能的服務(wù)。
1.3 智能電源管理
在IT支撐系統(tǒng)的資源池中,為了降低能耗,可以通過動(dòng)態(tài)的資源調(diào)度來實(shí)現(xiàn)資源負(fù)載均衡,也可以把動(dòng)態(tài)電源管理與關(guān)聯(lián)性規(guī)則相結(jié)合,將符合節(jié)能策略的虛擬機(jī)從現(xiàn)有主機(jī)遷移到另外一臺(tái)主機(jī)上,再通過智能電源管理,將空閑的主機(jī)關(guān)機(jī)。根據(jù)規(guī)則,當(dāng)現(xiàn)有主機(jī)不足以支撐現(xiàn)有的業(yè)務(wù)時(shí),可自動(dòng)喚醒主機(jī)。
這個(gè)過程需要結(jié)合電源管理、關(guān)聯(lián)性規(guī)則、在線遷移虛擬機(jī)多項(xiàng)技術(shù)共同協(xié)作來實(shí)現(xiàn)。根據(jù)資源的利用率,資源池可以動(dòng)態(tài)的開啟和關(guān)閉主機(jī)的電源,從而減少能源的浪費(fèi)。通過動(dòng)態(tài)監(jiān)控資源池中所有虛擬機(jī)的資源負(fù)載,與資源池中所有主機(jī)的可用資源總量進(jìn)行比較,如果有足夠的額外容量,則可關(guān)閉某些主機(jī)使其進(jìn)入待機(jī)模式。首先將待關(guān)閉的主機(jī)上的虛擬機(jī)遷移到仍有可用資源的其他主機(jī),然后關(guān)閉其電源。相反,當(dāng)認(rèn)為容量不夠時(shí),動(dòng)態(tài)資源調(diào)度功能模塊會(huì)啟動(dòng)這些主機(jī),然后通過在線遷移將虛擬機(jī)遷移到這些主機(jī)上。在這些資源的計(jì)算過程中,該功能模塊在考慮當(dāng)前需求的同時(shí),也需要將預(yù)留資源考慮在內(nèi)。
資源池的動(dòng)態(tài)資源調(diào)度是使用電源管理協(xié)議令主機(jī)恢復(fù)在線狀態(tài):智能平臺(tái)管理界面(IPMI)或Wake-On-LAN(WOL)。每個(gè)協(xié)議的實(shí)現(xiàn)離不開硬件的支持和配置。如果主機(jī)不支持電池管理協(xié)議,就不能通過電源管理將主機(jī)關(guān)機(jī)。如果主機(jī)的硬件和配置支持多個(gè)協(xié)議,則按順序使用協(xié)議。
主機(jī)電源的打開和關(guān)閉操作應(yīng)按照設(shè)置的優(yōu)先級(jí)進(jìn)行。優(yōu)先級(jí)分類的依據(jù)為:資源池內(nèi)資源的利用率過高或不足,以及預(yù)期對(duì)主機(jī)電源狀況的改善。
當(dāng)物理服務(wù)器計(jì)算負(fù)荷較低時(shí),電源管理會(huì)調(diào)用動(dòng)態(tài)資源調(diào)度策略,將低負(fù)荷服務(wù)器上的虛擬機(jī),通過遷移技術(shù)遷移到仍有資源空間的服務(wù)器上,然后將低負(fù)荷服務(wù)器關(guān)機(jī)或進(jìn)入節(jié)電模式,節(jié)省服務(wù)器耗電。
2 節(jié)能技術(shù)的應(yīng)用與能效分析
2.1 節(jié)能技術(shù)的應(yīng)用
通過在數(shù)據(jù)中心中應(yīng)用云計(jì)算的關(guān)鍵節(jié)能技術(shù),從而實(shí)現(xiàn)節(jié)能減排。具體應(yīng)用環(huán)節(jié)如下:
(1)將數(shù)據(jù)中心的低配置或服務(wù)到期的服務(wù)器進(jìn)行整合,以高性能服務(wù)器替代;
(2)整合高性能服務(wù)器進(jìn)行資源池化;
(3)資源池采用動(dòng)態(tài)資源調(diào)度,定義計(jì)算資源的高、低閾值;
(4)在資源池內(nèi)設(shè)定虛擬機(jī)和主機(jī)的關(guān)聯(lián)性規(guī)則;
(5)對(duì)資源池內(nèi)的主機(jī)啟用電源管理;
(6)制訂資源調(diào)度策略和電源管理策略,定義業(yè)務(wù)忙時(shí),主機(jī)負(fù)載的高、低閾值。
當(dāng)業(yè)務(wù)不處于忙碌期時(shí),通過實(shí)時(shí)遷移,將負(fù)載較低的主機(jī)上的全部虛擬機(jī)遷至其他未達(dá)到負(fù)載上限的主機(jī)上,將空閑下來的主機(jī)關(guān)機(jī);而當(dāng)業(yè)務(wù)進(jìn)入忙碌期之前,喚醒待機(jī)的主機(jī),將一部分虛擬機(jī)遷移至新啟動(dòng)的主機(jī)上。整個(gè)過程的實(shí)現(xiàn)可以手動(dòng)控制,也可以設(shè)置按計(jì)劃的執(zhí)行策略,使之自動(dòng)化控制。
2.2 能效分析
通過智能電源管理,可以降低數(shù)據(jù)中心運(yùn)營(yíng)過程中的主機(jī)功耗,因業(yè)務(wù)計(jì)算能力需求越高,能耗越高,而業(yè)務(wù)計(jì)算能力需求也會(huì)因?yàn)橐驑I(yè)務(wù)的不同而有所區(qū)別。根據(jù)表1實(shí)際測(cè)試結(jié)果來看,在沒有啟用DMP的情況下,資源無法得到充分利用,且服務(wù)器總功耗高達(dá)1132W;在設(shè)置了合理的DMP閥值的情況下,虛擬機(jī)重新分配,空閑服務(wù)器下電,CPU、內(nèi)存利用率相比之前有所提升,總功耗相比之前降低33%,具體對(duì)比結(jié)果如圖1所示。因此通過系統(tǒng)動(dòng)態(tài)電源管理,可有效的降低主機(jī)的總功耗,并且提升服務(wù)器資源利用率,實(shí)現(xiàn)節(jié)能減排。
以上的數(shù)據(jù)只是功耗的節(jié)省,整合服務(wù)器所能帶來的能源節(jié)省還包括:機(jī)房占地、機(jī)柜/架空間、網(wǎng)絡(luò)路由與交換設(shè)備、傳輸線纜等。
3 結(jié)束語
節(jié)能關(guān)鍵技術(shù)在支撐云平臺(tái)的應(yīng)用中,可以有效降低能耗。通過對(duì)入云業(yè)務(wù)場(chǎng)景進(jìn)行梳理,對(duì)資源源調(diào)度依據(jù)、資源調(diào)度算法的研究,建立一個(gè)節(jié)能調(diào)度模型,并將其應(yīng)用于支撐云平臺(tái)業(yè)務(wù),能夠有效解決云計(jì)算環(huán)境下的節(jié)能減排問題。同時(shí)云計(jì)算節(jié)能關(guān)鍵技術(shù)資源調(diào)度策略的靈活性,在業(yè)務(wù)支撐系統(tǒng)領(lǐng)域具有較強(qiáng)的實(shí)用性,尤其是在系統(tǒng)數(shù)量多、機(jī)房空間緊張、能耗偏高、業(yè)務(wù)響應(yīng)速度要求越來越高的情況下,可以大大提升資源利用率,合理控制用電量,顯著提升經(jīng)濟(jì)效益。
作者單位
中國(guó)移動(dòng)通信集團(tuán)廣西有限公司信息系統(tǒng)部 廣西壯族自治區(qū)南寧市 530022