Управление ресурсами с помощью HPA (Horizontal Pod Autoscaler)

Практические лайфхаки для разработчиков, DevOps и админов: Docker, Linux, Bash, Python, Golang, Ansible, логи и безопасность — только рабочие решения. Даем готовые команды, конфиги и приёмы диагностики, которые экономят часы и дни. Если нужно быстро настроить, отладить и обезопасить инфраструктуру — вы по адресу.

hpakubernetesautoscaling

👁 Когда проект растет, и нагрузка на приложения увеличивается, вам нужно подумать о масштабировании. Обычно в Kubernetes это достигается с помощью Horizontal Pod Autoscaler (HPA), который автоматически регулирует количество подов в деплойменте или реплика-сете в зависимости от нагрузки.

HPA — это объект Kubernetes, который автоматически масштабирует количество реплик подов на основе метрик нагрузки, таких как использование CPU или памяти. Он следит за текущими метриками и увеличивает или уменьшает количество подов в соответствии с заданными условиями. Для того чтобы включить HPA, вам нужно просто создать объект HPA в кластере, указав, какие метрики должны быть отслеживаемы и какие пределы следует использовать для масштабирования.

📝 Пример команды для создания HPA:

kubectl autoscale deployment my-app --cpu-percent=50 --min=1 --max=10
  • cpu-percent=50 — Указывает, что если среднее использование CPU на подах превышает 50%, то Kubernetes начнёт масштабирование.
  • min=1 — Минимальное количество подов в деплойменте.
  • max=10 — Максимальное количество подов, которое может быть запущено.

🔎 Такой подход позволяет не переживать о пиках трафика или нестабильности в потреблении ресурсов, так как Kubernetes позаботится о масштабировании сам.

❗️ Использование HPA особенно полезно для микросервисов и приложений, которые подвергаются непредсказуемой нагрузке, например, в e-commerce проектах, SaaS, или в проектах с сильно изменяющимся трафиком.

tags: #k8s #мониторинг

❤️ @recura_tech

Темный баннер с заголовком «Управление ресурсами с помощью HPA (Horizontal Pod Autoscaler)», логотипом RECURA и декоративными графическими блоками на фоне
Обложка поста: HPA и масштабирование в Kubernetes

Читайте так же