English version

KubeJobFailed: что делать при алерте

Правило алерта

alert: KubeJobFailed
expr: kube_job_status_failed > 0
for: 1m
severity: warning

Сообщение алерта: Job {{ $labels.namespace }}/{{ $labels.job_name }} завершился с ошибкой

Что значит

У Job есть Pod, завершившиеся с ошибкой (kube_job_status_failed > 0). Задача не выполнена или выполняется с повторами. Для CronJob метрика остаётся, пока существует объект Job (ограничено failedJobsHistoryLimit).

Частые причины

Ошибка в скрипте задачи, недоступная БД/API, нехватка прав, таймаут (activeDeadlineSeconds), нехватка ресурсов.

Диагностика

kubectl -n <ns> get jobs
kubectl -n <ns> describe job <имя>
kubectl -n <ns> get pods -l job-name=<имя>
kubectl -n <ns> logs -l job-name=<имя> --tail=100

Как исправить

Исправить причину по логам, затем удалить неудавшийся Job (kubectl -n <ns> delete job <имя>), чтобы алерт погас, или дождаться следующего успешного запуска CronJob и очистки истории.

Когда можно заглушить

Если неудача известна, разобрана и повторный запуск не требуется (но тогда удалите Job).

Похожие алерты

Весь набор из 44 протестированных правил + Alertmanager → Telegram: 790 ₽
Открыть в Telegram · Бесплатный набор Monitoring Lite · Все алерты runbook