mirror of https://github.com/k3s-io/k3s
34b4b8f526
Automatic merge from submit-queue HPA: Consider unready pods separately **Release note**: ``` release-note The Horizontal Pod Autoscaler now takes the readiness of pods into account when calculating desired replicas. ``` Currently, the HPA considers unready pods the same as ready pods when looking at their CPU and custom metric usage. However, pods frequently use extra CPU during initialization, so we want to consider them separately. This commit causes the HPA to consider unready pods as having 0 CPU usage when scaling up, and ignores them when scaling down. If, when scaling up, factoring the unready pods as having 0 CPU would cause a downscale instead, we simply choose not to scale. Otherwise, we simply scale up at the reduced amount calculated by factoring the pods in at zero CPU usage. Similarly, if we are missing metrics for any pods, those pods will be considered as having 0% CPU when scaling up, and 100% CPU when scaling down. As with the unready pods calculation, this cannot change the direction of the scale. The effect is that unready pods cause the autoscaler to be a bit more conservative -- large increases in CPU usage can still cause scales, even with unready pods in the mix, but will not cause the scale factors to be as large, in anticipation of the new pods later becoming ready and handling load. |
||
---|---|---|
.. | ||
clicheck | ||
gendocs | ||
genkubedocs | ||
genman | ||
genswaggertypedocs | ||
genutils | ||
genyaml | ||
hyperkube | ||
kube-apiserver | ||
kube-controller-manager | ||
kube-discovery | ||
kube-dns | ||
kube-proxy | ||
kubeadm | ||
kubectl | ||
kubelet | ||
kubemark | ||
kubernetes-discovery | ||
libs/go2idl | ||
linkcheck | ||
mungedocs | ||
OWNERS |