2022年第一季度,在Forrester發布的公共云容器平臺分析師報告中,阿里云容器服務ACK進入領導者象限,ACK的可觀測能力得到了分析師的高度肯定。由此可見,可觀測性已經成為構建用戶IT系統運維體系的重要能力。
2022年8月9日,CSDN云原生系列在線峰會第15期“Prometheus峰會”上,阿里云容器服務團隊可觀測體系負責人馮詩淳分享了阿里云ACK容器服務生產及可觀測體系的建設與實踐。

ACK可觀測性體系
上圖是ACK可觀測體系的全景圖金字塔,從上至下可以分為4層。
Business Monitoring業務監控,包括用戶業務的前端流量、PV、前端性能、JS 響應速度等監控。通過容器服務的 Ingress Dashboard 來監測 Ingress的請求量以及請求的狀態,用戶可以定制業務日志,通過容器服務的日志監控實現業務的自定義監控。
Application Performance Monitoring應用監控,由ARMS APM產品提供用戶Java Profiling和Tracing等能力,也支持OpenTracing和OpenTelemetric協議的多語言監控方案。
Container Monitoring容器監控,包括容器的集群資源、容器Runtime層、容器引擎以及容器集群的穩定性。使用阿里云Prometheus在一張Global View的大盤中展示不同集群層面的資源、應用、水位、云資源等,也包括事件體系和日志體系。
Infrastructure Monitoring基礎資源監控,包括不同的云資源、虛擬化層、操作系統內核層等,容器層和基礎架構層都可以使用基于eBPF的無侵入式架構和K8s監控能力做網絡和調用的Tracing。
可觀測體系的每一層都和可觀測的三大支柱Logging、Tracing、Metrics有著不同程度的映射。
場景一:異常診斷場景的可觀測能力實踐

上圖為用戶的異常診斷案例,線上系統流量由朝九晚五的不同業務發生波谷,造成應用跟隨波峰波谷產生水位波動。以下是業務流量激增引起異常的診斷過程:
收到容器報警后快速反應,對核心業務的Pod進行重啟或擴容,查找問題根因;
通過Ingress Dashboard從入口流量自上而下進行分析,發現對外業務成功率下降并出現4XX返回碼請求;
結合資源以及負載層面,發現是由于朝九晚五的流量導致水位負載,早上9點存在和故障對齊的明顯水位飆升,這是故障所在;
系統第一時間褒獎核心業務Pod定位,結合業務日志進行分析,找到異常日志的輸出;
結合ARMS Java的APM應用監控,定位到緩存Bug是由于上午9點業務流量的飆升導致,造成了頻繁的數據庫讀寫;
通過修復Bug,徹底閉環整個異常。
上述流程是一個典型的貫穿整個ACK可觀測不同能力的異常診斷排查過程,通過它我們可以更好地理解ACK可觀測體系是如何相互工作和相互協調的。
ACK可觀測體系——事件體系
異常診斷發現問題最快、也是經常容易被人忽略的手段是在Logging體系的事件體系。
ACK可觀測體系在社區的事件體系之上進行了增強,做到了事件體系的全覆蓋,包含K8s應用事件、集群Ops事件、集群核心組件事件、K8s Runtime事件、操作系統/內核異常事件、基礎設置平臺事件。

ACK提供了開箱即用的事件中心能力,能夠一鍵開啟事件中心;強大且靈活易用的數據分析能力,為后面基于事件驅動的Ops體系提供了基礎。
ACK K8s集群更多的是對資源的生命周期進行管控,事件中心也提供了以數據為錨點的資源生命周期監管控能力,可以對生命周期中最重要的幾個時間點進行性能的調試優化以及對異常Pod狀態快速反應。
ACK可觀測體系——日志體系

