统计每个机器的资源
zabbix-增加cpu-mem-net监控
模版位置: https://download.csdn.net/download/YINHAOXU1/12260778
Load
cpu负载;
一核CPU对应我们一条公路,一个进程对应一辆汽车。
在一条公路上,只有一辆汽车行驶,load=1没有出现拥堵的情况
如果有两量汽车行驶在一条公路上行驶,会出现拥堵的情况,需要排队,这是load=2
cpu核数=12,当系统load=12时,系统cpu刚刚好在该机器cpu能处理的范围内
system.cpu.load[all,avg1]
监控该系统中,所有cpu的load负载
如果需要监控5,15分钟的负载,则依次增加 avg5,avg15的监控项即可
system.cpu.load[percpu,avg1]
监控每个cpu的 1分钟负载情况
CPU system.cpu.util[,idle]
cpu idle空闲利用率
其他配置方法如下
CPU iowait time system.cpu.util[,iowait]
CPU interrupt time system.cpu.util[,interrupt]
CPU steal time system.cpu.util[,steal]
CPU system time system.cpu.util[,system]
CPU softirq time system.cpu.util[,softirq]
CPU idle time system.cpu.util[,idle]
CPU nice time system.cpu.util[,nice]
CPU user time system.cpu.util[,user]
内存vm.memory.size[free]
free的内存
shared只支持6.x
网络监控 net.if.in[enp2s0f0,bytes]
聚合多个机器的所有信息
比如 把多个机器的cpu汇总统计并算出平均值
把多个机器的网络、内存、负载进行汇总展示
这里写一个例子,比如把几个机器的负载进行汇总展示
cpu-all-cpuload1-[mycluster]
grpsum["mycluster","system.cpu.load[all,avg1]",last]
又比如统计几个机器的cpu平均使用情况
grpavg[mycluster,"system.cpu.util[,idle]",last]
创建好监控项后,需要通过图形来进行展示这些信息
比如负载的聚合
比如cpu的图形展示
为了统一查看你可以在“聚合图形”处,新建聚合图形,把你想展示的信息放在一个页面进行展示。
最终呈现这样的效果
附其他配置监控项
其中 -[mycluster] 是我的群组名称,可以对这群组里的机器进行数据汇总
CPU:
cpu-all-cpuload1-[mycluster] grpsum["mycluster","system.cpu.load[all,avg1]",last]
cpu-all-cpuload5-[mycluster] grpsum["mycluster","system.cpu.load[all,avg5]",last]
cpu-all-cpuload15-[mycluster] grpsum["mycluster","system.cpu.load[all,avg15]",last]
cpu-all-idle-[mycluster] grpavg[mycluster,"system.cpu.util[,idle]",last]
cpu-all-interrupt-[mycluster] grpavg[mycluster,"system.cpu.util[,interrupt]",last]
cpu-all-iowait-[mycluster] grpavg[mycluster,"system.cpu.util[,iowait]",last]
cpu-all-nice-[mycluster] grpavg[mycluster,"system.cpu.util[,nice]",last]
cpu-all-softirq-[mycluster] grpavg[mycluster,"system.cpu.util[,softirq]",last]
cpu-all-steal-[mycluster] grpavg[mycluster,"system.cpu.util[,steal]",last]
cpu-all-system-[mycluster] grpavg[mycluster,"system.cpu.util[,system]",last]
cpu-all-user-[mycluster] grpavg[mycluster,"system.cpu.util[,user]",last]
MEM:
memory-all-available-[mycluster] grpsum["mycluster","vm.memory.size[available]",last,0]
memory-all-buffers-[mycluster] grpsum["mycluster","vm.memory.size[buffers]",last,0]
memory-all-cached-[mycluster] grpsum["mycluster","vm.memory.size[cached]",last,0]
NET:
Net-all-bond0-in grpsum["mycluster","net.if.in[bond0,bytes]",last]
Net-all-bond0-out grpsum["mycluster","net.if.out[bond0,bytes]",last]
net-all-in-enp2s0f0-[mycluster] grpsum["mycluster","net.if.in[enp2s0f0,bytes]",last,0] net-all-in-enp4s0f0-[mycluster] grpsum["mycluster","net.if.in[enp4s0f0,bytes]",last,0]
memory-all-free-[mycluster] grpsum["mycluster","vm.memory.size[free]",last,0]
memory-all-totalsize-[mycluster] grpsum["mycluster","vm.memory.size[total]",last,0]
NET:
Net-all-bond0-in grpsum["mycluster","net.if.in[bond0,bytes]",last]
Net-all-bond0-out grpsum["mycluster","net.if.out[bond0,bytes]",last]
net-all-in-enp2s0f0-[mycluster] grpsum["mycluster","net.if.in[enp2s0f0,bytes]",last,0] net-all-in-enp4s0f0-[mycluster] grpsum["mycluster","net.if.in[enp4s0f0,bytes]",last,0]