gpt4 book ai didi

kubernetes - 如何在Kubernetes中使用Prometheus获得pod的(milli)核心CPU使用率?

转载 作者:行者123 更新时间:2023-12-03 16:38:22 28 4
gpt4 key购买 nike

我运行了Kubernetes的v1.9.2自定义设置,并使用Prometheus v2.1.0抓取了各种指标。除其他外,我刮了kubeletcAdvisor指标。

我想回答一个问题:“在部署中,pod(及其容器)实际上使用(毫厘)内核使用了requestslimits定义的CPU资源中有多少?”

有许多可用的刮除指标,但并非如此。也许可以通过CPU使用时间(以秒为单位)来计算,但我不知道如何。

我一直在考虑这是不可能的-直到一个 friend 告诉我她在集群中运行Heapster时,内置Grafana中有一个图形准确地表明:它在(milli)内核中显示了pod及其容器的单独CPU使用情况。

由于Heapster还使用kubeletcAdvisor指标,所以我想知道:如何计算相同的值? InfluxDB中的指标称为cpu/usage_rate,但是即使使用Heapster的代码,我也无法弄清楚他们是如何计算出来的。

任何帮助表示赞赏,谢谢!

最佳答案

我们正在使用container_cpu_usage_seconds_total指标来计算Pod CPU使用率。此度量标准包含每个容器按核心消耗的CPU秒总数(这很重要,因为Pod可能包含多个容器,每个容器可以跨多个核心进行调度;但是,该度量标准具有pod_name批注,我们可以使用进行汇总)。特别值得关注的是该指标的变化率(可以使用PromQL's rate() function进行计算)。如果在1秒钟内增加1,则Pod在该秒内消耗1个CPU内核(或1000毫内核)。

下面的PromQL查询就是这样做的:计算平均五分钟内所有Pod的CPU使用率(使用 sum(...) by (pod_name) 操作):

sum(rate(container_cpu_usage_seconds_total[5m])) by (pod_name)

关于kubernetes - 如何在Kubernetes中使用Prometheus获得pod的(milli)核心CPU使用率?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48872042/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com