華爲云云原生FinOps解決方案,釋放雲原生最大價值

華爲云云原生FinOps通過可視化的成本洞察和成本優化,幫助用戶精細用雲以提升單位成本的資源利用率,實現降本增效目標

企業上雲現狀:上雲趨勢持續加深,但云上開支存在顯著浪費

根據Flexer 2024年最新的一項調查顯示,當前有超過70%的企業重度使用雲服務,而這個數據去年是65%。由此可見,越來越多的企業開始把業務部署在雲上。企業在使用雲廠商提供的雲服務的同時,也在爲雲服務的花費買單。調查顯示,平均大約有30%的雲成本支出被認爲是無效支出。如何節省雲成本支出成爲近幾年上雲企業最關心的Top1問題。

企業雲原生化逐步深入,成本治理依然存在挑戰

雲原生技術當前已經成爲很多企業進行數字化轉型的主流方式。kubernetes提供的資源共享、資源隔離、彈性調度等能力,本身能夠幫助企業提升資源使用率,降低企業IT成本。然而,2021年CNCF《FinOps Kubernetes Report》的調研報告顯示,遷移至Kubernetes平臺後,68%的受訪者表示所在企業計算資源成本有所增加,36%的受訪者表示成本飆升超過20%。其背後的原因值得深思。

雲原生時代成本治理面對的挑戰

雲原生時代成本治理有四個矛盾點:

  1. 業務單元 VS 計費單元:一般雲服務(比如ECS)的計費週期比較長,可能是包月或者包年;而云原生容器的生命週期相對比較短暫,容器的彈性伸縮、故障重啓等動作,都有可能導致資源的閒置率比較高。
  2. 容量規劃 VS 資源供給:容量規劃一般是靜態的,一般是按照預算或者規劃提前準備容器,而資源供給是業務來驅動。業務的高峯流量衝擊,升級擴容等場景,都會對容量規劃造成很大的挑戰。
  3. 統一治理 VS 多雲部署:現在很多企業使用了不止一朵雲,不同的雲廠商的賬單接口和格式都不一樣,不利於企業的多雲統一成本治理。
  4. 成本模型 VS 雲原生架構:雲廠商的成本模型相對比較簡單,一般是按照物理資源來計費,比如ECS服務是以整機的價格來計費。雲原生架構以應用爲中心,資源的申請細化到CPU/內存等粒度。這就導致雲原生場景成本可視化和成本分析比較困難。

總結下來,雲原生成本治理面臨三大挑戰:

成本洞察:雲原生場景如何實現成本可視化,如何快速定位成本問題、識別資源浪費?

成本優化:雲原生成本優化的手段很多,如何採用合適的成本優化手段來實現收益最大化?

成本運營:企業如何構建可持續的成本治理體系與文化?

華爲云云原生FinOps解決方案

FinOps 是一門將財務管理原則與雲工程和運營相結合的學科,它使組織更好地瞭解其雲支出。 它還能夠幫助他們就如何分配和管理雲成本做出明智的決策。 FinOps 的目標不是節省資金,而是通過雲實現最大化的收入或業務價值。 它有助於組織控制雲支出,同時保持支持其業務運營所需的性能、可靠性和安全性級別。

FinOps Foundation 將 FinOps 定義爲三個階段:通知、優化和運營。根據每個團隊或企業完成 FinOps 的進度,公司可能會同時處於多個階段。

通知(成本洞察):通知是 FinOps 框架的第一階段。這一階段旨在爲所有利益相關者提供所需的信息,以便於他們瞭解情況,從而做出有關雲使用的經濟高效的明智決策。

成本優化:成本優化重點是想方設法節約成本。根據當前使用情況,您的組織可以在哪些方面合理調整資源規模,並從折扣中受益?

成本運營:成本運營是 FinOps 框架的最後一個階段。在這一階段,組織會根據業務目標持續評估績效,然後想方設法改進 FinOps 實踐。優化工作到位後,組織可以藉助自動化來實施策略,在不影響性能的情況下不斷調整雲資源來控制成本。

華爲云云原生FinOps解決方案,參照業界FinOps標準與最佳實踐,爲用戶提供雲原生成本多維可視化與多種成本優化治理手段,協助客戶最大化的收入或業務價值。

雲原生FinOps - 成本洞察

華爲云云原生FinOps成本洞察,提供如下關鍵特性:

1、基於標籤的資源成本歸屬

