用開源保護地球,Crane雲上助力全球碳中和節能減排

語言: CN / TW / HK

沈祖麟,Crane Member,專注容器網路、成本優化等領域,常活躍於開源社群。GitHub:  https://github.com/zsnmwy

減少碳排放是人類共識

你知道嗎?北極熱到可以穿短袖了,溫度飆升至32.5攝氏度。科學家說,眾多物種隨著全球變暖已經到達了滅絕邊緣,如果不立即採取措施,北極熊會在本世紀末滅絕。減少碳排放、保護地球已成為全人類共識。

全球氣候行動峰會發布的《指數氣候行動路線圖》顯示,數字科技在能源、製造業、農業、建築、交通等領域的解決方案,可以幫助全球減少15%的碳排放,是實現碳減排的關鍵技術因素。雲端計算平臺是資料中心基礎設施的“作業系統”,連線資料中心基礎設施和上層應用的紐帶和橋樑。如何在業務功能不受影響的情況下,提高整體的能耗比,使用更低的能耗,使計算、儲存、網路等資源滿足一樣的業務需求。提高整體的能耗比,降低PUE,成為資料中心節能的關鍵。通過在雲端計算平臺層面實施先進的技術和管理措施,能夠極大的提高雲計算資料中心的能源利用率,促進降本增效,實現碳排放的顯著減少。

從Crane到Carbon Neutrality

你能在3秒內從Carbon Neutrality(碳中和)這個詞彙中找出CRANE這幾個字母嗎?是的,Crane不僅僅是Cloud Resource Analytics and Economics,還具備一個隱藏能力:碳中和。Crane正式釋出國內第一個雲原生應用碳排放計算器和優化器。

Crane提供了面向雲原生技術棧的雲成本優化解決方案,雲原生的核心特性是面向應用的。那麼如何針對應用進行碳排放測算並給出優化建議呢?下文給出詳細計算方法。

節點利用率與碳排放是相關的

基於工作負載利用率計算功耗

