Python 调用snmp自定义OID实现监控 1.安装netsnmp yum install net-snmp net-snmp-devel net-snmp-utils net-snmp-python -y 其中 net-snmp-python 是snmp支持python的模块 启动snmp服务 /etc/init.d/snmpd restart 加入开机启动 Chkconfig snmpd on 35 首先查看snmp配置文件,实现自定义OID捕获linux系统信息。 打开系统自带监控硬盘 负载 内存等的OID 还可以自己编写脚本通过定义oid来执行监控 使用方法 snmpwalk -v2c -c public 192.168.120.131 .1.3.6.1.4.1.2021.50 红色是oid python 使用方法 import netsnmp print netsnmp.snmpwalk(netsnmp.VarList(netsnmp.Varbind('.1.3.6.1.4.1.2021.10')),Version = 1,DestHost='localhost',Community='public') 排错 1、[iyunv@JR-ZR01-TEST ~]# snmpwalk -v1 -c public 192.168.76.250 .1.3.6.1.4.1.4413.4.1 End of MIB 参考:这个错误一般是在 snmp.conf 里view 里面没有允许该OID ,甚至做了显式拒绝,解决办法是允许该 OID. 加入: view systemview included .1 2. exec .1.3.6.1.4.1.2021.51 ps /bin/ps 进行snmpwalk查询: # snmpwalk -v2c -cpublic 192.168.1.21 .1.3.6.1.4.1.2021.51 UCD-SNMP-MIB::ucdavis.51 = No Such Object available on this agent at this OID 可以发现是找不到.1.3.6.1.4.1.2021.51这个OID的。 这是什么原因呢? 如果出现这种情况,请先查看一下snmpd的版本。 # snmpd -v NET-SNMP version: 5.5 上面的配置方式是旧版的配置,新版本已经不用此格式了。新的格式是: extend .1.3.6.1.4.1.2021.51 ps /bin/ps 最后附上一付修改过的完整配置
|