计算 Group By 语句中的值

Calculate value in Group By statement

用例:

我有 10 个 Kubernetes 节点(将它们视为 VM),它们具有 7 到 14 个 allocatable CPU 内核,Kubernetes pods 可以请求这些内核。因此我想展示一个 table 来展示

  1. Allocatable CPU 核心
  2. 请求的CPU个内核
  3. 请求/分配的比率table CPU 核心

按节点分组。

问题

为前两个要求创建 table 很容易。我只是在 Grafana 中创建了一个 table 并添加了这两个指标:

sum(kube_pod_container_resource_requests_cpu_cores) by (node)
sum(kube_node_status_allocatable_cpu_cores) by (node)

然而,我正在为第三个而苦苦挣扎。我试过这个查询,但显然 return 没有任何数据:

sum(kube_pod_container_resource_requests_cpu_cores / kube_node_status_allocatable_cpu_cores) by (node)

问题

在给定的示例中,如何通过语句实现对组中两个不同指标的计算?

这里的问题是两者有不同的标签,所以你需要把额外的东西汇总起来:

  sum by (node)(kube_pod_container_resource_requests_cpu_cores) 
/ 
  sum by (node)(kube_node_status_allocatable_cpu_cores)