k8s、prometheus、grafana数据采集和展示的链路流程

k8s集群中,容器级别的数据采集是由cAdvisor程序实现

cAdvisor # Container Advisor 容器顾问

cAdvisor程序是kubelet组件的一部分。

每个节点,包括master节点,都有一个kubelet系统服务,

kukelet负责管理pod和容器的生命周期

其cAdvisor程序可以采集cpu内存网络io等数据

cAdvisor采集容器级别的数据

kubelet负责汇总出节点级别的数据

metrics server监控组件定期从kubelet获取这些数据,转换成k8s API可以识别的格式

Prometheus从这个API获取数据,kubectl top命令,和HPA控制器也是从这个API获取数据

Grafana从Prometheus获取数据,进行展示

kubelet是以软件包的形式安装,yum -y install kubelet,以系统服务的形式运行

用systemd管理,配置文件一般在/var/lib/kubelet/目录下

metrics-server是以DaemonSet的形式部署

metrics-server需要签发证书才能采集数据,

签发证书需要先修改kubelet配置文件,添加一行

serverTLSBootstrap: true

重启kubelet服务

]# kubectl certificate approve xxx # 管理控制节点签发证书

]# echo 'serverTLSBootstrap: true' >>/var/lib/kubelet/config.yaml # 计算节点也配置证书

然后在master节点给计算节点签发证书

top命令就可以看到cpu和内存的统计数据了

可以kubelet top pods查看pod级别的数据

也可以kubelet top nodes查看node级别的数据

metrics-server官方资源文件地址:

metrics-server/manifests/base at master · kubernetes-sigs/metrics-server · GitHubScalable and efficient source of container resource metrics for Kubernetes built-in autoscaling pipelines. - metrics-server/manifests/base at master · kubernetes-sigs/metrics-serverhttps://github.com/kubernetes-sigs/metrics-server/tree/master/manifests/base

prometheus官方资源文件地址:

https://github.com/prometheus-operator/kube-prometheushttps://github.com/prometheus-operator/kube-prometheus

相关推荐
Code知行合壹14 小时前
Kubernetes微服务DevOps
微服务·kubernetes·devops
怪我冷i16 小时前
win11使用minikube搭建K8S集群基于podman desktop( Fedora Linux 43)
linux·kubernetes·ai编程·ai写作·podman
victory043117 小时前
K8S 从Harbor当中拉取镜像 连接方法
云原生·容器·kubernetes
陈陈CHENCHEN17 小时前
【Kubernetes】K8s 1.35 配置 Docker 作为容器运行时
docker·kubernetes
勇气要爆发17 小时前
Kubernetes (K8S):云时代的“超级舵手”
云原生·容器·kubernetes
大新新大浩浩17 小时前
ubuntu2204 + k8s 1.32.5 +GPU-Operator 24.9.2搭建GPU-k8s平台
云原生·容器·kubernetes
懒鸟一枚18 小时前
k8s 之minikube安装看k8s
云原生·容器·kubernetes
庸子2 天前
Kubernetes 可观测性实战:解构 Prometheus + Grafana 企业级监控架构
kubernetes·grafana·prometheus
庸子2 天前
告别手动运维:Kustomize 与 ArgoCD 构建的 GitOps 体系
运维·kubernetes·argocd
goodlook01232 天前
监控平台搭建-钉钉消息通知-dingtalk-webhook篇(四)
grafana·prometheus