全部產品
Search
文件中心

Container Service for Kubernetes:可觀測性體系概述

更新時間:Jun 19, 2024

可觀測性是一種通過分析系統外部輸出結果推斷及衡量系統內部狀態的能力。Kubernetes可觀測性體系包含監控和日誌兩部分,監控可以協助開發人員查看系統的運行狀態,而日誌可以協助問題的排查和診斷。本文介紹阿里雲Container ServiceACK可觀測性生態分層和各層的可觀測能力,以協助您對Container Service可觀測性生態有一個全面的認識。

Container Service可觀測生態概述

從可觀測性的角度,以ACK為基礎的系統架構可以粗略分為4個層次。自下而上分別是:基礎設施層、容器效能層、應用效能層、使用者業務層。

image.png

以下分別是基礎設施層、容器效能層、應用效能層、使用者業務層的可觀測性介紹。

基礎設施層可觀測性

指Container ServiceACK所依賴的底層資源的可觀測情境:定位Pod與節點群組成的資源集區的調用鏈路,可視化拓撲關係,以及基礎設施監控,例如宿主機節點、網路基礎組件的效能監控等。

解決方案

方案介紹

適用情境

參考文檔

架構可視化感知方案

Kubernetes叢集中的業務是運行在節點群組成的資源集區上,使得定位Pod的調用鏈路以及拓撲關係非常複雜。如何以可視化的方式監控Kubernetes中的負載狀態,以及更好地可視化叢集中流量的吞吐是非常重要的問題。

阿里雲Kubernetes監控基於eBPF技術,結合阿里雲Prometheus容器監控,最終整合了指標監控、應用鏈路追蹤、日誌分析和事件監控等多種功能,提供Kubernetes叢集一站式可觀測性產品。使ACK叢集具備網路監控、架構可視化感知等能力。為IT開發和營運人員提供無代碼侵入、整體的可觀測性方案。

適用於全部情境。

  • 支援Kubernetes叢集中Node、Pod之間的網路流量監控。

  • 支援Pod之間4層以上網路流量的監控,以及多協議(如TCP、HTTP)和DNS解析等網路鏈路監控。

更多資訊,請參見叢集拓撲監控

核心層容器監控能力

Container Service for Kubernetes (ACK)提供獨特的作業系統核心層的容器監控可觀測能力SysOM(System Observer Monitoring)。該能力可以協助您更好地進行容器化部署和遷移,同時也可以提供更好的容器監控和可觀測能力。

適用於全部情境。

更多資訊,請參見SysOM核心層容器監控

基礎設施指標監控方案

資源監控是Kubernetes中最常見的底層資源監控方式,通過資源監控可以快速查看負載的CPU、記憶體、網路等指標的使用率。在阿里雲Container Service中,資源監控已經與CloudMonitor互連,建立的叢集預設安裝並整合CloudMonitor(Cloud Monitor)。

適用於全部情境。

更多資訊,請參見相關文檔中的基礎資源監控

容器效能層可觀測性

指基於Container ServiceACK構建系統的容器抽象層的可觀測情境,包括叢集的效能、事件等監控,容器的效能,以及容器組件等監控。

叢集、容器的效能指標監控

解決方案

方案介紹

適用情境

參考文檔

CloudMonitorContainer ServiceACK的監控方案

Container Service for Kubernetes (ACK)建立的叢集預設安裝與整合CloudMonitor(Cloud Monitor),提供叢集、容器的部分效能指標監控,並整合在Container Service控制台中展示。

適用於部分情境。

定製化提供基礎的容器層效能指標和可觀測能力。

更多資訊,請參見基礎資源監控

阿里雲託管版Prometheus的監控方案

Prometheus也是社區官方的容器情境雲原生指標可觀測方案。阿里雲Prometheus監控全面對接開源Prometheus生態,支援類型豐富的組件監控,提供多種開箱即用的預置監控大盤,且提供全面託管的Prometheus服務。藉助阿里雲Prometheus監控,您無需自行搭建Prometheus監控系統,因此無需關心底層資料存放區、資料展示、系統營運等問題。推薦使用阿里雲託管版Prometheus(ARMS Prometheus)雲產品。

適用於所有情境,包括微服務(ServiceMesh)情境、叢集自身組件指標,以及定製監控能力等進階可觀測能力。

更多資訊,請參見阿里雲Prometheus監控

開源Prometheus監控方案

阿里雲Container Service在應用市場中提供了開源Prometheus監控方案的整合。

適用於所有情境,包括微服務(ServiceMesh)情境、叢集自身組件指標以及定製監控能力等進階可觀測能力。

更多資訊,請參見開源Prometheus監控

叢集、容器事件監控

解決方案

方案介紹

適用情境

參考文檔

事件的監控方案

