HPA автоматически масштабирует число реплик Deployment по метрикам (CPU, memory, custom). Задают min/max реплик и целевое использование (например, 70% CPU). В Go приложение должно отдавать метрики в формате, который собирает метрик-сервер (обычно стандартные cAdvisor метрики с нод). Для кастомных метрик нужен адаптер (Prometheus adapter и т.п.).
apiVersion: autoscaling/v2
kind: HorizontalPodAutoscaler
spec:
scaleTargetRef: {apiVersion: apps/v1, kind: Deployment, name: app}
minReplicas: 2
maxReplicas: 10
metrics:
- type: Resource
resource: {name: cpu, target: {type: Utilization, averageUtilization: 70}}