当前位置: 首页 > 科技观察

Zabbix5的snmptrap由浅入深探索(下)

时间:2023-03-12 11:40:50 科技观察

网络领域的监控离不开SNMP协议,但是随着规模的增大,对监控的要求也越来越高,监控的性能和告警的及时性也改变。至于增加,snmtrap是一种主动推送的方式,时效性比snmp高很多。有两篇snmtrap文章。第一篇是如何使用snmptrap推送到Zabbix,第二篇是实战中如何使用。文本环境Zabbix版本:5.2snmptt版本:1.4.2(最新为1.5.1beta)网络设备:华为CE6855系统版本:CentOS8.3安装前提dnf-yinstallnet-snmpnet-snmp-utilsnet-snmp-perlstartsnmptrapdsystemctlstartsnmtrapd&&systemctlenablesnmtrapdswitchConfigure(以华为交换机为例)其他品牌设备请查阅官方文档或其他教程123####重启snmptrapd服务servicesnmptrapdrestart效果由于CentOS8最小安装版没有自带/var/log/message,需要安装相关的软件包。此时模拟登录交换机,同时查看日志。dnf-yinstallrsyslogservicerestartrsyslogtail-f/var/log/messagesswitchlogintrapinformationtoinstallsnmptt首先我们要搞清楚为什么要安装这个软件,Zabbix实现snmptrap有两个条件,第一个是可以收集记录snmptrap的程序信息,这个程序是snmptrapd,二是发送信息到Zabbixserver,这个软件是snmptt,当然也可以是perl脚本,本文以snmptt为例,CentOS8的安装步骤是比较复杂,如果是centos7(需要epel源)可以直接安装####下载snmptt包####wgethttps://nchc.dl.sourceforge.net/project/snmptt/snmptt/snmptt_1.4.2/snmptt_1.4.2.tgz--no-check-certificate####解压包####tar-zxvfsnmptt_1.4.2.tgz####将相关文件复制到指定文件夹cpsnmptt_1.4.2/snmptt/usr/sbin/snmpttcpsnmptt_1.4.2/snmptthandler/usr/sbin/snmptthandlercpsnmptt_1.4.2/snmptt.ini/etc/snmp/snmptt.inicpsnmptt_1.4.2/examples/snmptt.conf.generic/etc/snmp/snmptt.confcpsnmptt_1.4.2/snmptt-init.d/etc/rc.d/init.d/snmpttcpsnmptt_1.4.2/snmptt.logrotate/etc/logrotate.d/snmptt####解决依赖环境问题####dnf-yinstallperl-CPANperl-Text-Balancedperl-Sys-Syslogperl-MCPAN-e'installConfig::IniFiles'####创建snmptt相关用户####groupaddsnmpttuser添加-c"SNMPTrapTranslator"-gsnmptt-d/var/spool/snmpttsnmptt-s/sbin/nologin修改snmptrapd配置文件vi/etc/snmp/snmptrapd.conftraphandledefault/usr/sbin/snmptthandler指定snmpt为receiver修改snmpt配置文件需要修改以下三个地方date_time_format=%Y/%m/%d%H:%M:%Snet_snmp_perl_enable=1translate_log_trap_oid=2#0:以数字形式显示OID,1:显示OID名称,2:显示OID所属模块的名称及其名称ZabbixServerenablesnmptrapvi/etc/zabbix/zabbix_server.conf重启相关服务servicesnmpttrestartservicesnmptrapdrestartservicezabbix-serverrestartcreatelogfilemkdir/var/log/snmptttouch/var/log/snmptt/snmptt.logchownsnmptt:snmptt配置数据处理格式记得重启snmptt服务vim/etc/snmp/snmptt.confEVENTgeneral.*"TheGeneralevent"NormalFORMATZBXTRAP$aA$ar测试依然是登录设备测试前端添加监控项。这里使用的模板是GenericSNMP模板,自带snmptrap监控项。此时只有测试才能看到相关数据。把最大的snmptrap写在最后,好处是从设备推送到ZabbixServer,保证了时效性。那么我会在下一期详细讲解如何在实战中使用,谢谢