如何查看 kubelet 中包含的 cadvisor?

How can I check cadvisor which is included in kubelet?

我有多个kubernetes集群,版本分别是1.13、1.16、1.19。

我正在尝试监控线程总数,因此我需要指标“container_threads”。

但是对于等于或低于 1.16 的集群版本,container_threads 指标看起来有些错误。

对于 1.16,指标值始终为 0,对于 1.13,不存在 container_threads 个指标。

我知道这个指标来自于 kubelet 中包含的 cadvisor。

我想确定从哪个版本开始,cadvisor没有container_threads。

我知道如何检查 kubelet 版本“kubelet --version”。

但是我不知道怎么找到cadvisor的版本

有人知道吗?

谢谢!

没有找到cAdvisor版本的具体命令。但是,可以使用 $ kubectl top

等命令访问指标

对于最新版本的 Cadvisor,我们将使用来自 google 的官方 cAdvisor docker 图像托管在 Docker Hub.

有关 cAdvisor UI 概述和流程的更多信息,请转到 cAdvisor 部分。此外,从 Kubernetes 1.10 版开始,cAdvisor 的 UI 已被标记为弃用,并且计划在 1.12 版中完全删除该接口。

如果你 运行 Kubernetes 1.12 或更高版本,UI 已被删除。但是,指标仍然存在,因为 cAdvisor 是 kubelet 二进制文件的一部分。

kubelet 二进制文件公开其所有 运行 时间指标和所有 cAdvisor metrics at the /metrics endpoint 使用 Prometheus 说明格式。

注意:cAdvisor 不会存储长期使用的指标,因此如果您需要该功能,则需要寻找专用的监控工具。

可以通过 cadvisor_version_info 指标找到 cAdvisor 版本,该指标显示在您的 cAdvisor 服务的 /metrics 端点中。

我相信指标是在 cAdvisor v.0.18.0

中添加的