💎一站式轻松地调用各大LLM模型接口,支持GPT4、智谱、星火、月之暗面及文生图 广告
[TOC] 主机的CPU有很多比如说有N个,Tn时刻主机CPU空闲率的计算方法应该为 ``` (Tn时刻所有CPU的空闲时间和 - Tn-1所有CPU的空闲时间和) / (时间间隔 * N) ``` 分解开来,其实就是 ``` [(Tn时刻CPU{0}的空闲时间 - Tn-1所有CPU{0}的空闲时间) / 时间间隔 + ... + (Tn时刻所有CPU{N-1}的空闲时间 - Tn-1所有CPU{N-1}的空闲时间) / 时间间隔] / N ``` 那么就是 ``` [irate(node_cpu_seconds_total{cpu="0",mode="idle"}[1m]) + ... + irate(node_cpu_seconds_total{cpu="N-1",mode="idle"}[1m])] / N ``` 即 ``` avg(irate(node_cpu_seconds_total{mode="idle"}[1m])) ``` 上面的表达式只适于用只有一台主机时,如果有多台主机时,某台主机的CPU空闲率为 ``` avg(irate(node_cpu_seconds_total{instance="ip:port",mode="idle"}[1m])) ``` 如下是分别统计出来的两台主机的cpu空闲率的截图 ![](https://img.kancloud.cn/57/9d/579d571c698f331889b980e5cd47b057_1343x598.png) ![](https://img.kancloud.cn/d9/82/d9826e44773755e86626cee9d6286596_1333x594.png) 可以用下面的表达式来一次性统计所有主机的cpu空闲率 ``` avg(irate(node_cpu_seconds_total{mode="idle"}[1m])) by(instance) ``` 如下是统计出来的两台主机的cpu空闲率截图,可以看到有两条曲线,分别表示两台个instance ![](https://img.kancloud.cn/b1/ae/b1aed1a21540823066497db92eca10ef_1339x608.png) 那么一次性统计每台主机的cpu使用率的表达式为 ``` 1 - avg(irate(node_cpu_seconds_total{mode="idle"}[1m])) by(instance) ```