2016-10-30 60 views
4

我想計算一個kubernetes集羣中所有豆莢的CPU使用情況。我發現在普羅米修斯兩個指標可能是有用的:如何使用prometheus作爲監控來計算kubernetes中容器的cpu使用情況?

container_cpu_usage_seconds_total: Cumulative cpu time consumed per cpu in seconds. 
process_cpu_seconds_total: Total user and system CPU time spent in seconds. 

Cpu Usage of all pods = increment per second of sum(container_cpu_usage_seconds_total{id="/"})/increment per second of sum(process_cpu_seconds_total) 

然而,我發現比sum(process_cpu_seconds_total)增量較大的container_cpu_usage{id="/"}每一秒的增量。所以使用率可能會大於1 ...

回答

6

這我使用的集羣水平得到CPU使用率:

sum (rate (container_cpu_usage_seconds_total{id="/"}[1m]))/sum (machine_cpu_cores) * 100 

我還跟蹤每個吊艙CPU使用率。

sum (rate (container_cpu_usage_seconds_total{image!=""}[1m])) by (pod_name) 

我已經在GitHub上一個完整的kubernetes - 普羅米修斯的解決方案,也許能幫助你更多的指標:https://github.com/camilb/prometheus-kubernetes

enter image description here

enter image description here

+0

我可以確認'sum(rate(container_cpu_usage_seconds_total {id =「/」} [1m]))/ sum(machine_cpu_cores)* 100 '代表cpu佔用率的百分比,還是簡單地表示容器消耗的內核數量? –

0

以及您可以使用下面的查詢以及

avg (rate (container_cpu_usage_seconds_total{id="/"}[1m]))

相關問題