为什么要自定义OID?

前面的文章已经讲过zabbix如何使用snmp监控服务器,但是他有一个很明显的局限性:只能监控定义好的OID项目

假如我们想知道nginx进程是否在运行?在没有zabbix agent的情况下,我们该怎么做呢?

接下来就用这个实力来讲解自定义OID

确认SNMP OID是否存在

首先我们需要找一个oid是否被系统暂用,比如.1.3.6.1.4.1.2021.5000

 
1
2
# snmpwalk -v 2c -c public  10.0.91.10  .1.3.6.1.4.1.2021.5000
OID

(39)zabbix snmp自定义OID nginx监控实例

 

如上说明不存在

增加自定SNMP OID

编写脚本获取nginx进程数

 
1
2
3
4
# cat /root/scripts/check_nginx.sh
#!/bin/bash
`
nginxNum

 

修改配置

 
1
2
# vim /etc/snmp/snmpd.conf
// 增加这一行

重启10.0.91.10主机上的snmpd服务

systemctl  restart snmpd

systemctl  status  snmpd

获取snmp信息

以下获取自定义的oid的所有数据,第一行便是我们需要获取的数据,那么在zabbix中写oid .1.3.6.1.4.1.2021.5000.4.1.2.11.99.104.101.99.107.95.110.103.105.110.120.1

 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
# snmpwalk -v 1 -c public 10.0.91.10  .1.3.6.1.4.1.2021.5000
1
5
1
1
4
1
1
0

 (39)zabbix snmp自定义OID nginx监控实例

 

创建snmp item

 (39)zabbix snmp自定义OID nginx监控实例

查看数据:

(39)zabbix snmp自定义OID nginx监控实例

 

相关文章: