自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Kubernetes集群中要監(jiān)控哪些組件?采集哪些指標(biāo)?

安全 應(yīng)用安全
Kubernetes集群由控制平面和工作節(jié)點(diǎn)兩類組件組成。控制平面包括API Server、etcd、Scheduler以及Controller Manager。

[[440388]]

本文轉(zhuǎn)載自微信公眾號(hào)「大數(shù)據(jù)DT」,作者Brendan Burns。轉(zhuǎn)載本文請(qǐng)聯(lián)系大數(shù)據(jù)DT公眾號(hào)。

Kubernetes集群由控制平面和工作節(jié)點(diǎn)兩類組件組成??刂破矫姘ˋPI Server、etcd、Scheduler以及Controller Manager。工作節(jié)點(diǎn)則包括kubelet、Container Runtime、kube-proxy、kube-dns以及Pod。你需要監(jiān)控所有這些組件以確保集群和應(yīng)用程序的正常運(yùn)行。

Kubernetes通過(guò)多種方式暴露這些組件的指標(biāo),讓我們看看可以使用哪些不同的組件來(lái)采集集群的指標(biāo)。

1. cAdvisor

Container Advisor(或者稱為cAdvisor)是一個(gè)開(kāi)源項(xiàng)目,用來(lái)采集節(jié)點(diǎn)上容器的資源使用情況和指標(biāo)。cAdvisor內(nèi)置在kubelet中,kubelet運(yùn)行在集群中的每個(gè)節(jié)點(diǎn)上。它通過(guò)Linux cgroups(Control Group,控制組)來(lái)收集內(nèi)存和CPU指標(biāo)。

cgroups是Linux內(nèi)核的一個(gè)功能,用來(lái)隔離諸如CPU、磁盤(pán)I/O或者網(wǎng)絡(luò)I/O等資源。cAdvisor也會(huì)通過(guò)Linux內(nèi)核內(nèi)置的statfs來(lái)收集磁盤(pán)指標(biāo)。你不需要關(guān)心這些技術(shù)的實(shí)現(xiàn)細(xì)節(jié),但是應(yīng)該理解這些指標(biāo)是如何暴露的,以及你需要采集什么類型的信息。最后,你應(yīng)該將cAdvisor視為所有容器指標(biāo)的可信來(lái)源。

2. Metrics Server

Kubernetes Metrics Server和Metrics Server API替代了棄用的Heapster。Heapster在數(shù)據(jù)接收器的架構(gòu)上存在一些缺陷,導(dǎo)致在Heapster的核心代碼中引入了大量的供應(yīng)商解決方案。

這個(gè)問(wèn)題最終通過(guò)在Kubernetes中將Resource Metrics API(資源指標(biāo)API)和Custom Metrics API(自定義指標(biāo)API)實(shí)現(xiàn)成一個(gè)聚合API而得到解決。這樣就可以在不改變API的情況下切換不同的實(shí)現(xiàn)。

Metrics Server API和Metrics Server有兩個(gè)方面需要理解。

首先,Metrics Server是 Resource Metrics API的典型實(shí)現(xiàn),它通過(guò)kubelet的API采集諸如CPU和內(nèi)存這類資源的指標(biāo),并將其存儲(chǔ)在內(nèi)存中以供Kubernetes Scheduler、HPA(Horizontal Pod Autoscaler)以及VPA(Vertical Pod Autoscaler)使用。

其次,Custom Metrics API 允許監(jiān)控系統(tǒng)收集任意指標(biāo),這將允許在監(jiān)控方案中構(gòu)建自定義的適配器,將監(jiān)控范圍擴(kuò)展到核心資源指標(biāo)之外。

例如,Prometheus構(gòu)建了最早的自定義指標(biāo)適配器之一,它可以讓你基于自定義的指標(biāo)來(lái)使用HPA。這樣就可以根據(jù)場(chǎng)景提供更好的伸縮性,因?yàn)槟憧梢砸胫T如隊(duì)列大小這樣的指標(biāo), 并且基于這類外部指標(biāo)進(jìn)行縮放。

Metrics API的標(biāo)準(zhǔn)化為擴(kuò)展傳統(tǒng)的CPU和內(nèi)存指標(biāo)提供了更多的可能。

3. kube-state-metrics

