首先很抱歉,如果这不是提出我问题的最佳地点,但我到处搜索,我认为可能是有人遇到了同样的问题。
我正在使用 OpenNMS 通过 SNMP 从我的网络收集数据。
我的问题是结果的文件夹结构。而不是让 IP 具有 OpenNMS 的内部 ID
例如,输出是:
/var/opennms/rrd/snmp/1
但我需要它是:
/var/opennms/rrd/snmp/10.10.10.10
有没有其他人有同样的问题?
首先很抱歉,如果这不是提出我问题的最佳地点,但我到处搜索,我认为可能是有人遇到了同样的问题。
我正在使用 OpenNMS 通过 SNMP 从我的网络收集数据。
我的问题是结果的文件夹结构。而不是让 IP 具有 OpenNMS 的内部 ID
例如,输出是:
/var/opennms/rrd/snmp/1
但我需要它是:
/var/opennms/rrd/snmp/10.10.10.10
有没有其他人有同样的问题?
这本身不是问题,而是 OpenNMS 以节点为中心的特性。要动态访问您的 SNMP 数据(例如通过脚本),您首先需要查询 OpenNMS 数据库,并找到与给定 IP 关联的节点 ID。然而,这可能是一个问题,因为可能有多个节点具有相同的 IP 地址。你想达到什么目的?
opennms 的默认设置是按节点 ID 存储。可以通过将 $OPENNMS_HOME/etc/opennms.properties 中的 org.opennms.rrd.storeByForeignSource 设置更改为 true 来将其更改为由 foreignSource 存储
但是,这只会影响已配置节点的数据存储位置。您需要确保为您的节点提供对您的环境有意义的外部 ID。外部 ID 不必是数字,但可以是任何字符串,为您的供应申请提供唯一性。我在我的系统中使用主机名作为 foreignID,因为它比 IP 地址更静态。您可以使用 IP 地址,但是,正如 @EvT 所指出的,可以将相同的 IP 地址链接到多个节点,因此这可能不可行。此外,如果要更改 IP 地址,那么基于 IP 地址的 foreignID 将不正确。