Auto Discovery

Auto discovery is the process of automatically adding nodes to Horizon. You do this through discovery, either periodically on schedule or through single, unscheduled times.

Make sure you complete the tasks in the Getting Started section before adding nodes.

Configure discovery

Configuring discovery specifies the parameters Horizon uses when scanning for nodes.

  1. Click the gear icon and in the Provisioning area choose Configure Discovery.

    To configure a discovery scan to run once, select Run Single Discovery Scan.
  2. In the General Settings area, accept the default scheduling options (sleeptime, retries,timeout, etc.), or set your own.

  3. From the Foreign Source list, choose the requisition to which you want to add the discovered nodes.

  4. If you have installed Minions, select one from the Location list.

  5. Click Add New to add the following:

    • specific address (IP addresses to add)

    • URLs

    • IP address ranges to include

    • IP address ranges to exclude

  6. Click Save and Restart Discovery.

  7. When the discovery is finished, navigate to the requisition (Manage Provisioning Requisitions) where you specified to view the nodes discovered.

  8. If desired, edit the nodes or delete them from the requisition, then click Synchronize to add them to the Horizon database.

  9. Repeat this process for each requisition you want to provision.

Automatic discovery detectors

Auto discovery with detectors lets users specify the services to detect, in addition to ICMP ping, for the specified IP addresses to be discovered. Discovery sends a new suspect event only when the specified detectors succeed. A definition without any detectors will fall back to ICMP ping for discovery.

Sample discovery configuration with detectors:
<discovery-configuration xmlns="http://xmlns.opennms.org/xsd/config/discovery" packets-per-second="1"
    initial-sleep-time="30000" restart-sleep-time="86400000" retries="1" timeout="2000">

    <definition location="MINION" foreign-source="ApexOffice">

		<detectors>
			<detector name="reverse-dns-lookup" class-name="org.opennms.netmgt.provision.detector.rdns.ReverseDNSLookupDetector"/>
			<detector name="SNMP" class-name="org.opennms.netmgt.provision.detector.snmp.SnmpDetector">
				<parameter key="timeout" value="5000"/>
				<parameter key="ttl" value="120000"/>
			</detector>
		</detectors>

		<specific>10.0.0.5</specific>

		<include-range>
			<begin>192.168.0.1</begin>
			<end>192.168.0.254</end>
		</include-range>

    <exclude-range>
			<begin>192.168.0.120</begin>
			<end>192.168.0.125</end>
		</exclude-range>

		<include-url>file:/opt/opennms/etc/include.txt</include-url>

	</definition>

</discovery-configuration>