如何實現更加輕盈的云計算?
有人把云計算技術視為個人電腦、互聯網之后的第三次革新浪潮,認為它即將甚至已經從根本上改變整個信息產業的格局,改變人類使用計算機的習慣和方式,因此云計算技術得到了迅猛發展。但是,它改變世界的同時,自己也需要被改變:由于云計算規模越來越大,它對能源與環境的影響已越來越突出,能效問題是云計算發展道路上必須要跨過的障礙。
在云計算出現之前,想要大量儲存和處理數據只能自己搭建服務器系統。這不僅需要很多IT知識,還需要很高的成本,云計算技術的出現改變了這一切。所謂“云服務”,是指通過互聯網,讓很多用戶共享軟硬件資源,按照用戶需求提供計算機等設備。于是,用戶不再需要了解“云”中的基礎設施細節,也不需要擁有相關的專業知識,就能隨時隨地處理和存儲大量數據。因為他們不用負責控制“云”中的設備和軟件,只需要付出相對低廉的費用,把技術細節交給云服務的提供商來處理就好。
通過互聯網,用戶可以非常方便地使用云服務,因此互聯網上的“云”正迅速擴張,變得越來越龐大,甚至能把產業鏈的不同環節整合在一起。此外,云計算還讓一些很有想象力的應用成為現實。
云服務提供商集成的大量存儲和計算資源能形成規模效應,用戶可以隨時根據需要購買相應服務,而不需要為了短暫的高峰需求購買大量資源。從這個意義上說,云服務比本地服務更加節約資源和能源。根據模擬軟件CLEER的估算,如果所有的美國公司都把自己的電子郵箱程序、電子表格應用和客戶管理軟件都轉移到集中的云服務器里,就可以把計算耗能降低87%,節省下的能源足夠讓洛杉磯運轉一年。
云計算的好處顯而易見,但隨著其規模越來越大,云計算本身的能耗越來越不可忽視。今天,云計算的耗電量已經超過全球總耗電量的1%。而且,把資源聚集在一起形成規模效應本身也有成本。云計算服務商需要專門建設數據中心,并在數據中心里安置成百上千臺服務器、處理器和硬盤設備。這些設備運行時會散發大量熱,因此數據中心需要額外的支持設備(比如散熱系統)來維護正常運作,互聯網公司谷歌甚至專門成立了能源部門為自己的數據中心供能。
一般來說,一個占地500平方米的數據中心每天消耗的電力就高達38000度,這一數字超過了3500戶歐洲家庭日用電量的總和。從2000年到2007年,全世界數據中心的耗電量已從700億度增至3300億度,到2020年預計將超過1萬億度。此外,在2014年,只有8.5%的數據中心負責人預計在2015年后數據中心的容量仍然夠用,到2020年時,75%的數據中心必須要擴容。因此,到2020年,預計數據中心的建設規模幾乎將是2010年的兩倍,達到780億美元,這讓云計算的能效、對環境的影響等問題更為突出。
探秘云計算
從上面這些數字可以看出,為云計算設計高能效的解決方案已經是迫在眉睫的問題。云計算耗能根源在哪?怎樣節約云計算?下面的內容,不妨一看。
云計算系統有幾個不可或缺的部分。首先,它需要大量的硬件設備來存儲并處理數據。這些硬件設備包括放置在機柜內的計算和存儲服務器,以及處理器、內存、硬盤等服務器組件。其次,在服務器之間,服務器與用戶之間需要連接,所以網絡也必不可少,它是連接用戶與計算、存儲等云資源的橋梁。此外,數據中心還需要專門的軟件來監控和管理云計算的基礎設施,這些軟件就是云管理系統(簡稱CMS)。***,云服務商還需要安裝合適的應用軟件,幫助用戶使用云服務。
這幾個部分都需要消耗大量的能源,也都會損失和浪費很多能源,比如在夜間溫度較低時,散熱系統仍在全速運行,或者系統在運行,卻沒有為用戶提供服務。2003年,單機柜服務器的功率密度在0.25千瓦到1.5千瓦之間,而到了2014年,這個數字上升至10千瓦,預計到2020年會上升至30千瓦。而且,大多數服務器空載時的功率超過峰值功率的50%,服務器的平均利用率一般只有10%到50%。因此,一部只以20%性能運行的服務器的能耗,可能相當于它滿載時能耗的80%。考慮到僅在2013年***一個季度,新服務器的出貨量就超過250萬臺,提高服務器的能效就成為***要務。
而在網絡環節,主要有3個地方會消耗能源:數據中心內部的連接、不同數據中心間的網絡連接,以及讓外部用戶訪問的固定網絡和無線網絡。在目前的數據中心,網絡成本占所有運營費用的10%,這個數字還可能隨著互聯網流量的增加上漲到50%。B.硬件優化之路提高能效的***步是升級網絡設備,增加節能模式,減少網絡設施在未被充分使用時的耗電量。如果能把未使用的端口、連接和交換機完全關閉,它們就不會因為空轉而耗能了。
升級后,設備的熱載荷也會下降,這又會降低散熱系統的能耗,提升系統的穩定性。不過,只調整網絡設備是不夠的,因為當網絡連通性降低時,系統性能也會下降。所以,還需要調整網絡結構,讓網絡流量可以沿著多個路徑傳播,或只通過少數幾個高能耗的關鍵路徑發送,而網絡中的其他部分則進入低能耗模式。這種方案還可用于數據中心間的網絡,充分挖掘網絡帶寬,因為批量傳輸所需的成本比單獨傳輸要低。使用云管理系統的主要目的,是對基礎設施(包括服務器、虛擬機和應用程序)進行調度以實現負載平衡。虛擬機是體現云服務優越性的***范例,它借助軟件模擬出計算機系統,具有硬件功能,可以在完全隔離的環境中運行。有幾種虛擬機的使用方法能提高云計算的能效。首先,可以讓虛擬機根據負載情況重新調配資源;其次,可以為虛擬機的布置選擇能效***的物理機;***,可以將未充分利用的虛擬機遷移至數量更少的主機上,并把一直未使用的虛擬機關閉。
不過,這些步驟需要CPU軟件功耗模式來實現。該模式下,軟件和硬件彼此協調以共同調整能耗。而且,服務器本身也可以通過調整實際負載來降低能耗。研究表明,即便使用簡單的試探法(比如在服務器持續空載一段時間后關閉服務器),也能節約大量能源。
下一步措施是在更宏觀的范圍內實施管理措施,比如合并多個數據中心。但是,這會增加虛擬機遷移所需的開銷,在輸入輸出兩端都要消耗能量。為了弄清楚合并數據中心能否提高能效,我們可以借助一些模擬工具,如CloudSim,它可以評估云計算管理系統消耗和節約的電量,并進一步比較服務質量的變化。顯然,如果既能降低能耗,又不會影響用戶使用云服務,這種合并就有利于降低云計算的能耗。云管理系統不僅可以控制服務器,還可以控制網絡系統,甚至控制散熱和供電,因為云管理系統“知道” 需要哪些資源,不需要哪些資源,因此可以選擇合適的虛擬技術,并在服務器空載時關閉散熱設備。為云計算提供支持的數據中心是一套高度耦合的系統,幾乎可以視作一臺大型計算機。因此,除了從數據中心的每個部分著手,降低能耗之外,還得把整個數據中心視作一個整體,分析各個基礎設施之間的相關性,進而尋找節能方案。
應用設備是云計算中可管理的最小單位,但它們的性能可以影響所需服務器的數量,從而產生多米諾效應,進一步影響網絡規模和支持性的設備——比如散熱和供電設備的數量。因此,為目標應用程序選擇適當的硬件資源,可能會對數據中心的總體能耗產生重大影響。這里的實例包括,用GPU而不是CPU運行可以高度并行的應用程序(有些程序可以在成千上萬個處理器上同時運行,節省運算時間)。和CPU相比,GPU上的計算單元非常密集,可以同時執行很多任務,更適合并行計算,同時能耗更低。
美國勞倫斯·伯克利國家實驗室開發出的開源能效評估模型CLEER能對應用轉移至云端的過程進行節能分析。CLEER估計,和現有的分布式使用商業軟件相比,云計算有可能把現在的能耗降低95%左右。此外,內容數字化也能極大降低能耗。例如,在視頻行業中,通過云計算系統向用戶提供視頻的能耗比郵遞CD和DVD要低15%。
靈活的云架構還能間接優化能源利用。比如,數據中心中用來調整硬件負載狀態的技術還可以用來調節電網頻率,這樣電網就能保持在***頻率上,從而有助于能效在更宏觀層面上的提升。未來,研究人員既需要讓能效解決方案照顧到云計算系統里的每個單元,也要讓整個系統高效運行,這樣才能解決云計算的能耗問題,云計算也才能讓我們的世界變得更好。




















