cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Kubernetes/OpenShift CPU Throttling - What is the best metric?

crabbylou
Helper

I am starting to grab more container-level statistics within Kubernetes/OpenShift. Someone mentioned to me about the importance of measuring CPU throttling. What is the best metric in DT for measuring CPU throttling?

I am already grabbing container CPU, millicores, millicores and maximum. Is there an actual statistic for the percentage or degree of throttling?

Any help would be appreciated.

Thanks,

Lou

2 REPLIES 2

natanael_mendes
Champion

Yes exist, the metric is literally CPU throttling haha

"The CPU throttling metric tells you how long the application was throttled, so you can determine where more CPU time would have been needed for processing. This usually happens when the containers don't have enough CPU resources (limits) in the workload definition. This might affect the performance of the processes and applications running inside the containers."

 

Take a look on this documentation page

https://www.dynatrace.com/support/help/platform-modules/infrastructure-monitoring/container-platform...

You can also see the number of running pods versus desired pods for every cloud application.

Dynatrace Professional Certified

Mizső
DynaMight Guru
DynaMight Guru

Hi @crabbylou,

I usually use these ones at clinets:

(  builtin:containers.cpu.throttledMilliCores:avg:parents:parents:splitBy("dt.entity.cloud_application_instance","dt.entity.cloud_application"):sum

    / builtin:containers.cpu.usageMilliCores:avg:parents:parents:splitBy("dt.entity.cloud_application_instance","dt.entity.cloud_application"):sum

    * 100

)

:splitBy("dt.entity.cloud_application_instance","dt.entity.cloud_application")

:setUnit(Percent)

:sort(value(avg,descending))

:limit(5)

Mizs_0-1695159298930.png

Mizs_1-1695159358784.png

or

 

builtin:containers.cpu.throttledMilliCores

:filter(series(avg,gt,10))

:parents:parents:splitBy("dt.entity.cloud_application_instance","dt.entity.cloud_application")

:avg

:auto

:sort(value(avg,descending))

:limit(5)

Mizs_5-1695159652187.png

Mizs_6-1695159704496.png

I hope it helps.

Best regards,

Mizső

Dynatrace Community RockStar 2024, Certified Dynatrace Professional

Featured Posts