首页 > 解决方案 > 测量 Kubernetes 集群中每个容器的资源利用率

问题描述

我计划启动一个 Kubernetes 集群,其中包含多种类型的图像,就计算/内存的密集程度而言。此外,同一图像在作为容器运行时可能会使用不同级别的 cpu/内存,具体取决于输入参数。这些容器在有多个用户的多租户环境中运行,运行具有不同输入的多个容器。有没有办法测量每个容器在运行期间使用了多少资源,以便每个用户都可以为其容器使用的基础设施资源总量付费?

标签: kubernetes

解决方案


要分析运行容器的资源使用和性能特征,您可以使用cAdvisor。Is 内置在 kubelet 中,并且已经在运行您的所有 k8s 节点,因此您无需安装它。

它的指标使用 prometheus 格式公开,因此它们可以被 prometheus 抓取。

您还可以查看可以为您部署整个堆栈的prometheus helm 图表。

此外,您可能想学习 promethus 查询语言或搜索已经制作的 grafana 仪表板,这些仪表板会向您显示此指标并查看它们是如何查询的。

另请查看此博客文章:management-your-costs-on-kubernetes

如果您对付费解决方案感兴趣,请查看 kubecost(我不隶属于,只是发现它并认为您可能会发现它有用)。


推荐阅读