前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Zabbix 随笔:snmptrap 探索(上)

Zabbix 随笔:snmptrap 探索(上)

作者头像
IT小白Kasar
发布2022-02-16 18:45:07
1.7K0
发布2022-02-16 18:45:07
举报
文章被收录于专栏:个人技术随笔个人技术随笔

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

正文

本文环境

  • Zabbix 6.0 beta2
  • snmptt 1.4.2(目前最新版本为1.5.1 beta)
  • 网络设备为华为CE 6855
  • CentOS 8.5.2109

安装需求软件

代码语言:javascript
复制
dnf -y install net-snmp net-snmp-utils net-snmp-perl

启动 snmptrapd

代码语言:javascript
复制
systemctl start snmptrapd 
systemctl enable snmptrapd

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

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

代码语言:javascript
复制
snmp-agent target-host trap address udp-domain 10.0.0.73 params  securityname huawei@123 v2c

调整 snmptrapd 配置

代码语言:javascript
复制
vi /etc/snmp/snmptrapd.conf
authCommunity log,execute,net huawei@123

重启 snmptrapd 服务

代码语言:javascript
复制
service snmptrapd restart
这里团体字需要写对
这里团体字需要写对

效果

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

代码语言:javascript
复制
dnf -y install rsyslog
service restart rsyslog
tail -f /var/log/messages

安装 snmptt

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

代码语言:javascript
复制
yum -y install epel-release
yum -y install snmptt

CentOS 7 不进行演示,文章全文按照 CentOS 8 进行

代码语言:javascript
复制
wget https://nchc.dl.sourceforge.net/project/snmptt/snmptt/snmptt_1.4.2/snmptt_1.4.2.tgz --no-check-certificate
####解压该包####
tar -zxvf snmptt_1.4.2.tgz
####复制相关文件至指定文件夹
cp snmptt_1.4.2/snmptt /usr/sbin/snmptt
cp snmptt_1.4.2/snmptthandler /usr/sbin/snmptthandler
cp snmptt_1.4.2/snmptt.ini /etc/snmp/snmptt.ini
cp snmptt_1.4.2/examples/snmptt.conf.generic /etc/snmp/snmptt.conf
cp snmptt_1.4.2/snmptt-init.d /etc/rc.d/init.d/snmptt
cp snmptt_1.4.2/snmptt.logrotate /etc/logrotate.d/snmptt
####解决依赖环境问题####
dnf -y install perl-CPAN perl-Text-Balanced perl-Sys-Syslog 
perl -MCPAN -e 'install Config::IniFiles'
####创建snmptt相关用户####
groupadd snmptt
useradd  -c "SNMP Trap Translator" -g snmptt  -d /var/spool/snmptt  snmptt -s /sbin/nologin

修改 snmptrapd 配置文件

代码语言:javascript
复制
vi /etc/snmp/snmptrapd.conf
traphandle default /usr/sbin/snmptthandler
添加接收器
添加接收器

修改 snmptt 配置文件

需要修改以下三处

代码语言:javascript
复制
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 开启 snmptrapd

代码语言:javascript
复制
vi /etc/zabbix/zabbix_server.conf

重启相关服务

代码语言:javascript
复制
service snmptt restart
service snmptrapd restart
service zabbix-server restart

创建 log 文件

代码语言:javascript
复制
mkdir /var/log/snmptt
touch /var/log/snmptt/snmptt.log
chown snmptt:snmptt /var/log/snmptt/snmptt.log

配置数据处理格式

1、添加数据格式

代码语言:javascript
复制
vim /etc/snmp/snmptt.conf
EVENT general .* "General event" Normal
FORMAT ZBXTRAP $aA $ar

2、修改 Zabbix Server 配置文件,这里一定要调整 snmptt 的日志文件路径,否则后面 Zabbix 前端将无法收到 trap 信息。

代码语言:javascript
复制
vim /etc/zabbix/zabbix_server.conf

测试

依然是登陆设备测试

前端添加监控项

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

添加 Generic SNMP 模板
添加 Generic SNMP 模板
snmptrap 监控项
snmptrap 监控项
snmptrap 取值
snmptrap 取值

写在最后

snmptrap 最大的好处就是由设备推送至 Zabbix Server,保证了及时性,那么下期我会详细来讲实战中该怎么使用。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022-01-22 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 正文
    • 本文环境
      • 安装需求软件
        • 启动 snmptrapd
          • 交换机侧配置(以华为交换机为例)
            • 调整 snmptrapd 配置
              • 效果
                • 安装 snmptt
                  • 修改 snmptt 配置文件
                    • Zabbix Server 开启 snmptrapd
                      • 重启相关服务
                        • 创建 log 文件
                          • 配置数据处理格式
                            • 测试
                              • 前端添加监控项
                              • 写在最后
                              领券
                              问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档