在网管系统中,被管理设备中的代理可以在任何时候向网络管理工作站报告错误情况,例如预制定阈值越界程度等等。代理并不需要等到管理工作站为获得这些错误情况而轮询他的时候才会报告,这些错误情况就是众所周知的 SNMP trap (陷阱)。
使用SNMP进行网络管理需要下面几个重要部分:管理基站,管理代理,管理信息库和网络管理工具。
服务端IP:10.10.200.201
客户端IP:10.10.200.222
配置zabbix_proxy或zabbix_server
配置防火墙,snmptrap的端口为 udp 162:
# iptables -A INPUT -p udp -m udp --dport 162 -j ACCEPT # firewalld firewall-cmd --add-port=162/udp --permanent firewall-cmd --reload
获取当前zabbix版本的trapper脚本:
# 获取并解压zabbix wget https://cdn.zabbix.com/zabbix/sources/stable/4.0/zabbix-4.0.27.tar.gz tar zxvf zabbix-4.0.27.tar.gz # 复制并给pl文件财执行权限 cp zabbix-4.0.27/misc/snmptrap/zabbix_trap_receiver.pl /opt/zabbix/scripts/ chmod a+x /opt/zabbix/scripts/zabbix_trap_receiver.pl
查看当前配置中的traps文件位置:
# egrep -v "^$|^#" zabbix_trap_receiver.pl | grep -i snmptrap # 记住配置中的文件路径 $SNMPTrapperFile = '/tmp/zabbix_traps.tmp';
修改/etc/zabbix/zabbix_proxy.conf或者/etc/zabbix/zabbix_server.conf:
SNMPTrapperFile=/tmp/zabbix_traps.tmp # 根据SNMP客户端数量配置Trapper StartSNMPTrapper=1
重启zabbix-server或zabbix-proxy:
systemctl restart zabbix-proxy # systemctl restart zabbix-server
服务端部署snmp
安装并配置snmp:
yum -y install net-snmp-utils net-snmp-perl net-snmp # Ubuntu # apt install snmp, snmp-mibs-downloader, snmptrapd
编辑snmp配置文件/etc/snmp/snmptrapd.conf:
# 根据实际情况加入相应的community值 # 以下代表接收community为public|storage_public|emc_storage|hds_storage的trap消息 authCommunity execute public authCommunity execute storage_public authCommunity execute emc_storage authCommunity execute hds_storage # 接收到以上community的任一消息时执行脚本 perl do "/opt/zabbix/scripts/zabbix_trap_receiver.pl"
启动snmp:
systemctl start snmpd snmptrapd systemctl ebable snmpd snmptrapd # 测试snmptrap安装结果(根据实际情况修改OID等) snmptrap -v 2c -c public 127.0.0.1 "111" .1.3.6.1.4.1.2021.251.1 .1.3.6.1.6.3.1.1.5.1 s "--------------"
测试端口连接:
# 安装udp测试工具 # yum -y install nc nmap #测试服务端的udp连接 nc -vzu 10.10.200.201 162 #测试客户端的udp连接 nc -vzu 10.10.200.222 161
返回以下数据表示能正常连接:
Ncat: Version 7.50 ( https://nmap.org/ncat ) Ncat: Connected to 10.10.200.201:162. Ncat: UDP packet sent successfully Ncat: 1 bytes sent, 0 bytes received in 2.02 seconds.
查看Trap数据:
cat /tmp/zabbix_traps.tmp
配置zabbix监控模板
新增模板和监控项,关键选项及值如下,键值由客户端提供,其他信息自行发挥:
选项 | 值/可选值 |
类型 | SNMP trap |
键值 | snmptrap["IF-MIB"] snmptrap.fallback |
信息类型 | 日志(Log) |
根据需求配置触发器(略)。
配置客户端SNMPTrap(略)。
原创文章禁止转载:技术学堂 » Zabbix使用手册:SNMPTrap主动告警