-
kubelet进程内置了 cadvisor的代码
-
底层采集来自cadvisor
底层采集来自 cadvisor
cadvisor介绍
-
CAdvisor是Google开源的一款用于展示和分析容器运行状态的可视化工具
-
cAdvisor可以对节点机器上的资源及容器进行实时监控和性能数据采集
-
包括CPU使用情况、内存使用情况、网络吞吐量及文件系统使用情况,效果图如下
cadvisor架构图
-
我们知道
node_exporter
是通过查看/proc/stat
等一些列伪文件系统计算相关指标来完成单机级别的采集的。 -
那么如何采集单个pod占用的cpu、内存等数据呢?想必你也能够想到了
-
一个pod对应多个容器运行在宿主机上,其实对应就是一个个单独的进程
-
那么采集到每个进程的cpu内存等信息就是对应容器的指标。
-
具体就是拿到进程的pid,通过查看pid下面的伪文件系统
/proc/<pid>/stat
完成采集。