我正在从 prometheus 中抓取 kubernetes 指标,并且需要提取正在运行的 pod 的数量。
我可以看到 container_last_seen 指标,但我应该如何让 Pod 不运行。有人可以帮忙吗?
我正在从 prometheus 中抓取 kubernetes 指标,并且需要提取正在运行的 pod 的数量。
我可以看到 container_last_seen 指标,但我应该如何让 Pod 不运行。有人可以帮忙吗?
如果您需要获取正在运行的 pod 的数量,您可以使用 pod 指标列表中的指标https://github.com/kubernetes/kube-state-metrics/blob/master/docs/pod-metrics.md(要获得纯粹关于 pod 的信息,使用特定于 pod 的指标是有意义的)。例如,如果您需要获取每个命名空间的 pod 数量,它将是:
count(kube_pod_info{namespace="$namespace_name"}) by (namespace)
要获取集群上运行的所有 pod 的数量,那么只需执行以下操作:
count(kube_pod_info)
假设您想根据您的问题标签在 Grafana 中显示它,例如,从此Kubernetes App Metrics仪表板:
count(count(container_memory_usage_bytes{container_name="$container", namespace="$namespace"}) by (pod_name))
您可以只导入仪表板并使用查询。
根据您的配置/部署,您可以调整变量container_name
和namespace
,分组by (pod_name)
和count
'ing 就可以了。可以使用其他一些标签pod_name
,只要它在您要计数的 pod 之间共享即可。