honillusion
honillusion

Reputation: 155

Kubernetes hpa cpu utilization

I found something wrong at HPA for istio gateway.

Why did 10m equal 10%? Wasn't 10m 1%?

Kubernetes version is 1.18.5.

# kubectl get hpa --all-namespaces
NAMESPACE      NAME                   REFERENCE                         TARGETS   MINPODS   MAXPODS   REPLICAS   AGE
istio-system   istio-egressgateway    Deployment/istio-egressgateway    7%/80%    2         10        2          13d
istio-system   istio-ingressgateway   Deployment/istio-ingressgateway   10%/80%   2         10        2          21d
istio-system   istiod                 Deployment/istiod                 0%/80%    1         5         1          21d
qa2            graph                  Deployment/graph                  2%/50%    1         10        1          7h35m
qa2            member                 Deployment/member                 0%/50%    1         10        1          7h38m
# kubectl describe hpa istio-ingressgateway -n istio-system | grep "resource cpu"
  resource cpu on pods  (as a percentage of request):  10% (10m) / 80%

# kubectl describe hpa istio-egressgateway -n istio-system | grep "resource cpu"
  resource cpu on pods  (as a percentage of request):  7% (7m) / 80%

# kubectl describe hpa istiod -n istio-system | grep "resource cpu"
  resource cpu on pods  (as a percentage of request):  0% (3m) / 80%

# kubectl describe hpa graph -n qa2 | grep "resource cpu"
  resource cpu on pods  (as a percentage of request):  2% (24m) / 50%

# kubectl describe hpa member -n qa2 | grep "resource cpu"
  resource cpu on pods  (as a percentage of request):  1% (12m) / 50%

Upvotes: 2

Views: 586

Answers (1)

Forketyfork
Forketyfork

Reputation: 7810

These values are not the same, and they are not directly calculated from each other.

The value in percents is the target average utilization (corresponding to the targetAverageUtilization parameter), which is relative to the requested value.

The value in the brackets is the target average value (targetAverageValue), which is not measured in percents - this is an absolute raw value for the metric.

Upvotes: 3

Related Questions