OpenNMS

Open-source network monitoring and management platform From Wikipedia, the free encyclopedia

OpenNMS is a free and open-source network monitoring and network management platform written in Java. It provides fault management, performance data collection, service monitoring, event processing, and topology mapping. The project was started in July 1999 and registered on SourceForge as project 4141 in March 2000, making it one of the oldest open-source network management platforms.[2]

DevelopersThe OpenNMS Group, The Order of the Green Polo
Initial releaseMarch 2000; 26 years ago (2000-03)
Stable release
35.0.4[1] / March 11, 2026; 0 days ago (2026-03-11)
Written inJava[1]
Quick facts Developers, Initial release ...
OpenNMS
DevelopersThe OpenNMS Group, The Order of the Green Polo
Initial releaseMarch 2000; 26 years ago (2000-03)
Stable release
35.0.4[1] / March 11, 2026; 0 days ago (2026-03-11)
Written inJava[1]
Operating systemLinux, Unix
TypeNetwork management
LicenseAGPLv3
Websitewww.opennms.org
Repositorygithub.com/OpenNMS/opennms
Close

OpenNMS is released under the AGPLv3. The OpenNMS Group provides commercial support, training, and an enterprise distribution called Meridian. The project itself is governed by The Order of the Green Polo (OGP), a community organization separate from the commercial entity.[3]

History

Steve Giles, Brian Weaver, and Luke Rindfuss started the OpenNMS project in July 1999 at their company PlatformWorks.[4] The project was registered on SourceForge in March 2000, about two months after the registration of NetSaint (later Nagios).[2]

On September 28, 2000, PlatformWorks was acquired by Atipa, a Kansas City-based Linux systems vendor.[5] In July 2001, Atipa renamed itself Oculan.[6]

In September 2002, Oculan stopped supporting OpenNMS. Tarus Balog, then an Oculan employee, left the company to continue the project independently.[7] In September 2004, Balog, Matt Brozowski, and David Hustace founded The OpenNMS Group to provide commercial services. The Order of the Green Polo was established shortly afterward to manage the project's governance separately from the commercial business.[3]

OpenNMS produces two release streams: Horizon (community releases with new features) and Meridian (enterprise-oriented releases with longer support cycles).[1]

Architecture

Event management

OpenNMS is built around a publish-subscribe event bus. Internal processes and external sources (SNMP traps, syslog messages, TL/1 events, or XML messages sent to a TCP listener) generate events that other subsystems can consume. Events can trigger alarms, which support event reduction (consolidating repeated identical events into a single alarm with a counter) and correlation workflows (automatically clearing a "down" alarm when a matching "up" alarm arrives).[8]

The alarm subsystem can integrate with trouble-ticketing systems including Request Tracker, OTRS, and Jira. An event translator can augment incoming events with additional data before forwarding them.[9] Notifications can be sent via email, SMS, XMPP, and custom notification methods.

Discovery and provisioning

OpenNMS can discover devices automatically by scanning IP address ranges (both IPv4 and IPv6) or accept explicit device definitions. The provisioning system is XML-based and can be scripted for automation. Provisioning adapters allow integration with external systems such as Dynamic DNS servers and RANCID for configuration management.[2]

Service monitoring

The service assurance system tests the availability of network services at configurable intervals, ranging from simple ICMP pings and TCP port checks to multi-step web page sequence monitors and mail transport monitors. Outage data is stored in the database for availability reporting. Remote pollers can be deployed at distant locations to measure service availability from multiple geographic points.[10]

Data collection

OpenNMS collects performance data via SNMP, HTTP, JMX, WMI, XML, NSClient, and JDBC. Collected data is stored in RRDtool or JRobin files for graphing and threshold evaluation.[2]

Platform requirements

OpenNMS requires a Java SDK version 11 or higher and PostgreSQL for its database.[11] Precompiled packages are available for most Linux distributions.

Awards

  • 2015 InfoWorld Best of Open Source (BOSSIE)[12]
  • 2010 InfoWorld Best of Open Source (BOSSIE)[13]
  • 2010 SourceForge Project of the Month[2]
  • 2007 TechTarget Product Excellence Gold Award[14]
  • 2006 LinuxWorld Expo Product Excellence Award[15]

See also

References

Related Articles

Wikiwand AI