Zabbix通过SNMP监控多核CPU使用率时, 计算CPU平均使用率
环境:没有Agent,只能通过SNMP监控时,需要获取多核CPU的平均使用率。
ZABBIX的使用SNMP监控CPU使用率时,由于设备都是多核CPU,监控的都是单独某一核心的使用率,但单独某一核使用率过高触发告警实际意义不大。
所以写了一个“外部检查”查询CPU的每个核心的使用率,然后再计算该设备CPU的总体的一个使用率。
cd /usr/local/share/zabbix/externalscripts/ vim /usr/local/share/zabbix/externalscripts/sqlcpuload.sh
sqlcpuload.sh脚本内容如下
cd /home/zabbix/scripts/cpu/$1 || mkdir /home/zabbix/scripts/cpu/$1
cd /home/zabbix/scripts/cpu/$1
cat /home/zabbix/scripts/cpuload.sql | sed -e "s/CNGDCOP01/$1/g" > cpuloadT.sql
mysql -uzabbixapi -ppassword < cpuloadT.sql | awk '{ sum += $4; } END {print sum/(NR-1)}'
rm -rf cpuloadT.sql
cpuload.sql查询脚本如下(实际环境可以只保留需要的平均值一栏,理论上可以缩短一丢丢查询时间)
USE zabbix;
SELECT
FROM_UNIXTIME(trends_uint.clock,'%Y-%m-%d %H:00:00') AS `日期______ 时间____`,
trends_uint.value_min AS `最小值`,
trends_uint.value_avg AS `平均值`,
trends_uint.value_max AS `最大值`
FROM
trends_uint
WHERE trends_uint.itemid = ANY(
SELECT items.itemid FROM items WHERE items.hostid=
ANY(SELECT `hosts`.hostid FROM `hosts`WHERE `hosts`.`host` =
'CNGDCOP01'
)
AND items.key_ LIKE 'hrProcessorLoad[%' AND items.key_ NOT LIKE 'hrProcessorLoad[{%')
order by trends_uint.itemid,trends_uint.clock desc
上面查询的该监控项的趋势数据里的最新的平均值,为的是节约查询时间。

如果数量监控数据不大,但要求比较实时,可以把trends_uint换成history_uint,缩短数据更新时间。(当然如果环境允许直接安装agent就不用这么麻烦了)
下面是官网对趋势数据的说明

---------------------------------
运行结果如下

zabbix模板中添加监控项和触发器

-------最后测试OK

Zabbix通过SNMP监控多核CPU使用率时, 计算CPU平均使用率的更多相关文章
- 自学Zabbix11.1 Zabbix 配置SNMP监控
点击返回:自学Zabbix之路 点击返回:自学Zabbix4.0之路 点击返回:自学zabbix集锦 自学Zabbix11.1 Zabbix 配置SNMP监控 1. 概述 zabbix采集数据方式: ...
- zabbix通过snmp监控网络设备
首先需要在zabbix的server端或proxy端安装snmpd服务 安装: yum -y install net-snmp* 查看版本: [root@Check3 ~]# snmpd -v NET ...
- zabbix通过snmp监控linux主机
1.安装net-snmp [root@db01 ~]# yum install -y net-snmp 2.修改配置文件 [root@db01 ~]# vim /etc/snmp/snmpd.conf ...
- zabbix通过snmp监控windows主机
1.开启Windows的snmp功能 2.配置snmp服务 设置snmp服务社区名称及允许的主机,设置完成后重启snmp服务 3.在zabbix server上测试 测试需要使用命令snmpwalk, ...
- zabbix通过SNMP监控服务器硬件及构建触发器
公司的服务器没装系统无法使用IPMI协议来监控服务器硬件信息,所以我们使用SNMP来获取,下面介绍如何通过SNMP监控服务器硬件信息. 1.HP服务器进入iLO开启SNMP协议. 2.查看服务器温度信 ...
- 025.Zabbix之SNMP监控
一 SNMP介绍及配置 1.1 SNMP介绍参考其他笔记 1.2 SNMP配置 [SW1]int vlan 1 [SW1-Vlanif1]ip address 172.24.8.13 24 [SW1- ...
- zabbix 配置SNMP监控
什么是SNMP? 简单网络管理协议(SNMP),由一组网络管理的标准组成,包含一个应用层协议(application layer protocol).数据库模型(database schema)和一组 ...
- 技巧:结合Zabbix与SNMP监控嵌入式设备
在如何利用Zabbix监控网络设备三篇文章的前两篇中,我们介绍了如何通过Zabbix代理监控网络设备.但有些设备无法安装Zabbix代理,需要采用其他方法监控.需要考虑无法安装软件的嵌入式设备或应用程 ...
- 【Zabbix】大规模监控误报发生时的处理方案
今天遇到了这样一件事..Zabbix一直在用的数据库突然间崩溃,无法连接了.在down掉的那一时刻开始,zabbix向管理员报了警.然后随之而来的是铺天盖地的所有主机zabbix agent无法连接的 ...
随机推荐
- Html中<Hr>标签、样式的使用和自定义设置
<Hr>标签中样式的使用和自定义设置... -------------------- ====================== 已经测试过了可以用的Hr样式: <!--这是一部分 ...
- Springboot+resteasy定时任务
定时任务 需求:按每日统计点赞数.评论数.热度的增加量(不是现有量) 1.每天零点执行:首先遍历出user的统计字段 然后插入到新创建的表中. 2.每天一点执行:根据时间段将两表的数据相减创建增量字段 ...
- 浅谈服务器对SEO的影响,该如何选择服务器?
对于SEO,很多人想的都是怎么做好网站的内部优化,做好外部推广.其实SEO没什么技术含量,到网上搜别人的心得看,千篇一律,都是翻来覆去的说一样的东西,就像吃不同人做的馒头,吃来吃去就是一个味道.笔者经 ...
- JavaScript 30 - 1 学习笔记
学习JavaScirpt30的笔记! ...虽然英语不是很好,但是跟着来还是学到了一些东西. 1-------> JavaScirpt Drum Kit 功能是这样的 ,敲击键盘上面的按钮, ...
- jmeter系列-------脚本编写格式
1.通常会将用户和服务器的一次交互(页面访问或者提交)请求放在一个简单控制器或者事务控制器,例如微课首页里面包含4个接口都放到简单控制器里 或者一个提交可能,会触发3个接口,那么这3个接口放到一个简单 ...
- MySQL(十一)之触发器
上一篇介绍的是比较简单的视图,其实用起来是相对比较简单的,以后有什么更多的关于视图的用法,到时候在自己补充.接下来让我们一起了解一下触发器的使用! 一.触发器概述 1.1.什么是触发器 触发器(Tri ...
- java 比较几种常见循环方式的优劣
详见:http://blog.yemou.net/article/query/info/tytfjhfascvhzxcyt224 我们常用for循环,foeach,while等作为循环list或者数组 ...
- distinct和group by 去掉重复数据分析
详见:http://blog.yemou.net/article/query/info/tytfjhfascvhzxcytp40 用distinct关键字只能过滤查询字段中所有记录相同的(记录集相同) ...
- FTP的主动和被动模式详解
详见:http://blog.yemou.net/article/query/info/tytfjhfascvhzxcytp25 主动模式FTP与被动模式FTP该如何选择 一.主动模式的实现与特点. ...
- §--------算法分界线--------§
如题 As said in the title~ 计算机的cpu计算从根源上由最基本的逻辑电路(晶体管)组成,由此衍生出最基本的数值运算:四则运算.而此后所有的高级算法都是建立在这个基本计算原理(逻辑 ...