kubernetes - 测量 Kubernetes 集群中每个容器的资源利用率
问题描述
我计划启动一个 Kubernetes 集群,其中包含多种类型的图像,就计算/内存的密集程度而言。此外,同一图像在作为容器运行时可能会使用不同级别的 cpu/内存,具体取决于输入参数。这些容器在有多个用户的多租户环境中运行,运行具有不同输入的多个容器。有没有办法测量每个容器在运行期间使用了多少资源,以便每个用户都可以为其容器使用的基础设施资源总量付费?
解决方案
要分析运行容器的资源使用和性能特征,您可以使用cAdvisor。Is 内置在 kubelet 中,并且已经在运行您的所有 k8s 节点,因此您无需安装它。
它的指标使用 prometheus 格式公开,因此它们可以被 prometheus 抓取。
您还可以查看可以为您部署整个堆栈的prometheus helm 图表。
此外,您可能想学习 promethus 查询语言或搜索已经制作的 grafana 仪表板,这些仪表板会向您显示此指标并查看它们是如何查询的。
另请查看此博客文章:management-your-costs-on-kubernetes
如果您对付费解决方案感兴趣,请查看 kubecost(我不隶属于,只是发现它并认为您可能会发现它有用)。
推荐阅读
- amazon-web-services - Error using presigned URL for uploading data from Blazor WASM app to AWS S3 bucket
- database - 在数据库工作流程中查找产品的图像重复项
- python - python中Igraph图的边缘着色
- reactjs - Next.js 如何访问上传到公用文件夹的文件?
- python - 如何检查字符串中的下一项是否是前一项的字母后继?+ 逆
- python - 有没有办法改变 Python 中的 Windows 比例因子
- embedded - GPIOB 上的 EXTI 不起作用,但 GPIOA 上一切正常
- python - 最大年龄的出生日期的正则表达式
- javascript - 验证提交按钮取决于上传文件输入字段
- java - 获取特定字符串之后的所有不同单词