Вопрос на собеседовании · DevOps-инженер

Что произойдёт, если pod превысит лимит памяти в Kubernetes?

Короткий ответ, ключевые тезисы и ошибки, которых стоит избежать на интервью.

Обновлено 17 августа 2026 г.Встречается почти всегда
DevOps-инженерПрофессии и разделы
Короткий ответ

Когда cgroup контейнера превышает memory limit, ядро завершает процесс, а Kubernetes показывает причину OOMKilled. kubelet перезапускает контейнер согласно restartPolicy, поэтому pod может перейти в CrashLoopBackOff при повторяющейся проблеме.

Диагностика начинается с kubectl describe, lastState, событий и графика working set. Затем сравнивают limit с реальным профилем памяти, ищут утечку или пик и проверяют QoS; простое увеличение лимита без причины только откладывает повтор.

01 · Структура ответа

Что важно сказать интервьюеру

Начните с определения, затем объясните механизм и закончите примером из практики. Для полного ответа раскройте эти тезисы:

Memory limit приводит к kill, CPU limit — к throttling.
Request участвует в размещении pod.
QoS влияет на eviction при нехватке памяти узла.
Нужны метрики до момента рестарта.

02 · Пример

Как объяснить на практике

Если потребление растёт после каждого запроса и не возвращается, сначала снимаю профиль и ограничиваю трафик. Если это краткий предсказуемый пик batch-задачи, пересматриваю limit и concurrency.

Не заучивайте формулировку дословно. Свяжите принцип с задачей из собственного проекта — интервьюер почти наверняка попросит уточнить детали реализации и компромиссы.

03 · Ошибки

Чего избегать в ответе

Путать OOM контейнера с eviction узла.
Смотреть только текущее состояние после restart.
Поднимать limit без проверки утечки.

04 · Углубление

Что могут спросить следом

  1. Чем Guaranteed отличается от Burstable?
  2. Что такое CrashLoopBackOff?
  3. Как выбрать memory request?

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

Ответьте вслух, а не про себя

Откроем тренировку сразу на этом вопросе. Выберите грейд, сформулируйте ответ и сравните его с опорой.

Потренировать ответ