⚡️ K8s ошибки: краткий справочник

Exit-коды (kubectl describe pod → Exit Code) • 0 — успех (для Jobs ок, для деплойментов — ошибка логики) • 1 — общая ошибка (смотри логи --previous) • 126/127 — файл не найден или не исполняемый (проверь cmd/entrypoint) • 137 — OOMKilled ↑ памяти либо принудительный килл после SIGTERM • 143 — SIGTERM, штатное завершение (добавь graceful shutdown)

Reason в Describe • ImagePullBackOff/ErrImagePull — ошибка загрузки образа (тег, secret, сеть) • CrashLoopBackOff — контейнер падает после старта (exit ≠ 0) • OOMKilled — лимит памяти превышен (увеличь лимиты или профилируй) • ContainerCreating — залипание на томе/образе (проверь PVC, events) • Evicted — выселен из-за нехватки ресурсов на ноде (проверь MemoryPressure)

HTTP коды API • 403 Forbidden — RBAC (kubectl auth can-i …) • 404 Not Found — кривое имя ресурса/неймспейса • 409 Conflict — resourceVersion устарел, обнови • 503 Service Unavailable — API сервер или etcd не готов

Дебаг за минуту

kubectl describe pod -n # ищи Reason, Exit Code, Events kubectl logs --previous -c # логи упавшего контейнера kubectl top pod -n --containers # мониторинг ресурсов

Сохраняй как тревожный чемоданчик 💼