Link Monitoring Specification
Subscribe

From OpenNMS

Jump to: navigation, search

Contents

Feature Description

A wireless link service monitor will be developed that can be used to represent the status of a link. This service monitor will most likely use SNMP but could use HTTP to determine the link status. Links on the map will be updated to display the link state (up/down).

See Link Monitoring Design for an overview of the architecture.

Strategy

  • Monitor link endpoint status
  • Map will reflect linke endpoint status

Acceptance Criteria

When either side of the link that is being monitored goes down the map will show a 'Bad' or 'Failed' status and when both links are up a 'Good' or 'Normal' status will be displayed on the map for the link.

Step 0. Configure the Automatic Maps

To test the functionality of this feature make sure you are testing a live device preferably one of the following devices: AirPair3, AirPair4, Horizon Duo, Horizon Compact, Motorola Orthogon, Motorola Redline. The next part of this step will be configuring the Automatic_Map_Creation note that on the provision step that you provision at least one device as site-a-site-b-link and another as site-a-site-b-link this will help in keeping the acceptance criteria testing clear.

Step 1. Configure the EndPointTypes

Once you have configured the Automatic_Map_CreationYou will need to configure the endpoint-types. By default this is located in the $OPENNMS_HOME/etc/endpoint-configuration.xml. The configuration will be used to determine an end point. In this step we will configure a couple of devices, AirPair3, AirPair4, Horizon Compact, Horizon Duo, Motorola Orthogon and Redline devices as end points.

<endpoint-types xmlns="http://xmlns.opennms.org/xsd/config/endpoint-types" endpoint-service-name="EndPoint">
  <endpoint-type name="AirPair3">
    <sysoid-mask>.1.3.6.1.4.1.7262.1</sysoid-mask>
    <and>
      <match-oid oid=".1.3.6.1.4.1.7262.1.19.3.1.0">^1$</match-oid>
      <match-oid oid=".1.3.6.1.4.1.7262.1.19.2.3.0">^1$</match-oid>
     </and>
  </endpoint-type>
  <endpoint-type name="AirPair4">
    <sysoid-mask>1.3.6.1.4.1.7262.1</sysoid-mask>
    <and>
      <match-oid oid=".1.3.6.1.4.1.7262.1.19.3.1.0">^1$</match-oid>
      <match-oid oid=".1.3.6.1.4.1.7262.1.19.2.15.0">^1$</match-oid>
     </and>
  </endpoint-type>
  <endpoint-type name="Hozizon Compact">
    <sysoid-mask>1.3.6.1.4.1.7262.1</sysoid-mask>
    <and>
      <match-oid oid=".1.3.6.1.4.1.7262.2.2.8.4.4.1.0">^1$</match-oid>
      <match-oid oid=".1.3.6.1.4.1.7262.2.2.8.3.1.9.0">^1$</match-oid>
     </and>
  </endpoint-type>
  <endpoint-type name="Hozizon Duo">
    <sysoid-mask>1.3.6.1.4.1.7262.1</sysoid-mask>
    <or>
      <and>
        <match-oid oid=".1.3.6.1.4.1.7262.2.3.1.1.5.0">^1$</match-oid>
        <match-oid oid=".1.3.6.1.4.1.7262.2.3.7.4.1.1.1.2.1">^1$</match-oid>
      </and>
      <and>
        <or>
          <match-oid oid=".1.3.6.1.4.1.7262.2.3.1.1.5.0">^2$</match-oid>
          <match-oid oid=".1.3.6.1.4.1.7262.2.3.1.1.5.0">^3$</match-oid>
        </or>
        <match-oid oid=".1.3.6.1.4.1.7262.2.3.7.4.1.1.1.2.2">^1$</match-oid>
      </and>
     </or>
  </endpoint-type>
  <endpoint-type name="Motorola Orthogon">
       <sysoid-mask>.1.2.3.4</sysoid-mask>
       <pingable />
   </endpoint-type>
   <endpoint-type name="Motorola Redline">
       <sysoid-mask>.1.2.3.4</sysoid-mask>
       <pingable />
   </endpoint-type>
 </endpoint-types>

Step 2. Configure Snmp (Optional)

This step is optional only if the devices that you are trying to use as an endpoint do not use the default "public" SNMP community name. Otherwise you will have to configure snmp-config.xml to define IP address ranges and community strings for your devices. (Add link here to configure Snmp)

Step 3. Configure Poller Configuration

Add the EndPoint service monitor to poller-configuration.xml.

 <poller-configuration threads="30" serviceUnresponsiveEnabled="false">
   ...
   <package name="example1">
     ...
     <service name="EndPoint" interval="300000" user-defined="false" status="on">
       <parameter key="retry" value="2" />
       <parameter key="timeout" value="3000" />
     </service>
   </package>
   ...
   <monitor service="EndPoint" class-name="org.opennms.netmgt.provision.adapters.link.EndPointMonitor" />
   ...
 </poller-configuration>

Step 4. Configure the Foreign Source

Next, you should configure the foreign source so that it has an EndPoint Detector plugin available. This step requires that you followed Step 0 and installed the opennms-plugin-provisioning-map and opennms-plugin-provisioning-link packages.

To finish configuring the foreignsource you will need to restart OpenNMS, once started, proceed to the admin section and click on the 'Manage Provisioning Groups' link in the 'Nodes' section. You will see a page with a input textfield, and three buttons. Click on the 'Edit Default Foreign Source' button then click on 'Add Detector' a form field will show up on the bottom where you can add the EndPoint Detector.

Name the detector 'EndPoint', then select from the dropdown the 'EndPoint' detector.

If it is not in the drop down then please make sure that you correctly installed the opennms-plugin-provisioning-link package.

Step 5. Verify that a Node that is part of a link has the EndPoint service

Proceed to the node page for the 'site-a-site-b-link' node then double click on the Ip interface, this will take you to the interface page and make sure that under the 'Services' tab the 'EndPoint' service is present.

Step 6. Bring Down a Link End Point

At this point you should be able to test the full functionality of the Link Monitoring feature with live devices. Depending on what device you provisioned, if its a pingable device you can change the status by turning it off, or disconnecting it. If its an Snmp end point do whatever you need to do for the particular device that changes the values of the oids that the end point configuration is trying to match.

You can even stand in front of the microwave link with a mirror but we don't recommend that because you may be putting yourself in risk of physical harm.


Step 7. Bring the Link End Point back up

Proceed to connect, or return the link to an operational status and on the next poll the status of the link will change to 'Good' from 'Bad'.