小编Amj*_*yed的帖子

如何计算kube状态指标中pod的cpu使用率?

我使用 kubernetes api 和 kube 状态指标通过 prometheus 远程监控 eks 集群。在 Kubernetes api 中,我们有一个指标container_cpu_usage_seconds_total可以给出 pod 的 CPU 使用情况。kube-state-metrics 中是否有类似的指标可以给出 cpu 使用情况。实际上,我正在尝试获取与 kubernetes api 完全不同的集群 cpu 使用率,下面是计算的 kube-state-metrics。

kube-state-metrics:

sum(kube_pod_container_resource_requests_cpu_cores) / sum(kube_node_status_allocatable_cpu_cores) * 100- 这给出了 101%

而 kube-state-metrics 给出的12%对我来说看起来很准确。

kubernetes-api:

sum (rate (container_cpu_usage_seconds_total{id="/",kubernetes_io_hostname=~"^$Node$", job=~"$job$"}[5m])) / sum (machine_cpu_cores{kubernetes_io_hostname=~"^$Node$", job=~"$job$"}) * 100

我认为 kube-state-metric 中没有任何指标可以提供与 kubernetes-api 相比的 cpu 使用情况

提前致谢。

monitoring kubernetes prometheus kube-state-metrics

4
推荐指数
1
解决办法
2万
查看次数