node-exporter cpu使用率为负数

node-exporter cpu使用率为负数

在prometheus利用公式:100 - (avg by (instance) (irate(node_cpu{instance="xxx", mode="idle"}[5m])) * 100) 计算cpu使用率,如果cpu低负载,且多核(我的是32核)的情况下,会出现负数。

node-exporter cpu使用率为负数_第1张图片

 

 

原因:cpu的使用数据都是测算值来的(CPU处于空闲状态时间比例。一般而言,idel + user + nice 约等于100%)。当cpu处于多核、低负载的情况下,值的差异会被放大,从而导致出现负数的情况。

解决方法:

换成公式:avg by (ip)(irate(node_cpu_seconds_total{mode=~"sytem|user|iowait|irq|softirq|nice|steal|guest"}[5m])) * 100

 

posted on 2019-07-05 17:02 落烨无痕 阅读( ...) 评论( ...) 编辑 收藏

转载于:https://www.cnblogs.com/danny-djy/p/11139445.html

你可能感兴趣的:(node-exporter cpu使用率为负数)