3 SNMP 网关

概述

Zabbix SNMP gateway 是 snmpd 的一个 AgentX 扩展,同时支持 SNMP 轮询和 trap。

使用 Zabbix SNMP gateway,可以通过 SNMP 协议获取:

  • 触发器数据;
  • 故障触发器数据;
  • 主机组状态(每个组中按触发器状态统计的触发器数量)

数据通过 OID 获取,OID 由一个通用基础部分和一个特定后缀组合而成。通用的 base 在 SNMP gateway 的配置文件中设置,例如:

  • BaseOID=1.3.6.1.4.1.3043.7.55 - 用于任意触发器数据;
  • ProblemBaseOID=1.3.6.1.4.1.3047.7.55 - 用于故障触发器数据;
  • BaseOID=1.3.6.1.4.1.3046.7.55 - 用于主机组状态。

OID 的 suffix 在前端中通过主机触发器配置为一个 tag 来设置(例如,OIDSuffix:3)。

在这种情况下,该触发器的所有信息都可通过 OID=1.3.6.1.4.1.3043.7.55.X.3 获取。这里的 “X” 表示触发器数据字段编号(即 1 - 后缀,2 - ID,3 - 表达式,4 - 描述,等等)。

有关更详细的说明和配置文件示例,请参见 SNMP gateway readme file

安装和设置

有关以下内容的说明,请参阅 SNMP gateway 的 readme 文件:

  • 安装和配置 snmpd;
  • 启用 AgentX 支持;
  • 配置 Zabbix SNMP gateway;
  • 为触发器状态更改配置 SNMP trap。

获取数据

正确完成所有设置后,您可以使用 snmpwalksnmpget 命令来获取数据:

[user@localhost ~]# snmpget -v2c -c public 127.0.0.1 1.3.6.1.4.1.3043.7.55.2.3
SNMPv2-SMI::enterprises.3043.7.55.2.3 = INTEGER: 15247
[user@localhost ~]# snmpwalk -v2c -c public 127.0.0.1 1.3.6.1.4.1.3043.7.55
SNMPv2-SMI::enterprises.3043.7.55.1.1 = INTEGER: 1
SNMPv2-SMI::enterprises.3043.7.55.1.3 = INTEGER: 3
SNMPv2-SMI::enterprises.3043.7.55.1.4 = INTEGER: 4
SNMPv2-SMI::enterprises.3043.7.55.1.5 = INTEGER: 5
SNMPv2-SMI::enterprises.3043.7.55.1.6 = INTEGER: 6
SNMPv2-SMI::enterprises.3043.7.55.1.10 = INTEGER: 10
SNMPv2-SMI::enterprises.3043.7.55.2.1 = INTEGER: 15367
SNMPv2-SMI::enterprises.3043.7.55.2.3 = INTEGER: 15247
SNMPv2-SMI::enterprises.3043.7.55.2.4 = INTEGER: 15365
SNMPv2-SMI::enterprises.3043.7.55.2.5 = INTEGER: 15366
SNMPv2-SMI::enterprises.3043.7.55.2.6 = INTEGER: 13493
SNMPv2-SMI::enterprises.3043.7.55.2.10 = INTEGER: 13503
...
过滤选项

您可以在 SNMP 网关配置中限制问题触发器信息:

  • 按严重性限制(默认 ProblemMinSeverity=-1
  • 通过隐藏已确认的问题进行限制(默认 ProblemHideAck=false

您可以在 SNMP 网关配置中限制每个主机组的问题计数:

  • 按未知状态的触发器进行限制(默认 CountUnknown=false
  • 按具有已确认/未确认/全部问题的触发器进行限制(默认 CountAcknowledgeStatus=all