Kubernetes Horizontal Pod Autoscaler: Difference between revisions
Line 16: | Line 16: | ||
=HPA Manifest= | =HPA Manifest= | ||
{{Internal|Kubernetes Horizontal Pod Autoscaler Manifest|Horizontal Pod Autoscaler Manifest}} | {{Internal|Kubernetes Horizontal Pod Autoscaler Manifest|Horizontal Pod Autoscaler Manifest}} | ||
= | =How it Works= | ||
A HorizontalPodAutoscaler [[Kubernetes_API_Resources_Concepts#HorizontalPodAutoscaler|Kubernetes API resource]] enables and configures a horizontal pod controller. The controller periodically reads the appropriate [[Metrics_in_Kubernetes#Metrics|metrics API]], calculates the number of replicas required to meet the target metric value configured in the HorizontalPodAutoscaler resource, and adjust the "replicas" field on the target pod controller. | A HorizontalPodAutoscaler [[Kubernetes_API_Resources_Concepts#HorizontalPodAutoscaler|Kubernetes API resource]] enables and configures a horizontal pod controller. The controller periodically reads the appropriate [[Metrics_in_Kubernetes#Metrics|metrics API]], calculates the number of replicas required to meet the target metric value configured in the HorizontalPodAutoscaler resource, and adjust the "replicas" field on the target pod controller. | ||
=Operations= | =Operations= | ||
* [[Horizontal_Pod_Autoscaler_Operations#Create_an_Autoscaler|Create an autoscaler.]] | * [[Horizontal_Pod_Autoscaler_Operations#Create_an_Autoscaler|Create an autoscaler.]] |
Revision as of 03:03, 7 October 2020
External
- https://kubernetes.io/docs/tasks/run-application/horizontal-pod-autoscale/
- https://kubernetes.io/docs/tasks/run-application/horizontal-pod-autoscale-walkthrough/
- https://towardsdatascience.com/kubernetes-hpa-with-custom-metrics-from-prometheus-9ffc201991e
- https://github.com/kubernetes/community/blob/master/contributors/design-proposals/instrumentation/custom-metrics-api.md
Internal
Overview
Horizontal pod autoscaling is the automatic increase or decrease the number of pod replicas managed by a higher level controller that supports scaling (deployments, replica sets, stateful sets).. The scaling is performed by a horizontal controller and it is controlled by a horizontal pod autoscaler Kubernetes API resource. For an horizontal pod autoscaler to work correctly, a source of metrics, in particular resource metrics, must be deployed. The simplest source of resource metrics is the metrics server.
Playground
HPA Manifest
How it Works
A HorizontalPodAutoscaler Kubernetes API resource enables and configures a horizontal pod controller. The controller periodically reads the appropriate metrics API, calculates the number of replicas required to meet the target metric value configured in the HorizontalPodAutoscaler resource, and adjust the "replicas" field on the target pod controller.