Middle — Middle+
Hoe kan het aantal containers in Kubernetes dynamisch worden beheerd op basis van de systeembelasting?
sobes.tech AI
Antwoord van AI
In Kubernetes wordt de Horizontal Pod Autoscaler (HPA) gebruikt om het aantal containers (replica's van pods) dynamisch te beheren op basis van de belasting. HPA schaalt automatisch het aantal pods in een Deployment, ReplicaSet of StatefulSet op basis van metrics zoals CPU-gebruik, geheugen of aangepaste metrics.
Voorbeeld van HPA-configuratie die het aantal pods schaalt op basis van CPU-belasting:
apiVersion: autoscaling/v2
kind: HorizontalPodAutoscaler
metadata:
name: voorbeeld-hpa
spec:
scaleTargetRef:
apiVersion: apps/v1
kind: Deployment
name: voorbeeld-deployment
minReplicas: 1
maxReplicas: 10
metrics:
- type: Resource
resource:
name: cpu
target:
type: Utilization
averageUtilization: 50
Hier houdt HPA de gemiddelde CPU-belasting rond de 50%, en past het aantal pods aan tussen 1 en 10.
Het is ook mogelijk om de Vertical Pod Autoscaler (VPA) te gebruiken om de resources van een pod te wijzigen, maar voor het schalen van het aantal replicas is HPA de beste keuze.