ACK提供成本套件功能,使用基於FinOps理念的雲成本治理解決方案協助企業IT成本管理員實現容器叢集的資源分賬、提效降本等業務情境訴求。本文介紹了成本治理FinOps解決方案和成本治理流程,快速建立雲原生下IT成本治理體系。
背景資訊
雲原生技術提供了共用、隔離、彈性等能力,能夠簡單地降低企業IT成本,因此它已逐漸成為許多企業進行IT資訊化轉型的最佳方式。然而,2021年CNCF《FinOps Kubernetes Report》的調研報告顯示,在遷移至Kubernetes平台後,有68%的受訪者表示所在企業計算資源成本增加,36%的受訪者表示成本飆升超過20%。造成這一現象的原因是雲原生技術的不當使用和缺乏有效成本控制手段。
為解決這些問題,ACK提供了成本套件功能,該功能是基於FinOps理念的雲成本治理解決方案。該方案提供了資源浪費檢查、資源費用預測等功能,通過賬單分析、用量統計與即時詢價相結合的方式實現對Pod維度準確估算,旨在協助企業IT成本管理員實現容器叢集的資源分賬、提效降本等業務情境訴求。
如需瞭解什麼是FinOps理念,請參見FinOps官方文檔。
基於FinOps理念的雲成本治理解決方案介紹
雲成本治理解決方案從物理和邏輯兩個維度進行彙總分析,物理維度包括叢集的Node、節點池和資源群組,邏輯維度包括Pod、應用負載和命名空間,並將物理維度費用和邏輯維度費用進行打通,建立完整的資源成本畫像,能夠更準確合理地進行IT成本治理。FinOps通過構建企業IT成本可視化系統,協同業務、營運、財務進行戰略協同,實現IT成本的數字化、可視化,通過問責不追責的方式,連續迭代最佳化企業IT成本。
ACK以FinOps的方式實現了成本治理功能,通過成本洞察、成本最佳化和成本控制三個方面來進行IT成本治理。
成本洞察
成本洞察通過計量和計費相結合的成本分攤模型和智能資源成本畫像,實現多維度容器成本分賬與洞察。具備叢集維度、命名空間維度、節點池維度和應用維度成本洞察。
叢集維度提供整體資源和成本的洞察,協助識別費用趨勢和異常。對於一個叢集,首先需要關注的就是整個叢集的費用趨勢變化,以判斷成本是否符合預期。當叢集成本變化呈現非正常趨勢時,進行問題下鑽,排查成本異常的根因。
命名空間能夠通過命名空間篩選、展示各命名空間的資源和成本資訊。使用命名空間大盤分析成本的前提是公司以命名空間維度劃分部門或業務。在此基礎上,本方案實現了部門或業務層級的成本分攤。
節點池提供了叢集資源維度成本洞察。ECS雲資源往往是叢集產生費用的主要組成部分,也是IT營運人員最直接管理的資源。節點池成本洞察能夠為您提供節點池資源流量分析和付費策略的選擇。
應用成本洞察以Label萬用字元匹配的方式,篩選出您關心的應用進行成本和資源的統計,側重於情境化的成本最佳化。通過Label萬用字元匹配的方式,您不僅可以監控單應用的成本和資源用量,還可以監控多個相關的應用。例如巨量資料工作流程的情境,您可以為流程中的所有應用加一致性的Label,從而對整個工作流程業務進行成本分析。
成本最佳化
成本最佳化功能提供多種策略,協助識別和減少資源浪費。當使用成本洞察功能觀察和發現成本和資源浪費的趨勢後,可以使用成本最佳化功能制定最佳化策略,執行最佳化措施,達到治理IT成本浪費的效果。
常見的最佳化策略包括:
雲資源付費方式(節省計劃等)。
多種應用彈性策略(節點自動調整、Serverless彈性、ECS或ECI混合彈性、容器水平伸縮等)。
成本最佳化的應用調度或重調度策略。
分時或搶佔混部。
效能調優(NUMA、綁核等)。
成本最佳化功能為K8s原生的工作負載提供了資源畫像的能力。通過對資源使用量歷史資料的分析,實現了容器粒度的資源規格推薦,可以有效簡化為容器配置Request和Limit的複雜度。詳細介紹,請參見資源畫像。
成本控制
成本控制提供預算管理、配額管理、成本預測、成本警示等能力,並且支援多雲及混合雲等情境。
本方案中,成本洞察和成本控制是成本治理過程中最直接、有效手段。在企業成本治理的過程中,一般推動成本治理的角色是IT主管和基礎設施管理團隊,他們可以通過成本洞察發現雲資源使用上的浪費,再通過成本控制解決浪費問題。而成本最佳化是業務團隊的職責,需要通過他們對業務層面上的認識來進行最佳化策略的選擇,而非IT主管直接推動。同時在成本最佳化策略的選擇中,容易因策略使用不當而產生技術債務,影響成本治理效果。因此,相比於成本最佳化,成本洞察和成本控制能更直接有效地實現成本治理的效果。
成本治理流程
在企業的IT成本治理過程中,有三種角色:IT主管或財務、IT營運人員、業務研發人員。
IT主管或財務:確認IT成本在預算內,成本異常時聯絡IT營運。
IT營運人員:分析預算異常原因,設計最佳化策略,驅動業務團隊最佳化。
業務研發人員:實施最佳化策略,反饋治理效果。
因此,成本治理的一般流程為:
查看叢集成本大盤判斷整個叢集是否存在資源或成本浪費。
如果叢集大盤顯示費用異常,根據資訊確定造成浪費的主要部門或主要業務,選擇對應的維度進行問題下鑽。問題下鑽包括三個維度:命名空間維度、節點池維度和應用維度,一般情況下,分別對應於公司的部門、資源和業務,您可以根據需要選擇並進行深入分析。
問題原因確定後,由相關業務人員進行成本最佳化。
通過叢集大盤或對應維度大盤查看成本治理效果。