Использование ЦП Kubernetes hpa

Я обнаружил, что что-то не так с HPA для шлюза istio.

Почему 10 м равнялись 10%? Разве 10 млн не 1%?

Версия Kubernetes - 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%

1 ответ

Решение

Эти значения не совпадают, и они не рассчитываются напрямую друг от друга.

Значение в процентах - это целевой средний коэффициент использования (соответствующий targetAverageUtilization параметр), который относительно запрошенного значения.

Значение в скобках - это целевое среднее значение (targetAverageValue), который не измеряется в процентах - это абсолютное сырое значение для метрики.

Другие вопросы по тегам