kube-state-metrics是Kubernetes的一個(gè)附加組件,用來(lái)監(jiān)控存儲(chǔ)在Kubernetes中的對(duì)象。cAdvisor和Metrics Server 用于提供資源使用的詳細(xì)指標(biāo),而kube-state-metrics則關(guān)注識(shí)別集群中對(duì)象的狀態(tài)。

以下是一些kube-state-metrics可以回答的問(wèn)題:

  • Pod
    • 有多少Pod部署在集群中?
    • 有多少Pod處于掛起狀態(tài)?
    • 是否有足夠的資源來(lái)滿足Pod的請(qǐng)求?
  • Deployment
    • 有多少Pod處于運(yùn)行狀態(tài)或者預(yù)期的狀態(tài)?
    • 有多少副本可用?
    • 哪些Deployment已更新過(guò)?
  • Node
    • 工作節(jié)點(diǎn)處于什么狀態(tài)?
    • 集群中分配了多少CPU?
    • 是否存在不可調(diào)度的節(jié)點(diǎn)?
  • Job
    • Job是何時(shí)啟動(dòng)的?
    • Job是何時(shí)結(jié)束的?
    • 多少Job失敗了?

在撰寫(xiě)本文時(shí),kube-state-metrics可以追蹤22種Kubernetes對(duì)象類型,這個(gè)范圍還在擴(kuò)大,你可以從官方Github倉(cāng)庫(kù)中找到相關(guān)文檔。

關(guān)于作者:Brendan Burns,微軟Azure的杰出工程師,也是Kubernetes開(kāi)源項(xiàng)目的聯(lián)合創(chuàng)始人,現(xiàn)為微軟副總裁,從事云應(yīng)用的開(kāi)發(fā)工作已有十多年。

Eddie Villalba,微軟商業(yè)軟件工程部門(mén)的軟件工程師,專注于開(kāi)源云和Kubernetes。他幫助過(guò)許多用戶將Kubernetes 用于應(yīng)用程序。

Dave Strebel,微軟Azure的全球云原生架構(gòu)師,專注于開(kāi)源云和Kubernetes。他深度參與了Kubernetes開(kāi)源項(xiàng)目,為Kubernetes發(fā)布團(tuán)隊(duì)提供幫助并領(lǐng)導(dǎo)SIG-Azure工作組。

Lachlan Evenson,微軟Azure的容器計(jì)算團(tuán)隊(duì)的首席開(kāi)發(fā)經(jīng)理,他通過(guò)動(dòng)手實(shí)操教學(xué)和會(huì)議演講幫助許多人去了解Kubernetes。

 

本文摘編自《Kubernetes實(shí)戰(zhàn)》,經(jīng)出版方授權(quán)發(fā)布。(ISBN:9787111672128)

 

責(zé)任編輯:武曉燕 來(lái)源: 大數(shù)據(jù)DT
相關(guān)推薦

2023-05-11 07:08:07

Kubernetes監(jiān)控

2025-04-01 00:54:00

2023-08-30 07:20:58

2022-05-12 08:01:26

vmagentprometheus

2021-09-07 09:30:44

緩存指標(biāo)系統(tǒng)

2022-08-16 09:54:48

telegrafexporter監(jiān)控

2020-12-02 10:13:32

Kubernetes容器開(kāi)發(fā)

2024-11-05 16:45:02

2019-10-23 09:20:11

Redis集群主從復(fù)制

2021-07-21 08:00:00

Kubernetes分布式存儲(chǔ)集群

2022-09-30 10:44:47

Netty組件數(shù)據(jù)

2019-09-17 10:51:12

架構(gòu)K8節(jié)點(diǎn)

2021-07-01 11:29:45

KubernetesGrafana監(jiān)控

2022-02-09 15:36:49

Redis主從模式哨兵模式

2020-09-16 15:24:33

監(jiān)控安裝

2023-06-29 07:43:20

監(jiān)控數(shù)據(jù)Java

2019-07-24 09:21:06

大數(shù)據(jù)采集采集系統(tǒng)大數(shù)據(jù)

2023-04-14 16:12:24

LinuxJava應(yīng)用程序命令

2022-05-26 15:32:40

數(shù)據(jù)庫(kù)數(shù)據(jù)庫(kù)系統(tǒng)

2022-10-17 15:25:27

云計(jì)算監(jiān)控公有云
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)