一、CPU utilization
使用Zabbix查看CPU利用率,會有下面幾個值:
CPU idle time:空閑的cpu時間比【簡稱id】
CPU user time:用戶態使用的cpu時間比【簡稱us】
CPU system time:系統態使用的cpu時間比【簡稱sy】
CPU iowait time:cpu等待磁盤寫入完成時間【簡稱wa】
CPU nice time:用做nice加權的進程分配的用戶態cpu時間比【簡稱ni】
CPU interrupt time:硬中斷消耗時間【簡稱hi】
CPU softirq time:硬中斷消耗時間【簡稱si】
CPU steal time:虛擬機偷取時間【簡稱st】
其實這個數據就是在linux系統上使用top命令獲取的:
二、CPU load
CPU load提供了1分鍾,5分鍾,15分鍾的單核CPU負載情況。
我們會發現,Zabbix提供的數據跟top命令輸出的load avearge相差很大,這是因為top統計的是所有核數總的情況。
cpu load(Zabbix) * 核數 = load average(top)
---------------------
zabbix cpu 模板介紹
"1 min average per core " 是每個core 的平均值,不是CPU 的平均值。 一個cpu可以有多個 core.
"1 min average per core " 是每個core 的平均值,不是CPU 的平均值。 一個cpu可以有多個 core.
grep proc /proc/cpuinfo發現為24core,找template 里的Item ,找到這個template "Template OS Linux", 點擊item后,你會看到這個: Processor load (1 min average per core)
key相關:
是每個core 的平均值(zabbix定義的load值):system.cpu.load[percpu,avg1]
CPU 的平均值(TOP里面值load值):system.cpu.load[all,avg1]
也就是說zabbix自帶的os模板帶 的cpu load值計算方式:uptime的load值/cpu核數
如果要更改,就需要默認自帶Key值更改為:system.cpu.load[all,avg1]