Выбор ответа Senior HPA, StatefulSet и тома обновлено

HPA по памяти не уменьшает поды

Вопрос

HPA по памяти для Java-сервиса масштабировал его до максимума во время пика, а после спада нагрузки число подов не уменьшается. Почему?

Попробуйте сами

Выберите вариант, и откроется разбор.

Показать ответ и разбор

Коротко

Правильный ответ: JVM не отдаёт память ОС после пика, и HPA не видит причин уменьшать. Куча JVM после роста обычно остаётся занятой с точки зрения ОС, сборщик мусора освобождает её внутри процесса.

Варианты ответа

  1. HPA не умеет уменьшать число подов, только увеличивать, вниз масштабирует VPA
  2. Окно стабилизации на уменьшение по умолчанию длится сутки, поды уйдут завтра
  3. metrics-server завис на пиковых значениях, его нужно перезапустить
  4. JVM не отдаёт память ОС после пика, и HPA не видит причин уменьшатьправильный ответ

Разбор

Куча JVM после роста обычно остаётся занятой с точки зрения ОС, сборщик мусора освобождает её внутри процесса. Метрика памяти не падает, и HPA держит максимум. Масштабируют по CPU, RPS, задержке или длине очереди. HPA уменьшает число подов, окно стабилизации на уменьшение по умолчанию 5 минут, а metrics-server здесь исправен.

Ответьте сами, а не прочитайте

В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.

Термины по теме