不同CPU型號,不同伺服器在空閒和滿載時的功率均有不同。伺服器廠商通常會定期將伺服器功耗資訊提交至標準效能評估組織(如:https://www.spec.org/),並交由該組織公開資料。伺服器的功耗通常包含最低功耗和最高功耗,最低功耗代表CPU利用率為0%時,該伺服器開機以後維持基本運轉時的功耗;最高功耗代表CPU利用率100%時,也就是CPU滿負荷運轉時的功耗。不同伺服器的功耗差異主要是因為CPU架構、型號和數量不同導致的,下表展示了幾款典型伺服器的功耗資訊。

提供商 伺服器型號 處理器 總核數 平均最低功耗(Watts) 平均最高功耗(Watts)
Inspur Corporation Inspur i24LM6 Intel Xeon Platinum 8368Q 76 348 769
LTechKorea, Inc. LKG-2212-C Intel(R) Xeon(R) Gold 6226R 32 96.6 377
Lenovo Global Technology ThinkSystem SN550 V2 Intel Xeon Platinum 8352M 896 2,115 5,637

既然伺服器功耗與CPU利用率直接相關,那麼針對任何業務,就可以通過如下公式將工作負載的CPU利用率轉換成為功耗:其中引數解釋如下:

  • Max Watts:伺服器利用率為100%時,單個vCPU的功耗。

  • Min Watts:伺服器利用率為0時,單個vCPU的功耗。

  • Avg vCPU Utilization:平均vCPU利用率,如CPU用量為200%代表使用了2個vCPU

因此要衡量一個業務的功耗,我們只需查詢該業務執行的伺服器型號,並根據業務的CPU利用率,便可以將業務的CPU開銷轉換成對應利用率的功耗。

但侷限於現實情況,我們可能無法實時得知具體工作負載所對應的伺服器型號。譬如:雲廠商沒有提供用於查詢伺服器功耗的API介面;工作負載執行在虛擬機器上,而vCPU因雲伺服器的規格而被限制。為了可在無法獲知具體伺服器型號資料時,儘可能地規避資料不精準而帶來的誤差,我們可以基於不同雲廠商公開的所有伺服器型號,每核時的平均功耗。基於平均功耗,即可在不獲取伺服器型號資料的前提下,估算工作負載的功耗,如下表:

雲提供商 Average Min Watts Average Max Watts
AWS 0.74 3.5
GCP 0.71 4.26
Azure 0.78 3.76
均值 0.743 3.84

基於功耗計算碳排放

在有了功耗資訊以後,如何再將功耗轉換為碳排放量?中國生態環境部2022年釋出的《電力行業溫室氣體核算指南修訂版》中明確提出,電網排放因子採用0.5810tCO2/MWh,並且將根據生態環境部發布的最新數值適時更新。區域因子在新版指南中去掉了,因此無論所處地域,未來國內碳排放測算都使用統一排放因子。

工作負載的碳排放最終計算公式為:

用Crane碳排放優化器保護地球

就資料中心的容量而言,IT 裝置的利用率通常十分低。伺服器的利用率只有 5-15%,處理器利用率為 10- 20%,儲存裝置利用率為 20-40%,網路裝置利用率為 60-80%。但即使任何此類裝置空閒,裝置仍然消耗大部分電能。一臺標準伺服器即使是在完全沒有工作的情況下也會消耗 30-40%的最大功率(閒置瓦數:200W+)。

要降低碳排放量的核心方案,除了為資料中心更換清潔能源,另一個便是將單機的資源利用率提高、提高單機能耗比。而Crane碳排放優化器恰恰可以幫您將單機的資源利用率提高、提高單機能耗比。Crane碳排放優化器是Crane能力的另一個維度的展示,將從節點維度入手,專注於能耗、碳排放的展示以及指導使用者如何去做資源優化。

Crane碳排放優化器可基於Crane的能力對擁有碳排放指標的資料中心進行優化,合理提高單機的工作負載佔比,降低整體能耗,從而達到低耗低排低碳的效果;可結合自建IaaS平臺的能力,動態休眠物理伺服器,從而優化物理伺服器的線上數量,降低資料中心的電費開銷、減少碳排放。

Crane碳排放優化器通過Crane的Recommendation能力,對工作負載進行副本數、資源分析,推薦恰當的副本數、資源配置。從而有效地改善資源浪費問題,提供整體能耗比。

通過上述公式以及在叢集中通過Node Exporter採集到的工作負載資料,我們即可構造對應的PromQL (Prometheus Query Language) 語句,在Dashboard上實時顯示叢集中的碳排放量。

上圖可以清晰地看到每個工作負載所產生的碳排放量以及其能耗。若某類工作負載佔比過高,可考慮將其排程到電費單價較低的資料中心。譬如:廣州地域的資料中心執行離線任務的工作負載能耗佔比過高,則可以考慮將離線任務的工作負載遷移至貴州地域的資料中心。即從電費單價較高區域的任務遷移至電費單價較低地域,該理念與“東數西算”的理念不謀而合。

上圖可以見到手工配置與推薦配置存在較大的差異,體現了基於經驗的資源配置不準導致資源⼤量浪費。Crane在內部落地後,在輔助業務優化資源利用率,節能減排效果顯著。某業務部門優化前應用佔用100萬核,平均利用率15%;優化後核數下降到80萬,利用率提升到19%。單單此業務部門每年減少碳排放794噸,Crane為保護地球貢獻了自己的力量。

總結

現有Crane的視角主要是對一個叢集來分析以及觀測。但是對於多叢集、多地域、跨區域仍然比較欠缺,而Crane碳排放優化器可以讓Crane有了一個新的視角來觀測叢集。Crane碳排放優化器可以輔助使用者判斷該工作負載是否值得跨地域部署應用,使得我們計算叢集的使用成本可以進一步地降低。

編者

麟是網路專家,對控制面數據面都非常精通,出於個人興趣,鱗對網路知識做了體系化的梳理和記錄,包括但不限於網路基礎架構、作業系統網路知識、CNI、負載均衡、安全、DNS、Service Mesh。如果你也對網路相關的技術感興趣,不妨掃碼看一下鱗的個人筆記:

參考資料

碳排放計算方法參考: https://www.cloudcarbonfootprint.org/docs/methodology/#energy-estimate-watt-hours