Molet

Zabbix5由浅入深之snmptrap探索(上)

Molet 运维技术 2022-11-13 404浏览 0

Zabbix5由浅入深之snmptrap探索(上)

网络领域的监控离不开SNMP协议,但是随着规模的增大以及对监控要求越来越高,对监控的性能和告警的及时性也随之增高,snmptrap作为主动推送的模式,而且及时性相比于snmp方式要高得多,snmtrap文章一共有两篇,第一篇是如何使用snmptrap推送至Zabbix,第二篇详细讲实战怎么使用。

正文

环境

  • Zabbix版本:5.2
  • snmptt版本:1.4.2(目前最新为1.5.1beta)
  • 网络设备:华为CE6855
  • 系统版本:CentOS 8.3

安装必备条件

dnf-yinstallnet-snmpnet-snmp-utilsnet-snmp-perl

启动snmptrapd

systemctlstartsnmtrapd&&systemctlenablesnmtrapd

交换机配置(以华为交换机为例)

其他的品牌设备请咨询查询官方文档或其他教程

snmp-agenttarget-hosttrapaddressudp-domain10.0.0.71paramssecuritynamehuawei@123v2c

调整snmptrapd配置

vi/etc/snmp/snmptrapd.conf
authCommunitylog,execute,nethuawei@123
####重启snmptrapd服务
servicesnmptrapdrestart

Zabbix5由浅入深之snmptrap探索(上)

效果

由于CentOS 8最小化安装版本不自带/var/log/message,所以需要安装相关软件包,此时模拟登录交换机,同时查看日志。

dnf-yinstallrsyslog
servicerestartrsyslog
tail-f/var/log/messages

Zabbix5由浅入深之snmptrap探索(上)

交换机登录trap信息

安装snmptt

首先我们要搞清楚为什么装这个软件,Zabbix在实现snmptrap有两个条件,第一个是能收集和记录snmptrap信息的程序,这个程序就是snmptrapd,第二个是需要把这些信息发送到Zabbix server,这个软件是snmptt,当然也可以是perl脚本,本篇文章以snmptt为例

CentOS 8安装步骤比较复杂,如果是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/snmptt
cpsnmptt_1.4.2/snmptthandler/usr/sbin/snmptthandler
cpsnmptt_1.4.2/snmptt.ini/etc/snmp/snmptt.ini
cpsnmptt_1.4.2/examples/snmptt.conf.generic/etc/snmp/snmptt.conf
cpsnmptt_1.4.2/snmptt-init.d/etc/rc.d/init.d/snmptt
cpsnmptt_1.4.2/snmptt.logrotate/etc/logrotate.d/snmptt
####解决依赖环境问题####
dnf-yinstallperl-CPANperl-Text-Balancedperl-Sys-Syslog
perl-MCPAN-e'installConfig::IniFiles'
####创建snmptt相关用户####
groupaddsnmptt
useradd-c"SNMPTrapTranslator"-gsnmptt-d/var/spool/snmpttsnmptt-s/sbin/nologin

修改snmptrapd配置文件

vi/etc/snmp/snmptrapd.conf
traphandledefault/usr/sbin/snmptthandler

Zabbix5由浅入深之snmptrap探索(上)

指定snmptt为接收器

修改snmptt配置文件

需要修改以下三处

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

translate_log_trap_oid=2#0:数字形式显示OID,1:显示OID名称,2:显示OID所属模块名及其名称

Zabbix Server开启snmptrap

vi/etc/zabbix/zabbix_server.conf

Zabbix5由浅入深之snmptrap探索(上)

重启相关服务

servicesnmpttrestart
servicesnmptrapdrestart
servicezabbix-serverrestart

创建log文件

mkdir/var/log/snmptt
touch/var/log/snmptt/snmptt.log
chownsnmptt:snmptt

配置数据处理格式

这里做完后记得重启snmptt服务

vim/etc/snmp/snmptt.conf
EVENTgeneral.*"Generalevent"Normal
FORMATZBXTRAP$aA$ar

Zabbix5由浅入深之snmptrap探索(上)

测试

依然是登录设备测试

Zabbix5由浅入深之snmptrap探索(上)

前端添加监控项

此处使用的模板为Generic SNMP模板,自带snmptrap监控项,仅仅测试

Zabbix5由浅入深之snmptrap探索(上)

Zabbix5由浅入深之snmptrap探索(上)

此时已经可以看到相关数据了

继续浏览有关 系统运维 的文章
发表评论