Kubernetes 資源監(jiān)控工具

2022-05-30 16:32 更新

資源監(jiān)控工具

要擴展應(yīng)用程序并提供可靠的服務(wù),你需要了解應(yīng)用程序在部署時的行為。 你可以通過檢測容器檢查 Kubernetes 集群中的應(yīng)用程序性能, Pods, 服務(wù) 和整個集群的特征。 Kubernetes 在每個級別上提供有關(guān)應(yīng)用程序資源使用情況的詳細信息。 此信息使你可以評估應(yīng)用程序的性能,以及在何處可以消除瓶頸以提高整體性能。

在 Kubernetes 中,應(yīng)用程序監(jiān)控不依賴單個監(jiān)控解決方案。 在新集群上,你可以使用資源度量或 完整度量管道來收集監(jiān)視統(tǒng)計信息。

資源度量管道 

資源指標管道提供了一組與集群組件,例如 Horizontal Pod Autoscaler 控制器以及 ?kubectl top? 實用程序相關(guān)的有限度量。 這些指標是由輕量級的、短期、內(nèi)存存儲的 metrics-server 收集的, 通過 ?metrics.k8s.io? 公開。

度量服務(wù)器發(fā)現(xiàn)集群中的所有節(jié)點,并且查詢每個節(jié)點的 kubelet 以獲取 CPU 和內(nèi)存使用情況。 Kubelet 充當 Kubernetes 主節(jié)點與節(jié)點之間的橋梁,管理機器上運行的 Pod 和容器。 kubelet 將每個 Pod 轉(zhuǎn)換為其組成的容器,并在容器運行時通過容器運行時接口 獲取各個容器使用情況統(tǒng)計信息。 kubelet 從集成的 cAdvisor 獲取此信息,以進行舊式 Docker 集成。 然后,它通過 metrics-server Resource Metrics API 公開聚合的 pod 資源使用情況統(tǒng)計信息。 該 API 在 kubelet 的經(jīng)過身份驗證和只讀的端口上的 ?/metrics/resource/v1beta1? 中提供。

完整度量管道 

一個完整度量管道可以讓你訪問更豐富的度量。 Kubernetes 還可以根據(jù)集群的當前狀態(tài),使用 Pod 水平自動擴縮器等機制, 通過自動調(diào)用擴展或調(diào)整集群來響應(yīng)這些度量。 監(jiān)控管道從 kubelet 獲取度量值,然后通過適配器將它們公開給 Kubernetes, 方法是實現(xiàn) ?custom.metrics.k8s.io? 或 ?external.metrics.k8s.io? API。

Prometheus 是一個 CNCF 項目,可以原生監(jiān)控 Kubernetes、 節(jié)點和 Prometheus 本身。 完整度量管道項目不屬于 CNCF 的一部分,不在 Kubernetes 文檔的范圍之內(nèi)。


以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號