如何在 prometheus 中获取最近 3 个月内运行的 pod

Posted

技术标签:

【中文标题】如何在 prometheus 中获取最近 3 个月内运行的 pod【英文标题】:How to get in prometheus the pods that have been running in the last 3 months 【发布时间】:2021-11-11 06:15:41 【问题描述】:

您好,我需要知道如何在 prometheus 中查询最近 3 个月在 k8s 集群中运行的 pod。我尝试过使用kube_pod_start_time * 1000,但我只获得了 pod 启动的时间

谢谢!!

【问题讨论】:

请澄清您的具体问题或提供更多详细信息以准确突出您的需求。正如目前所写的那样,很难准确地说出你在问什么。 【参考方案1】:

此查询表达式将返回运行时间超过 90 天的 pod 名称及其相应年龄。

floor(sum by (pod) (time() - kube_pod_created) / 86400 > 90)

这将返回过去 90 天内运行的 pod 的名称。 请注意,也可以存在已退出的 pod,但现在不存在。

sum by (pod) (min_over_time(kube_pod_start_time[90d]))

【讨论】:

以上是关于如何在 prometheus 中获取最近 3 个月内运行的 pod的主要内容,如果未能解决你的问题,请参考以下文章

如何在 sql server 中获取最近 3 个月的名称

如何使用月份名称获取最近 3 个月的计数,如果该月份没有记录需要使用月份名称获取 0 [重复]

获取最近 3 个月数据的 SQL 查询

如何通过 SQL Server 中的分组列根据日期列的最近 3 个月获取列平均值?

如何在SQL中获取当前日期最近六个月的前一个月数据

仅在 MySQL 中返回最近 3 个月的记录