事件體系的父類日志體系Logging在可觀測體系中的主要使用場景有以下幾種:
ACK的日志體系中默認提供了Ingress等重要場景的默認大盤,可以在一鍵接入Ingress大盤后快速查看集群Ingress的流量,包括PV、UV以及應用異常狀態等;
ACK的日志體系提供了審計日志大盤,可以快速分析集群資源的訪問和使用軌跡,針對未授權的訪問可進行預警和報警,為集群提供更安全的環境;
提供云原生無侵入式的日志獲取方式,用戶可以便捷地將日志采集到日志中心,進而享受日志中心多維且強大的分析能力。
ACK可觀測體系——Metric體系

Metric體系是做穩定性保障和性能調優時最常用的體系。水位等指標都可以通過大盤直觀地展示給用戶。
產品側預制了ARMS Prometheus大盤產品,購買ACK K8s集群后可以一鍵開啟Prometheus大盤,它包含了大量業務運維成熟經驗的沉淀。
ACK集群控制面的核心組件API Server、ETCD、CCM等也做了指標加強,ACK Pro群不僅負責托管主核心組件、維護集群的SLA,同時也會將透明指標性能暴露給用戶,讓用戶可以安心使用。
場景二:穩定性保障——ACK助力2022冬奧會圓滿平穩舉行
指標場景是穩定性保障的重要支持能力。ACK為2022年冬奧會服務,助力冬奧圓滿平穩舉行。ACK集群中部署了冬奧的多個核心業務系統,包括冬奧的國際官網、比賽場館、票務系統等,為多個核心系統保駕護航。
核心系統多為Java系微服務架構,實際使用時有近千個Deployment實例。通過引入壓測的方式進行容量評估,同時配合為冬奧定制首屏運維大盤,實時跟進應用狀態,為集群的穩定性提供保障。
場景三:生產級規模集群穩定性保障實踐
用戶的生產系統規模很大,在節點集群規模達到千級別后,用戶在集群上進行密集、大規模的集群資源訪問,極易出現集群穩定性的問題。
比如,用戶在大規模集群中頻繁密集地訪問集群資源,會使APIServer,API Server的Mutating請求量較高,負載過高會導致出現丟棄請求的情況,影響用戶業務的發布或用戶的變更。
再者,密集的集群資源訪問也可能打滿APIServer帶寬,API Server的請求延時,RT會升至高位,一次API的訪問可能需要幾十秒,這會嚴重影響用戶業務,同時,API Server的只讀請求數也會飆升。

診斷路徑主要分為以下三個步驟:
問題快速發現,依據API Server指標水位進行問題定位;
根因快速定位,依據API Server訪問日志定位問題瓶頸應用;
止血/閉環問題,停止/優化應用的List Watch資源行為、性能。
ACK可觀測體系——Prometheus For ACK Pro

阿里云近期推出了Prometheus For ACK Pro,它是Prometheus的升級服務,包含一組符合關聯分析邏輯且可交互的大盤,包括標準輸出日志、集群事件、eBPF無侵入式應用指標、系統指標、網絡指標等數據源。用戶可以通過一張大盤的關聯分析邏輯,從總覽到細節,通過多數據源、多角度的可觀測能力進行不同角度的排查。
ACK可觀測體系——Tracing體系
應用層Trace

在ACK可觀測體系里,Tracing體系提供了定位問題根因的能力。應用層的Tracing提供ARMS APM能力,支持OpenTracing、OpenTelemetry 協議,可以支持多種語言的應用。
針對Java提供無侵入式的APM能力,也支持Profiling以及代碼堆棧級的調用監控能力。不同語言可以匯聚成同一張分布式調用追蹤大圖,自上而下地查看一次分布式調用,從而定位、診斷問題。
集群網絡、調用Trace

阿里云基于eBPF能力的網絡層Tracing具有以下特點:
基于eBPF插樁技術,內核層面、零代碼改動、低性能消耗;
全局拓撲快速定位調用鏈異常,通過網絡拓撲、資源拓撲展示相關資源的關聯;
K8s應用全局拓撲視角,包括service/deployment topology and workload-resource mapping;
統一視圖,集合metrics/traces/events/logs,支持可觀測的各種類型數據。
基于ACK可觀測能力建設Ops體系
基于ACK可觀測能力建設AIOps體系