支持ECS、EVS等資源關聯集羣標籤,便於集羣費用匯總計算

2、基於CBC賬單的精準成本計算

基於CBC真實賬單進行成本分攤計算,精準劃分部門成本

3、靈活的成本分攤策略

支持集羣、命名空間、節點池、應用、自定義等多種維度的成本可視化與成本分攤策略。

4、支持長期的成本數據存儲與檢索

最大支持長達2年的成本分析,支持月度,季度,年度報表及導出。

5、工作負載快速感知,輕鬆應對快速彈性場景

針對應用快速彈性場景,支持分鐘級的負載發現與計費能力,讓所有成本無一遺漏。

雲原生成本洞察的實現機制介紹:

1、集羣物理資源成本 VS 集羣邏輯資源成本

集羣的成本可以從兩個角度來計算:

  • 集羣物理資源成本,包括集羣直接或間接關聯的資源成本,比如集羣管理費、ECS成本、EVS成本等。集羣的物理資源成本可以從雲成本賬單中直觀的體現出來。
  • 集羣邏輯資源成本,從kubernetes資源的角度,集羣的成本包括工作負載的成本,再加上集羣閒置資源成本和公共開銷成本。

不難看出,集羣物理資源成本=集羣邏輯資源成本。

2、單位資源(CPU/內存等)成本計算

在集羣的物理資源成本已知的情況下,如何推導出集羣邏輯資源成本(如pod/工作負載),是雲原生FinOps成本洞察的關鍵。這裏核心要解決的問題是單位資源成本計算的問題。我們知道,一般的雲虛擬機是按照整機的價格去售賣的,不會按照單位CPU或內存售賣。但是容器服務的資源佔用是按照單位資源(CPU或內存等)來申請的。所以必須計算出單位資源的成本,才能最終計算出容器服務佔用的成本。

一般雲廠商單位CPU或內存的價格會有一個估算值,我們也可以按照CPU和內存的成本佔比來計算單位資源成本。

3、雲原生資源成本計算

從下圖我們可以看出,一個Pod的資源使用是隨着時間動態波動。有些時刻Pod的資源佔用低於資源申請(Request),有些時刻Pod的資源佔用大於資源申請(Request)。在計算Pod成本時,我們會定時採樣Pod的實際使用值和Request值,並將實際使用值和Request值中的最大值用於Pod的成本計算。這是因爲一旦Request值分配給Pod,那麼這不是資源會被K8S預留,不會被其他Pod搶佔。所有Pod需要爲Request部門的資源買單。同理,如果Pod的實際使用量大於Request,那麼這個Pod也需要爲超出的部分買單。

基於以上原理,我們就可以得出Pod的成本計算:

將命名空間下所有的Pod成本累加,就可以得出命名空間維度的成本:

基於以上計算邏輯,華爲雲CCE雲原生成本治理特性實現了多種維度的集羣成本可視化,比如:

集羣成本可視化

命名空間成本可視化

節點池成本可視化

工作負載成本可視化

4、部門成本分攤與成本分析報表

很多企業會把一個集羣安裝命名空間的粒度分配給不同的部門使用。那麼如何對各個部門的成本進行可視化分析?

從上圖可以看出,部門的成本不僅包括部門歸屬的命名空間的成本,還應該承擔一部分公共成本。這部分功能成本包括系統命名空間成本和空閒資源成本。

華爲雲CCE雲原生成本治理支持基於部門的成本分攤策略配置,如下圖所示:

同時,基於部門的成本分攤策略,華爲雲CCE雲原生成本治理提供了月度/季度/年度報表功能,最大支持2年的報表查詢與導出。

雲原生FinOps - 成本優化

雲原生場景如何提升資源利用率?

據 Gartner 統計,企業CPU平均使用率不足15%,造成資源利用率低的原因有多種,典型場景有:

 資源配置不合理:部分用戶對於自己服務的資源使用情況不瞭解,申請資源時具有盲目性,通常申請過量資源

 業務波峯波谷:微服務具有明顯日級別波峯、波谷特性,用戶爲保證服務的性能和穩定性按照波峯申請資源

 資源碎片化:不同業務部門資源池獨立,無法做到資源共享,容易產生資源碎片。

容器化能一定程度上提升資源利用率,但是存在部分問題單純依賴容器化無法得到有效解決:

 資源過量申請:如果沒有有效的資源推薦和監控機制,普遍實踐還是是超額申請、積沙成塔造成資源浪費。

 資源池統一:K8s原生調度器缺少組、隊列等高階調度能力;大數據業務存算一體難以利用容器彈性優勢。

 應用性能:單純增加部署密度難以保證服務質量。

