Skip to content

Definicja Horizontal Pod Autoscaler (HPA) w manifeście

W manifeście HPA określamy do jakiego Deploymentu będzie to przypisane. Definicja:

apiVersion: autoscaling/v2
kind: HorizontalPodAutoscaler
metadata:
    name: <hpa_name>
spec:
    scaleTargetRef:
        apiVersion: apps/v1
        kind: Deployment
        name: <deployment_name>
    minReplicas: 1
    maxReplicas: 10
    metrics:
        - type: Resources
          resource:
              name: <resource_name, i.e. cpu>
              target:
                  type: Utilization
                  averageUtilization: <target_cpu_percent_utilization>

To tak samo jakby:

kubectl autoscale deployment <deployment_name> --cpu-percent=<target_cpu_percent_utilization> --min=1 --max=10

Polecenia

Tworzenie nowego HPA w klastrze

kubectl autoscale deployment <deployment_name> --cpu-percent=<target_cpu_percent_reaction> --min=<min_pod_amount> --max=<max_pod_amount>

Sprawdzenie działających HPA w klastrze

kubectl get hpa