Kubernetes 获取pod处于挂起状态的平均时间

Kubernetes 获取pod处于挂起状态的平均时间,kubernetes,prometheus,grafana,Kubernetes,Prometheus,Grafana,我试图计算一个豆荚在格拉法纳和普罗米修斯待决状态下的平均停留时间。通过这个查询,我可以生成一个图来获取一段时间内处于挂起状态的吊舱数量 sum(kube_pod_status_phase{phase="Pending"}) 然而,我真的想得到一个平均时间的值,这些豆荚在过去的X小时内处于这种状态。我如何才能做到这一点?PromQL提供 您可以在表达式中指定;对于前X个小时,它将是: avg_over_time(kube_pod_status_phase{phase="Pending"}[Xh]

我试图计算一个豆荚在格拉法纳和普罗米修斯待决状态下的平均停留时间。通过这个查询,我可以生成一个图来获取一段时间内处于挂起状态的吊舱数量

sum(kube_pod_status_phase{phase="Pending"})
然而,我真的想得到一个平均时间的值,这些豆荚在过去的X小时内处于这种状态。我如何才能做到这一点?

PromQL提供

您可以在表达式中指定;对于前X个小时,它将是:

avg_over_time(kube_pod_status_phase{phase="Pending"}[Xh])

度量值
kube\u pod\u status\u phase{phase=“Pending”}
将只提供二进制值,即0/1。 1如果pod处于挂起状态,则为。 此外,数据每30秒更新一次。 因此,要查找过去X小时内它处于挂起状态的总时间,您可以执行以下操作

sum_over_time(kube_pod_status_phase{phase="Running"}[Xh]) * X * 30
为了更好地可视化,您可以在grafana中使用table