Kubernetes 使用PromQL划分组
我想通过将已用内核数除以CPU限制(可分配内核数)来计算实际的容器CPU使用量。因此,我得到了4个吊舱的两个不同指标:Kubernetes 使用PromQL划分组,kubernetes,prometheus,promql,Kubernetes,Prometheus,Promql,我想通过将已用内核数除以CPU限制(可分配内核数)来计算实际的容器CPU使用量。因此,我得到了4个吊舱的两个不同指标: 每个吊舱使用的芯数 每个吊舱的可用芯数 我的问题: 我想获得每个容器的CPU使用率(已用内核数/可用内核数) 我的尝试: 这两个查询中的每一个都返回我想要的结果: 每个pod当前使用的芯数: (我使用label_replace是因为一个度量使用pod_name作为度量名称,而另一个使用pod) label_替换(总和(比率(容器cpu使用率)秒数{pod_name=~“re
- 每个吊舱使用的芯数
- 每个吊舱的可用芯数
pod_name
作为度量名称,而另一个使用pod
)
label_替换(总和(比率(容器cpu使用率)秒数{pod_name=~“rewe bd palantir vernemq.*”,容器名称=“vernemq”}[1m])为(pod_name),“pod”,“$1”,“pod_name”,“(*”)
答复:
sum(kube_pod_container_resource_limits_cpu_cores{pod=~“rewe bd palantir vernemq.*”,container=“vernemq”,job=“kubernetes pods”})通过(pod)
答复:
此查询不起作用(未返回任何数据点):
我的问题:
如何实现一个查询,返回每个pod的CPU使用率(已用内核数/可用内核数) 您还需要使用
on()
函数。所以是这样的
label_replace(sum(rate(container_cpu_usage_seconds_total{pod_name=~"rewe-bd-palantir-vernemq.*", container_name="vernemq"}[1m])) by (pod_name), "pod", "$1", "pod_name", "(.*)") / on(pod) sum(kube_pod_container_resource_limits_cpu_cores{pod=~"rewe-bd-palantir-vernemq.*", container="vernemq", job="kubernetes-pods"}) by (pod)
我找不到有关此函数的任何文档。有人有链接吗?
label_replace(sum(rate(container_cpu_usage_seconds_total{pod_name=~"rewe-bd-palantir-vernemq.*", container_name="vernemq"}[1m])) by (pod_name), "pod", "$1", "pod_name", "(.*)") / on(pod) sum(kube_pod_container_resource_limits_cpu_cores{pod=~"rewe-bd-palantir-vernemq.*", container="vernemq", job="kubernetes-pods"}) by (pod)