SNMPTrap监控主要用于设备发生故障时的主动通知的监控。以下简单记录下Zabbix的SNMPTrap的配置方法。
一、SNMPTrap监控的处理流程说明
1.监控对象发送SNMPTrap信息到snmptrapd(Net-SNMP)服务器,
2.snmptrapd服务器将接收到的SNMPTrap信息发送给SNMPTT(或者Perl trap receiver),
3.NMPTT(或者Perl trap receiver)将按照指定的数据格式将SNMPTrap信息写入SNMPTrapperFile,
4.Zabbix服务器的snmptrapper进程将读取SNMPTrapperFile的内容,对其进行解析,将值传递给对应的监控对象,并保存数据到DB。
※流程参考下图(使用SNMPTT的地方均可使用Perl trap seceiver脚本代替):
二、Linux的Zabbix服务器上的SNMPTrap的配置设定
环境说明:
ZabbixServer的环境是CentOS release 6.5 (Final),SNMPTrapd,SNMPTT等全部在ZabbixServer上进行设置。
1.首先我们需要在ZabbixServer上安装SNMPTrapd(即NET-SNMP)来接收监控对象发送来的SNMPTrap信息。
1)首先安装SNMPTrapd(NET-SNMP),
# yum install -y net-snmp net-snmp-utils net-snmp-perl
# vim /etc/snmp/snmptrapd.conf
添加如下内容:
authCommunity log,execute,netpublic
#### 配置community名称,这里设置为public, 也进行用认证:
disableAuthorization yes
traphandle default /usr/sbin/snmptthandler
#### 配置SNMPTrap信息的处理器,这设置为SNMPTT,也可以设置成其他Perl脚本处理,比如
perl do "/usr/local/zabbix/bin/zabbix_trap_receiver.pl "
3)设置SNMPTrapd的启动脚本的选项
# vim /etc/init.d/snmptrapd