Cybersecurity
Kubernetes
Subjective
Oct 07, 2025
What is Horizontal Pod Autoscaler (HPA) and how do you configure it for different metrics?
Detailed Explanation
Horizontal Pod Autoscaler automatically scales pod replicas based on observed metrics like CPU utilization, memory usage, or custom metrics.\n\nHow HPA Works:\n• Monitors metrics every 15 seconds (default)\n• Calculates desired replica count\n• Scales deployment/replicaset up or down\n• Respects min/max replica constraints\n\nSupported Metrics:\n• Resource metrics: CPU, memory utilization\n• Custom metrics: Application-specific metrics\n• External metrics: External system metrics\n• Multiple metrics: Combined scaling decisions\n\nScaling Algorithm:\ndesiredReplicas = ceil[currentReplicas * (currentMetricValue / desiredMetricValue)]\n\nExample Configuration:\napiVersion: autoscaling/v2\nkind: HorizontalPodAutoscaler\nmetadata:\n name: web-app-hpa\nspec:\n scaleTargetRef:\n apiVersion: apps/v1\n kind: Deployment\n name: web-app\n minReplicas: 2\n maxReplicas: 10\n metrics:\n - type: Resource\n resource:\n name: cpu\n target:\n type: Utilization\n averageUtilization: 70\n - type: Resource\n resource:\n name: memory\n target:\n type: Utilization\n averageUtilization: 80\n\nBest Practices:\n• Set resource requests for accurate scaling\n• Use multiple metrics for better decisions\n• Configure appropriate scaling policies\n• Monitor scaling events and performance\n• Implement Vertical Pod Autoscaler for right-sizing
Discussion (0)
No comments yet. Be the first to share your thoughts!
Share Your Thoughts