使用事件驅動的AIOps體系,用戶可以將事件作為統一的驅動數據源進行問題的發現、觸達以及AI智能化運維操作的橋梁。
基于ACK可觀測能力建設ITOps體系

報警中心會為用戶提供統一配置,幫助用戶快速建立異常診斷的規則,構建運維ITOps體系。它可以提供以下功能:
開箱即用報警中心能力;
支持配置靈活規則訂閱關系,快速建立ITOps體系;

異常分類對應常見問題SOP處理流程,縮短故障處理時間。
基于ACK可觀測能力建設FinOps體系
越來越多的用戶在上云階段或上云后治理階段的降本增效問題,主要存在規劃難、計費難、分賬難、優化難、管理難的痛點。

ACK提供了云原生企業IT成本治理的方案,主要具備以下特性:
獨有的云原生容器場景成本分攤與估算模型;
多維度的成本洞察、趨勢預測、根因下鉆;
全場景的成本優化能力、解決方案的覆蓋;
企業云原生IT成本治理的專家服務;
全場景的成本優化能力、解決方案的覆蓋。
客戶案例實踐
中華財險正在歷經IT數字化轉型,通過和阿里云深度合作,在進行企業云原生上云的過程中,完成了大量多租戶SaaS化業務的微服務化和容器化。
客戶痛點
在云原生化的過程中,中華財險需要在千核級別規模的集群中,同時管理運維多個SaaS化的線上業務,具有高度多租戶、對業務穩定性要求高、對業務資源/成本趨勢敏感度高等行業特點。在云原生化過程中也面對了多租戶業務容量規劃難、算清成本難、閑置/浪費資源難發現、資源成本優化與業務穩定性難平衡等挑戰。
解決方案
使用壓測服務PTS壓測實際業務場景,有理有據進行容量預算規劃;
使用費用中心/ACK成本分析清晰進行業務單元的成本拆分與分析,實現云原生環境下業務單元賬算得清;
使用ACK成本分析發現并優化閑置浪費資源,逐步優化調整應用資源分配,持續收斂集群閑置資源;
細粒度容器化部署,根據業務量拆分應用成多個細粒度副本,根據業務實時流量彈性擴容來細粒度分配實際資源,資源成本分配更合理,更少資源浪費;
核心應用保質保量,設置節點親和,預留干擾預算,避免資源爭搶等造成業務影響,保證生產業務質量。
某集群中業務應用成本分布與閑置率
某集群中業務應用的浪費情況發現分析
優化效果
擁有多個千核級別規模的生產集群,資源浪費情況從上云前的30%+閑置率,逐步優化最終達到壓制到平均10%資源閑置率以下,部分穩定業務集群甚至可以做到5%以下資源閑置率。中華財險的上云IT成本治理工作也榮獲信通院2022年度云管和云網優秀案例,為金融保險行業云計算技術的更有效應用,起到了引領和示范作用。
總結
阿里云ACK可觀測體系建設經過多年的技術沉淀積累,已經在生產環境上得到了大量客戶驗證,對于提高服務的可觀察性有著非常寶貴豐富的經驗,客戶通過對它的使用可以顯著提高運維效果,為系統運行更好的保駕護航。
文章內容僅供閱讀,不構成投資建議,請謹慎對待。投資者據此操作,風險自擔。
海報生成中...
海藝AI的模型系統在國際市場上廣受好評,目前站內累計模型數超過80萬個,涵蓋寫實、二次元、插畫、設計、攝影、風格化圖像等多類型應用場景,基本覆蓋所有主流創作風格。
IDC今日發布的《全球智能家居清潔機器人設備市場季度跟蹤報告,2025年第二季度》顯示,上半年全球智能家居清潔機器人市場出貨1,2萬臺,同比增長33%,顯示出品類強勁的市場需求。