kubernetes - 如何使用 promethus 获取 pod 的 CPU 和内存使用百分比
问题描述
我想使用 promql/Prometheus 以以下格式显示 pod 详细信息。
此外,我想使用 promql 以以下格式显示应用程序/组件的 CPU 和内存利用率
promql 查询:sum(container_memory_working_set_bytes) by (pod)
我可以使用上面的查询通过 pod 获取消耗的内存。
如何计算使用的内存百分比?我无法使用 promql 获取有状态 Pod 的内存限制您能否建议任何查询/API 详细信息?
解决方案
我用它来记忆:
round(max by (pod)(max_over_time(container_memory_usage_bytes{namespace="$namespace",pod=~".*" }[5m]))/ on (pod) (max by (pod) (kube_pod_container_resource_limits)) * 100,0.01)
这对于 CPU :
max by (pod) (sum(rate(container_cpu_usage_seconds_total{namespace="$namespace",container_name!="POD",container_name!="",container!="monitoring-daemon"}[5m])) / sum(kube_pod_container_resource_limits{namespace="$namespace", resource="cpu"})) * 100
推荐阅读
- python - 如何在python中获取未过滤的行?
- javascript - 如何将 JSON 中的数据解析为我的实际元素?
- aem - 如何在 aem 中使用 service worker.js?
- java - 获取当前用户位置 - Android
- node.js - DEADLINE_EXCEEDED:尝试使用循环创建数千个云任务时超出期限
- arrays - 时间戳以毫秒为单位存储在数组中
- flutter - 当我尝试将 qr 扫描与 Web 视图一起使用时,Android 崩溃
- powershell - 在窗口中拖动对象
- c# - 如何在 C# 中删除注册表值?
- powershell - 将txt转换为对象