This destination adds yourCMDB objects as nodes to the network management system OpenNMS using the OpenNMS REST API.
| short information | |
|---|---|
| class name | ExternalSystemOpennms |
| needed destination parameter | resturl |
| restuser | |
| restpassword | |
| requisition | |
| needed variables | nodelabel |
| ip | |
| name | required | description | example |
|---|---|---|---|
| resturl | required | REST API URL of your OpenNMS system | http://127.0.0.1:8980/opennms/rest |
| restuser | required | REST API username | admin |
| restpassword | required | REST API password | admin |
| requisistion | required | OpenNMS provisioning requisition to use | yourcmdb |
| services | optional | name of services to bind on each node sepetated by space | ICMP SNMP HTTP |
| sslVerify | optional | disable SSL peer verification (since version 0.7.1) | false |
| rescanExisting | optional | set rescanExisting flag for OpenNMS import (since version 0.7.2) | dbOnly |
| exportSnmpConfig | optional | also export SNMP configuration for nodes (since version 0.14) | false |
| exportSnmpConfigRetries | optional | export SNMP configuration for nodes: set SNMP retries (since version 0.14) | 1 |
| exportSnmpConfigTimeout | optional | export SNMP configuration for nodes: set SNMP timeout (since version 0.14) | 2000 |
| name | required | description | example |
|---|---|---|---|
| nodelabel | required | nodelabel for the OpenNMS node | - |
| ip | required | ip address to add in OpenNMS | - |
| furtherIps | optional | further ip addresses to add to OpenNMS node. Format: IP1;IP2;IP3. (since version 0.10) | 10.0.0.1;10.0.0.2 |
| asset_<assetfield name> | optional | content for asset field | asset_city for adding information to the city field |
| category_<1-n> | optional | use variable value of the field to define a category | category_1 |
| category_<name> | optional | use variable value of the field to define a category in format <name>-<varvalue> | category_admin |
| snmp_community | optional | SNMP community of a node. This will be set in OpenNMS, if exportSnmpConfig is set to true (since version 0.14) | - |
| snmp_version | optional | SNMP version of a node. This will be set in OpenNMS, if exportSnmpConfig is set to true. Currently the exporter supports only v1/v2c (since version 0.14) | - |
example of export task configuration:
<task name="opennms-example">
<sources>
<source objecttype="router" status="A" fieldname="monitoring" fieldvalue="true" />
<source objecttype="switch" status="A" />
</sources>
<destination class="ExternalSystemOpennms">
<parameter key="resturl" value="http://127.0.0.1:8980/opennms/rest" />
<parameter key="restuser" value="admin" />
<parameter key="restpassword" value="admin" />
<parameter key="requisition" value="yourcmdb" />
<parameter key="services" value="ICMP" />
</destination>
<variables>
<variable name="nodelabel">
<value objecttype="router" fieldname="hostname" />
<value objecttype="switch" fieldname="management-ip" />
</variable>
<variable name="ip" default-value="0.0.0.0">
<value objecttype="router" fieldname="management-ip" />
<value objecttype="switch" fieldname="management-ip" />
</variable>
<variable name="asset_city">
<value objecttype="router" fieldname="manufacturer" />
<value objecttype="switch" fieldname="management-ip" />
</variable>
<variable name="category_admin">
<value objecttype="router" fieldname="Name" />
<value objecttype="switch" fieldname="Name" />
</variable>
<variable name="category_1">
<value objecttype="router" fieldname="manufacturer" />
<value objecttype="switch" fieldname="manufacturer" />
</variable>
</variables>
</task>
minimal configuration example:
<task name="opennms-example">
<sources>
<source objecttype="router" status="A" fieldname="monitoring" fieldvalue="true" />
<source objecttype="switch" status="A" />
</sources>
<destination class="ExternalSystemOpennms">
<parameter key="resturl" value="http://127.0.0.1:8980/opennms/rest" />
<parameter key="restuser" value="admin" />
<parameter key="restpassword" value="admin" />
<parameter key="requisition" value="yourcmdb" />
</destination>
<variables>
<variable name="nodelabel">
<value objecttype="router" fieldname="hostname" />
<value objecttype="switch" fieldname="management-ip" />
</variable>
<variable name="ip" default-value="0.0.0.0">
<value objecttype="router" fieldname="management-ip" />
<value objecttype="switch" fieldname="management-ip" />
</variable>
</variables>
</task>