opennms-forge / ansible-provisioning

Use Ansible to provision node inventory into OpenNMS Horizon/Meridian
https://www.opennms.com
GNU Affero General Public License v3.0
0 stars 1 forks source link

:rocket::rocket::rocket: #78 Add additional interface support #79

Closed mfuhrmann closed 11 months ago

mfuhrmann commented 11 months ago

fix #78

I am adding here in the switch inventory a dictionary additional_nic definition with IPs, their services and metadata. The node templates is changed to add those interfaces accordingly. The definition of switch1 looks now like:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<node xmlns="http://xmlns.opennms.org/xsd/config/model-import" location="Default" foreign-id="switch1" node-label="switch1" parent-foreign-id="200">
  <interface descr="disc-if" ip-addr="172.16.238.14" managed="true" status="1" snmp-primary="P">
    <monitored-service service-name="ICMP">
    </monitored-service>
  </interface>
  <interface ip-addr="172.16.238.20" snmp-primary="N">
    <monitored-service service-name="ICMP">
      <meta-data context="requisition" key="retry" value="5"/>
      <meta-data context="requisition" key="timeout" value="10"/>
    </monitored-service>
    <monitored-service service-name="HTTP">
      <meta-data context="requisition" key="port" value="80"/>
    </monitored-service>
  </interface>
  <interface ip-addr="172.16.238.21" snmp-primary="N">
    <monitored-service service-name="SNMP">
      <meta-data context="requisition" key="retry" value="5"/>
      <meta-data context="requisition" key="timeout" value="10"/>
    </monitored-service>
  </interface>
  <asset name="description" value="switch"/>
  <asset name="floor" value="2"/>
  <asset name="room" value="213"/>
  <asset name="rack" value="1"/>
  <asset name="rackunitheight" value="1"/>
  <meta-data context="requisition" key="env" value="prod"/>
  <meta-data context="requisition" key="app" value="switches"/>
</node>