zabbix添加snmp监控项_SNMP协议

2022-09-24 10:32:48 浏览数 (4)

大家好,又见面了,我是你们的朋友全栈君。

目录

一、SNMPTrap消息处理流程

二、snmptt

1、SNMPTrap、snmptt安装

2、配置文件修改

3、SNMPTrapFile文件创建

4、监控项创建

三、perl脚本

1、SNMPTrap安装

2、从zabbix源码包中拷贝perl脚本到/usr/bin/目录下,并增加执行权限

3、修改snmptrapd.conf配置

4、修改zabbix配置


调试环境:Centos7

SNMPTrap主要用于在设备发生故障时,向预先配置好的主机发送通知消息。

zabbix对SNMPTrap数据的监控,是通过对日志文件的监控实现。

日志文件的更新有snmptrapd的消息处理程序完成。

本文介绍两种snmptrap消息处理方式的环境搭建:snmptt, perl脚本

一、SNMPTrap消息处理流程

1、监控主机发送SNMPTrap信息到snmptrapd服务器;

2、snmptrapd将接收到的SNMPTrap信息发送给消息处理程序;

3、消息处理程序将处理后的信息导入到日志文件;

4、zabbix服务器的snmptrapper进程读取日志文件,解析后传递给对应的监控对象。

二、snmptt

1、SNMPTrap、snmptt安装

yum install -y net-snmp net-snmp-libs net-snmp-utils net-snmp-perl mrtg snmptt

snmptt安装时可能会提示perl错误,可以在https://pkgs.org/中查找安装epel-relase进行安装。

2、配置文件修改

/etc/snmp/snmptrapd.conf

authCommunity log,execute,net public

traphandle default /usr/sbin/snmptthandler

/etc/snmp/snmptt.conf

EVENT test .1.3.6.1.4.1.2345 “just for test” Normal

FORMAT ZBXTRAP aA ar

EVENT general .* “General event” Normal

FORMAT ZBXTRAP aA ar

注:后续若要针对特定oid处理,通过脚本更新。”ZBXTRAP”必须存在,否则zabbix提取数据失败。

/etc/snmp/snmptt.ini

date_time_format= %Y/%m/%d %H:%M:%S

#### 设置时间格式,读取的SNMPTrap信息之后写入SNMPTrapperFile里的时间格式,也是ZabbixTrapper读取时的时间格式

syslog_enable = 0

#### 默认值为1,设置成0,表示不将日志记录入syslog,不过该参数为可选参数,可直接默认值即可。

log_file = /var/log/snmptt/snmptt.log

#### 这里指定了SNMPTrapperFile,默认/var/log/snmptt/snmptt.log,无需更改。

[TrapFiles]

snmptt_conf_files = <<END

/etc/snmp/snmptt.conf

END

#### 这一段代码记录了使用那些规则文件处理SNMPTrap信息,默认值如上,简单处理中无需更改该配置。

zabbix_server.conf

StartSNMPTrapper=1

SNMPTrapperFile=/var/log/snmptt/snmptt.log

3、SNMPTrapFile文件创建

touch /var/log/snmptt/snmptt.log

chown snmptt:snmptt /var/log/snmptt/snmptt.log

4、监控项创建

三、perl脚本

1、SNMPTrap安装

yum install -y net-snmp net-snmp-libs net-snmp-utils net-snmp-perl mrtg

2、从zabbix源码包中拷贝perl脚本到/usr/bin/目录下,并增加执行权限

cp zabbix-3.4.7/misc/snmptrap/zabbix_trap_receiver.pl /usr/bin/

chmod a x /usr/bin/zabbix_trap_receiver.pl

3、修改snmptrapd.conf配置

authCommunity log,execute,net public

perl do “/usr/bin/zabbix_trap_receiver.pl”;

4、修改zabbix配置

StartSNMPTrapper=1

SNMPTrapperFile=/tmp/zabbix_traps.tmp

注SNMPTrapFile目录和zabbix_trap_receiver.pl中日志目录一致。

snmptrap测试发包:

snmptrap -v 2c -c public 192.168.1.171 ” .1.3.6.1.4.1.2345 SNMPv2-MIB::sysLocation.0 s “for test”

snmptrap -v 2c -c public 192.168.1.171 ” .1.3.6.1.2.1.1.1.0 .1.3.6.1.2.1.1.1.0 s “eth1”

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/171325.html原文链接:https://javaforall.cn

1 人点赞