德國鐵路集團(Deutsche Bahn)是歐洲最大、全球第二大鐵路運輸集團,也是高度雲端化企業。德鐵從2020年展開數位轉型計畫,不只推動鐵路基礎設施現代化、數位化,也大量運用各種數位手段和IT,建立永續行動力(Sustainable Mobility),來實現綠色數位轉型,達成2045年氣候中和目標。
在集團CEO及旗下子公司16位CIO的支持下,德鐵2021~2022年這項綠色數位轉型計畫,以「綠色IT」作為最終目標。不只是由上而下的轉型計畫,德鐵更掀起了一場由開發同仁和各部門員工共同參與的強烈草根運動,催生了許多底層綠色倡議行動。開發人員利用工作之餘發起許多小型專案,例如測量網站的碳排放量,或撰寫降低在家辦公對環境影響的指導手冊。
德國鐵路集團由旗下資訊公司DB Systel,負責全集團數位轉型和IT戰略。今年3月KubeCon歐洲場研討會中,DB Systel平臺策略和賦能首席技術顧問Gualter Barbas Baptista,首度公開了德鐵綠色IT轉型旅程的經驗。
雲端廠商工具存有諸多限制,不利碳排資訊獲取
為了順利展開綠色數位轉型,德鐵集團IT部門的第一步,要找方法來量測出工作負載的碳排放影響。「沒有好的數據提供資訊,就沒辦法思考替代方案,」Gualter Barbas Baptista也以火車延誤來比喻,乘客若沒有及時獲得通知,就無法知道該如何應對和選擇替代方案,「這正是為何必須建立資訊能見度。」
他們一開始希望借助雲端供應商的工具,來獲取這些數據,不過,這些工具有諸多限制,無法取得德鐵想要的資料。Gualter Barbas Baptista舉例,公雲碳排偵測工具無法分辨單一應用程式的碳排放,因為缺乏標籤(Tag)機制,若雲端帳戶中有多個應用程式,沒有Tag功能便無法區分哪一支AP產生多少碳排。
限制不只如此,可取得的資料顆粒度過粗,碳排儀表板的分析只能呈現大致比例,如50%來自EC2,20%來自其他資源,無法提供更細節資訊,且更新也不夠即時,有時,產生數據後3個月才能查看。
更重要的是,他強調,公雲業者的數據缺少了能源使用資訊,因為碳排放量是根據碳補償公式來估算,沒有實際的能源用量,也就無法找出日常活動和排放影響之間的因果關係,更難判斷哪一個行為造成碳排放的增加。
建立開發者綠色IT儀表板
德鐵在其雲端架構中導入雲原生永續監控工具Kepler,用來蒐集雲端IT系統能源使用指標,將其轉換為KW功耗,以提供相關IT能源消耗和CO2排放資訊。他指出,Kepler的優點是,可以取得從高層次,到容器層次的資訊,以接近即時的資訊,了解單一元件中能源使用狀況。此外,還可以在Grafana儀表板中註明,將開發流程的程式碼變更,串聯到與這次更改對相關能耗的影響。
德鐵IT團隊建立了綠色IT儀表板,將使用Kepler蒐集到的K8s叢集的功耗資訊,透過Grafana儀表板進行呈現,可提供每支容器化應用程式即時的能耗數據。這是德鐵交給內部開發人員的第一個工具,協助集團達成綠色IT的目標。
德鐵IT團隊建立了綠色IT儀表板,將使用Kepler蒐集到的K8s叢集的功耗資訊,透過Grafana儀表板進行呈現,可提供每支容器化應用程式即時的能耗數據,並用於碳排計算。德鐵還透過資料湖打造了一個中間層,用來儲存整個雲端碳足跡數據,也方便進行資料治理和資料集整合。圖片來源/德國鐵路
隨著越來越多部門的參與,德鐵IT部門透過資料湖打造了一個中間層,用來儲存整個雲端碳足跡數據,也方便進行資料治理和資料集整合,他表示,透過這個中間層,也可以提供其他系統使用,進而整合更多的資訊,例如,企業架構管理系統上加入綠色IT的儀表板,就能提供給架構管理人員參考。
在綠色IT的實踐上,德鐵開始思考哪些工具和方法能夠賦能開發者,尤其,開發者是每天決定軟體功能的人,Gualter Barbas Baptista認為,不應僅僅依賴管理文件來告訴開發者該如何操作以及達成哪些目標。如果沒有讓開發者真正參與其中,並且提供合適的工具和資源,無論是在程式碼的撰寫方式或是基礎設施管理方面,都無法真正實現改變,達到更綠色IT的目標。
導入Kepler工具並非易事。他提到,儘管Kepler是開源且非常好用,但企業使用時仍需特別留意。首先在安全方面,為了應對資安挑戰,德鐵移除了177個非必要的相依性元件,並將這些問題回饋至Kepler專案。其次,監控系統蒐集的指標太多,可能產生過於頻繁的通知和告警,反而造成干擾。所以,他們將預設3秒的資料蒐集間隔延長至10秒,甚至是20秒一次,以減少不必要的干擾,也大幅減少了需要蒐集的資料量。
德鐵綠色IT發展有三大策略考量
德鐵在綠色IT發展上採用不同策略,來滿足夠用、效率和一致性的需求。 Gualter Barbas Baptista解釋,所謂的「夠用」指的是必須考慮到真正的需要及背後的原因;而「效率」則是指生產和利用過程中,盡可能減少資源的消耗,最後,「一致性」則是設計一個符合自身需求的永續性方案。
過去,德鐵集團有一套平臺化的戰略,去年整合所有子公司全面執行同一套標準化的技術平臺。他指出,平臺化的重要性,在於可以利用平臺,來建立高水準的標準化,通過持續改進,提供安全設計,讓每一個人不用想,也能實現預設IT綠化(Green by default)。
德鐵採用K8s建構雲原生技術平臺架構,涵蓋企業整合平臺、AI平臺、資料管理平臺、物聯網平臺、開發者體驗平臺以及No-Code和Low-Code平臺等。他認為,K8s不只是一個高效的雲端維運工具,也是一個減少碳足跡的工具,甚至不僅僅是一個容器調度工具,更是一個平臺構建工具,也是綠色IT工具。
舉例來說,德鐵IT團隊有一套共享K8s叢集,容器密度非常高,也設置了節點自動擴充,實現了平均約70%的CPU利用率。這是相當高的CPU利用率,可是,後來發現,實際上只有15%的CPU利用率被應用程式真正使用。
進一步分析後發現,這些應用程式一旦開始執行,通常就不再關注其資源使用情況,這是因為開發者為了應對可能出現的高流量,往往會在API請求配置上額外設定高一點,避免塞爆,例如API請求限制設定在512 MB,但這會讓應用程式長時間占用了CPU和節點資源,造成資源浪費。
K8s專案不只提供了垂直Pod自動擴充機制,也有水平自動調整器,這讓開發人員不再需要思考要用多少資源,甚至可以根據建議自動調整容器工作負載來優化,以滿足其需求。因此,德鐵後來改用垂直Pod自動擴充機制,確保應用程式資源最佳配置,來擺脫昂貴的猜猜看的做法。
德鐵貫徹綠色IT思維的做法,也體現在其排程(scheduling)策略上。例如,傳統上,勞工法規要求一天8小時工作,意謂有三分之二的時間,辦公室沒有人,可是工作負載仍在執行,例如在開發或測試環境中的測試或午夜測試,透過Kube downscaler工具在部署中註明,就會在開發者下班關掉不必要的資源,等到回來上班時再打開。這樣每天自動 執行,就能節省大量能源,且不需額外成本。
熱門新聞
2024-12-08
2024-12-10
2024-12-10
2024-12-10
2024-11-29
2024-12-08