使用OpenNMS监控SNMP,无法查看MIB数据

时间:2016-03-17 15:46:48

标签: snmp opennms

我有一个带有oids和事件的MIB。 MIB涉及的设备是在线的。 OpenNMS查看并收集有关设备上的接口以及它正在运行的Linux变体的信息。

但它没有看到其他的oids(或者我无法找到/绘制它们)。

gui报告轮询状态(托管)和包(uti_p)。 uti_p包是

<package name="uti_p">
  <filter>IPADDR != '0.0.0.0'</filter>
  <include-range begin="10.19.0.200" end="10.19.0.210" />
  <rrd step="300">
    <rra>RRA:AVERAGE:0.5:1:2016</rra>
    <rra>RRA:AVERAGE:0.5:12:1488</rra>
    <rra>RRA:AVERAGE:0.5:288:366</rra>
    <rra>RRA:MAX:0.5:288:366</rra>
    <rra>RRA:MIN:0.5:288:366</rra>
  </rrd>
  <service name="ICMP" interval="300000" user-defined="false" status="on">
    <parameter key="retry" value="2" />
    <parameter key="timeout" value="3000" />
    <parameter key="rrd-repository" value="/var/lib/opennms/rrd/response" />
    <parameter key="rrd-base-name" value="icmp" />
    <parameter key="ds-name" value="icmp" />
  </service>
  <service name="SNMP" interval="300000" user-defined="false" status="on">
    <parameter key="retry" value="2"/>
    <parameter key="timeout" value="3000"/>
    <parameter key="port" value="161"/>
    <parameter key="oid" value=".1.3.6.1.4.1.nnnn"/>
  </service>
  <downtime interval="30000" begin="0" end="300000" />
  <downtime interval="300000" begin="300000" end="43200000" />
  <downtime interval="600000" begin="43200000" end="432000000" />
  <downtime begin="432000000" delete="true" />
</package>

我有一个collectd-configuration

<package name="uti_p">
    <filter>IPADDR != '0.0.0.0'</filter>
    <include-range begin="10.19.0.200" end="10.19.0.210"/>
    <service name="SNMP" interval="30000" user-defined="false" status="on">
        <parameter key="collection" value="HsmLan"/>
        <parameter key="port" value="161"/>
        <parameter key="retry" value="3"/>
        <parameter key="timeout" value="3000"/>
        <parameter key="thresholding-enabled" value="true"/>
    </service>
</package>

... / rrd / snmp / {node}目录没有显示我正在寻找的各种oid的任何数据集合。

回应评论:

$ snmpwalk -v 2c -c FIPS14023 10.19.0.204 iso.3.6.1.4.1.nnnn
...
iso.3.6.1.4.1.nnnn.1.1.10.0 = INTEGER: 29
iso.3.6.1.4.1.nnnn.1.1.11.0 = STRING: "29.0"
...

即,它从MIB返回预期的数据。

OpenNMS中设置的社区是FIPS14023,自动发现过程找到该节点。

Node    Hsm.204
Interface   10.19.0.204
Polling Status  Managed
Polling Package     uti_p
Monitor Class   org.opennms.netmgt.poller.monitors.SnmpMonitor
Service Parameters
oid     .1.3.6.1.4.1.nnnn

设备类的申请名称是正确的。

我只能找到上面的字符串&#34; 29.0&#34;应该出现。据我了解,数据应该收集到RRD db文件中,但节点数据库ID永远不会出现在/ etc / opennms / rrdsnmp目录中。

riw@riw-ubuntu-vbox:/etc/opennms/rrdsnmp$ ls
riw@riw-ubuntu-vbox:/etc/opennms/rrdsnmp$ 

谢谢!

2 个答案:

答案 0 :(得分:0)

我假设你有SNMP v2设置,我将调试SNMP访问如下:

  1. 使用snmpwalk -v 2c -c
  2. 测试从OpenNMS服务器访问SNMP代理
  3. OpenNMS将SNMP社区字符串与IP地址相关联。您可以在“管理 - >配置OpenNMS - >按IP地址配置OpenNMS社区名称”的Web UI中进行验证,然后使用“查找”字段。它将显示为您的设备配置的SNMP社区,并在必要时进行修复。
  4. 转到节点页面并重新扫描服务器,查看带有IP和物理接口的“SNMP属性”字段是否已填满。
  5. 如果步骤1未提供完整的SNMP树,则必须修复周围配置,IP表或视图和社区的SNMP代理配置。

答案 1 :(得分:0)

您是否有理由定义不同的收藏集&#34; HsmLan&#34;在collectd?中的SNMP默认集合?

请务必在collects-configuration.xml底部包含hsmLan的收集服务,ala:

   <collector service="HsmLan" class-name="org.opennms.netmgt.collectd.SnmpCollector"/>

如果有,你需要定义这个&#34; snmp-collection&#34;在datacollection-config.xml中并通过标记包含集合,该标记引用在etc / datacollection /

中的xml文件(具有OID等)中命名的集合

您在顶部列出的poller-configuration.xml与数据收集无关。它用于服务轮询。