爲了提升集羣資源利用率,CCE雲原生FinOps解決方案提供了多種優化手段,比如智能應用資源規格推薦、雲原生混部、動態超賣等能力。

5、智能應用資源規格推薦

爲了保障應用性能和可靠性,同時由於缺乏足夠的可視化工具,我們總是傾向爲應用申請過量的資源。爲了解決這一問題,CCE雲原生成本治理提供了智能應用資源規格推薦功能。該功能基於應用的歷史畫像數據,基於機器學習算法,爲應用推薦最佳的申請值。

6、華爲云云原生混部解決方案

華爲雲CCE雲原生混部解決方案基於volcano插件,支持一鍵部署,爲容器業務提供高低優先級混合部署,動態超賣,服務QoS保障等能力。關鍵能力主要包括:

  • 容器業務優先級與資源隔離
  • 融合調度
  1. 應用SLO感知:多類型業務智能混合調度,應用拓撲感知,分時複用,超賣等;
  2. 資源感知調度:提供CPU NUMA拓撲感知、IO感知、網絡感知調度,軟硬協同,提升應用性能;
  3. 集羣資源規劃:提供隊列、公平、優先級、預留、搶佔等豐富策略,統一滿足高優、低優業務;
  • 節點QoS管理:多維度資源隔離、干擾檢查、驅逐機制。

下面重點介紹動態超賣特性:如何將節點閒置資源再利用,提升資源利用率。

動態超賣的核心原理爲:將節點Request和實際使用量的差值部分,作爲可調度資源,供調度器重新分配,僅供低優任務使用。

超賣特性有如下特點:

  • 低於作業優先使用超賣資源
  • 高優作業預選超賣節點時只能使用其非超賣資源
  • 統一調度週期高優作業先於低優作業調度

不管是雲原生混部還是超賣特性,都可以提升資源利用率。那麼如何在提升資源利用率的同時,保障應用性能與服務質量?

華爲HCE 2.0 OS提供的CPU隔離能力,結合CPU快速搶佔、SMT管理控制和離線任務壓制指令的負載均衡能力,保障在線業務資源QoS同時,也能讓被壓制的離線任務指令儘量快速得到響應。

根據實驗室中模擬在線和離線混部場景(CPU利用率70+%)與單獨業務部署在線的場景(CPU利用率30%)進行性能對比,混部場景中在線業務的性能(時延&吞吐)劣化幅度控制在單獨部署在線業務性能的5%之內。基本可以認爲把混部對性能的影響降低到可以忽略不計。

下面我們來看一個客戶案例,該客戶利用華爲云云原生混部解決方案,優化資源配置,最終實現35%的資源利用率提升。

該客戶的主要痛點包括:

  • 應用干擾:大數據與在線語音、推薦等應用爭搶資源,e.g. cpu/memory,網絡;影響高優任務服務質量。
  • 應用資源配置不合理:爲了保證調度成功,request設置很小,不能反饋負載資源需求,引發資源衝突
  • 應用綁核:部分應用綁核,總體資源利用率低

基於客戶痛點,我們爲客戶提供如下解決方案:

  • 客戶將原來節點OS由CentOS切換至華爲雲HCE OS;
  • 將調度器由原來基於默認調度器切換至Volcano調度器;
  • 根據客戶業務屬性,配置調度優先級、隔離等等策略;

通過華爲云云原生混部解決方案,最終爲客戶帶來資源利用率提升35%的收益。

7、CCE Autopilot:按需付費與靈活規格助力客戶節約成本

CCE全新推出的Autopilot集羣,支持按照應用的實際用量按需付費,相對於CCE集羣的優勢是Autopilot集羣將節點的管理運維完全託管起來,這樣您無需提前規劃和購買節點資源,從而實現精細化的成本治理。

這裏我們看兩個客戶場景:

  • 互聯網文娛和社交業務,春節假期期間流量是平時的數倍,專項跟蹤運維保障,提前預留資源,成本巨大。
  • 網約車平臺,業務具有典型的早晚高峯特點,傳統駕駛模式需要客戶手動購買和提前預留資源,資源利用率低。

通過Autopilot可以實現成本精細化治理,最終實現整體成本降低與收益最大化。

點擊關注,第一時間瞭解華爲雲新鮮技術~

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章