事件監控是Kubernetes站在事件角度的另一種監控方式,可以彌補資源監控在即時性、準確性和情境上的缺陷。開發人員可以通過擷取事件,即時診斷叢集的異常與問題。推薦使用阿里雲Log Service SLS(Log Service)產品提供的事件中心監控能力。

適用於全部情境。

更多資訊,請參見事件監控

應用效能層可觀測性

指基於Container ServiceACK構建系統的具體應用情境,包括應用指標效能(Metric)、系統調用鏈(Tracing)、日誌監控(Logging)等,例如基於Container Service構建一個Java應用,Java應用的線程數指標等。

解決方案

方案介紹

適用情境

參考文檔

無侵入Java應用監控APM監控方案

推薦使用阿里雲應用效能監控ARMS(Application Realtime Monitor Service)作為應用效能層監控方案,ARMS是一款阿里雲應用效能管理(APM)類監控產品。只要為部署在Container ServiceKubernetes版中的Java應用安裝ARMS應用監控組件,您無需修改任何代碼,就能藉助ARMS對Java應用進行全方位監控,以便您更快速地定位出錯介面和慢介面、重新調用參數、檢測記憶體流失、發現系統瓶頸,從而大幅提升線上問題診斷的效率。

適用於部分情境,包括Java應用的應用監控,方案接入支援無侵入方式,無需進行代碼改造。

更多資訊,請參見應用監控

侵入式應用監控APM監控方案

鏈路追蹤Tracing Analysis為分布式應用的開發人員提供了完整的調用鏈路還原、調用請求量統計、鏈路拓撲、應用依賴分析等工具,可以協助開發人員快速分析和診斷分布式應用架構下的效能瓶頸,提高微服務時代下的開發診斷效率。鏈路追蹤支援多種開源社區的SDK,且支援OpenTracing、OpenTelemetry生態標準。

適用於所有情境,包括微服務(ServiceMesh)以及多種開發語言的應用。支援OpenTelemetry生態標準。方案接入需要侵入式代碼引入改造。

更多資訊,請參見在ASM中實現分布式跟蹤

Managed Service for OpenTelemetry為分布式應用的開發人員提供了完整的調用鏈路還原、調用請求量統計、鏈路拓撲、應用依賴分析等工具,可以協助開發人員快速分析和診斷分布式應用架構下的效能瓶頸,提高微服務時代下的開發診斷效率。

基於OpenTracing標準,相容開源社區,例如Jaeger、Zipkin。支援多語言開發程式接入,包括Java、PHP、Go、Python、Node.js、.NET、C++、Ruby、Swift等。

更多資訊,請參見什麼是可觀測鏈路 OpenTelemetry 版接入指南

使用者業務層可觀測性

基於Container ServiceACK構建的業務系統的具體業務情境,例如基於Container Service構建一套高可用可擴充的網站,網站的業務營運資料PV、UV等,例如應用的成本審計情境等。

解決方案

方案介紹

適用情境

參考文檔

自訂日誌監控方案

推薦使用阿里雲Log ServiceSLS(Log Service)作為自訂指標的觀測方案。您可以通過自訂應用系統的內容、格式,並通過Log Service收集,並在Log Service中配置業務大盤,觀測自己的業務情況,或做系統審計。

適用於全部情境,如流量監控、成本審計統計、業務訂單走勢統計等。

更多資訊,請參見通過Log Service採集Kubernetes容器日誌

通過可觀測可視化Grafana版自訂業務大盤

阿里雲可觀測可視化Grafana版是雲原生的營運資料視覺效果平台,面向使用者提供免營運和快速啟動Grafana運行環境的能力,預設整合如資料庫、訊息佇列、Prometheus監控、Log Service等各類阿里雲服務資料來源,並提供豐富的資料看板,讓營運監控更加精細。

可觀測可視化 Grafana 版可以協助您在高效分析與查看指標、日誌和跟蹤的同時,無需關注伺服器配置、軟體更新等繁雜工作,有效降低營運複雜性與工作量,並藉助阿里雲強大的雲原生能力,全面提升Grafana的安全性與可用性。

適用於全部情境。

使用者可根據自身業務情境,直接使用Grafana配置業務大盤,如PV、UV等即時業務監控大盤。

更多資訊,請參見什麼是可觀測可視化 Grafana 版

通過ARMS前端監控從網頁前端感知業務流量、商務服務的健康情況。

ARMS前端監控專註於對Web情境、Weex情境和小程式情境的監控,從頁面開啟速度(測速)、頁面穩定性(JS診斷錯誤)和外部服務調用成功率(API)這三個方面監測Web和小程式頁面的健康情況。

適用JavaScript的前端應用情境。

更多資訊,請參見

什麼是ARMS前端監控?

相關文檔