HPA показывает unknown вместо процента утилизации CPU
Для сервиса настроено автомасштабирование по загрузке процессора. Metrics-server в кластере установлен и работает — kubectl top pods показывает потребление корректно. Фрагмент манифеста контейнера:
resources:
limits:
cpu: 1000m
memory: 1Gi
Состояние автоскейлера при растущей нагрузке:
NAME REFERENCE TARGETS MINPODS MAXPODS REPLICAS
api-hpa Deployment/api <unknown>/70% 2 10 2
Почему автоскейлер не считает утилизацию и не добавляет реплики?
- Не хватает Cluster Autoscaler: без него автоскейлер подов не может рассчитать целевые значения
- Целевое значение 70% недостижимо при лимите 1000m, нужно снизить порог
- У контейнера не заданы `requests.cpu`, а утилизация считается как доля потребления от requests — без базы расчёта метрика остаётся неизвестной
- Автоскейлер по загрузке процессора работает только с пользовательскими метриками из Prometheus через adapter: стандартных метрик от metrics-server для расчёта утилизации ему недостаточно
