如何计算节点的总 CPU 请求

问题描述 投票:0回答:1
kubectl describe node node-name

为我们提供了 CPU 请求和限制的摘要

Resource           Requests              Limits
--------           --------              ------
cpu                3449m (98%)           20700m (591%)
                           ↑

我正在尝试使用 Grafana 中的 PromQL 从 Prometheus Metrics 获取 CPU 请求百分比

我可以获取 CPU 请求总数并按节点求和

sum by (node) (kube_pod_container_resource_requests_cpu_cores) 

不知道如何在这里插入

kube_node_status_allocatable_cpu_cores
,这为每个节点提供了可分配的CPU。请注意,我的所有节点都有一定数量的核心。

如何在一个查询中混合节点和容器指标?

kubernetes prometheus grafana metrics promql
1个回答
0
投票

您可以使用此查询:

with (
    requested_cores = sum(default_rollup(kube_pod_container_resource_requests{cluster=~"$cluster", unit="core"}[$interval])) by (node),
    allocatable_resources = sum(default_rollup(kube_node_status_allocatable{cluster=~"$cluster", resource="cpu"}[$interval])) by (node)
)
(requested_cores / allocatable_resources) * 100
© www.soinside.com 2019 - 2024. All rights reserved.