1

我是运行 Prometheus 和 Graphana 的新手。我想创建一个警报,当 Kubernetes pod 处于挂起状态超过 15 分钟时触发。我正在使用的 PromQL 查询是:

kube_pod_status_phase{exported_namespace="mynamespace", phase="Pending"} > 0

我无法弄清楚的是如何根据 pod 处于该状态的时间来构建警报。我在 Graphana 中尝试了几种警报条件的排列方式:

WHEN avg() OF query (A, 15m, now) 大于 1

all 根据状态中的 pod 数量而不是持续时间触发警报。

如何根据状态时间构建警报?

求求你了,谢谢你

4

1 回答 1

0
- alert: KubernetesPodNotHealthy
expr: min_over_time(sum by (namespace, pod) (kube_pod_status_phase{phase=~"Pending|Unknown|Failed"})[15m:1m]) > 0
for: 0m
labels:
  severity: critical
annotations:
  summary: Kubernetes Pod not healthy (instance {{ $labels.instance }})
  description: "Pod has been in a non-ready state for longer than 15 minutes.\n  VALUE = {{ $value }}\n  LABELS = {{ $labels }}"
于 2021-08-30T09:38:55.323 回答