Sobes.tech
Middle — Middle+

Jak lze dynamicky řídit počet kontejnerů v Kubernetes v závislosti na zatížení systému?

sobes.tech AI

Odpověď od AI

V Kubernetesu se pro dynamické řízení počtu kontejnerů (replik podů) podle zatížení používá Horizontal Pod Autoscaler (HPA). HPA automaticky škáluje počet podů v Deployment, ReplicaSet nebo StatefulSet na základě metrik, jako je využití CPU, paměť nebo vlastní metriky.

Příklad konfigurace HPA, která škáluje počet podů podle zatížení CPU:

apiVersion: autoscaling/v2
kind: HorizontalPodAutoscaler
metadata:
  name: priklad-hpa
spec:
  scaleTargetRef:
    apiVersion: apps/v1
    kind: Deployment
    name: priklad-deployment
  minReplicas: 1
  maxReplicas: 10
  metrics:
  - type: Resource
    resource:
      name: cpu
      target:
        type: Utilization
        averageUtilization: 50

Zde HPA udrží průměrné zatížení CPU na úrovni 50 %, přičemž počet podů se bude zvyšovat nebo snižovat v rozmezí od 1 do 10.

Také lze použít Vertical Pod Autoscaler (VPA) ke změně zdrojů podu, ale pro škálování počtu replik je HPA nejlepší volbou.