Fractal Techware

Alert runbooks /

KubePodNotReady

Pod has been in a non-ready state. Free rule (MIT): the complete runbook and rule definition are below.

   
Severity warning
Pending (for:) 15m (warning)
Domain Kubernetes workloads
Requires kube-state-metrics v2.x
Rule file rules/kubernetes-workloads.rules.yml (group ftw.kubernetes-workloads.alerts)

Meaning

The pod phase has been Pending, Unknown or Failed for the whole pending period. Pods owned by Jobs are excluded (the full pack covers them with KubeJobFailed).

Impact

The workload runs with fewer replicas than intended. A single-replica workload is unavailable.

Diagnosis

Mitigation

Escalation

Route to the team that owns the namespace. Platform on-call only takes over when several namespaces are affected at once (likely a node, network or control-plane problem).

Rule definition

From rules/kubernetes-workloads.rules.yml in the free repository (MIT). Unit tests for it are in tests/.

- alert: KubePodNotReady
  expr: |-
    max by (cluster, namespace, pod) (kube_pod_status_phase{job="kube-state-metrics", namespace=~".+", phase=~"Pending|Unknown|Failed"}) > 0
    unless on (cluster, namespace, pod)
    max by (cluster, namespace, pod) (kube_pod_owner{job="kube-state-metrics", owner_kind="Job"})
  for: 15m
  labels:
    severity: warning
  annotations:
    summary: Pod has been in a non-ready state.
    description: Pod {{ $labels.namespace }}/{{ $labels.pod }} has been Pending, Unknown or Failed for longer than 15m.
    runbook_url: runbooks/kubernetes-workloads/KubePodNotReady.md