Developer(s) | The Order of the Green Polo The OpenNMS Group |
---|---|
Stable release | |
Repository | github |
Operating system | Cross-platform |
Platform | Java |
Type | Network management System administration |
License | AGPLv3+ |
Website | www |
OpenNMS is a free and open-source enterprise grade network monitoring and network management platform. It is developed and supported by a community of users and developers and by the OpenNMS Group, offering commercial services, training and support.
The goal is for OpenNMS to be a truly distributed, scalable management application platform for all aspects of the FCAPS network management model while remaining 100% free and open source. Currently the focus is on Fault and Performance Management.
All code associated with the project is available under the Affero General Public License.
The OpenNMS Project is maintained by The Order of the Green Polo.
The OpenNMS Project was started in July, 1999 by Steve Giles, Brian Weaver and Luke Rindfuss and their company PlatformWorks. [2] It was registered as project 4141 on SourceForge in March 2000. [3] [4]
On September 28, 2000, PlatformWorks was acquired by Atipa, a Kansas City-based competitor to VA Linux Systems. [5] In July 2001, Atipa changed its name to Oculan. [6]
In September 2002, Oculan decided to stop supporting the OpenNMS project. Tarus Balog, then an Oculan employee, left the company to continue to focus on the project. [7]
In September 2004, The OpenNMS Group was started by Balog, Matt Brozowski and David Hustace to provide a commercial services and support business around the project. Shortly after that, The Order of the Green Polo (OGP) was founded to manage the OpenNMS Project itself. [8] While many members of the OGP are also employees of The OpenNMS Group, it remains a separate organization.
OpenNMS is written in Java, and thus can run on any platform with support for a Java SDK version 11 or higher. [9] Precompiled binaries are available for most Linux distributions.
In addition to Java, it requires the PostgreSQL database, although work is being done to make the application database independent by leveraging the Hibernate project.
OpenNMS describes itself as a "network management application platform". [10] While useful when first installed, the software was designed to be highly customizable to work in a wide variety of network environments.
There are four main functional areas of OpenNMS.
OpenNMS is based around a "publish and subscribe" message bus. Processes within the software can publish events, and other processes can subscribe to them. In addition, OpenNMS can receive events in the form of SNMP Traps, syslog messages, TL/1 events or custom messages sent as XML to port 5817.
Events can be configured to generate alarms. [11] While events represent a history of information from the network, alarms can be used to create correlation workflow (resolving "down" alarms when matching "up" alarms are created) and performing "event reduction" by representing multiple, identical events as a single alarm with a counter. Alarms can also generate events of their own, such as when an alarm is escalated in severity. Alarms clear from the system over time, unlike events that persist as long as desired.
The Alarm subsystem can also integrate with a variety of trouble ticketing systems, such as Request Tracker, OTRS, Jira, and Remedy.
The software also contains an Event Translator where incoming events can be augmented with additional data (such as the impact to customers) and turned into new events. [12]
Events can generate notifications via e-mail, SMS, XMPP and custom notification methods.
OpenNMS has been shown to be able to process 125,000 syslog messages per minute, continuously. [13]
OpenNMS contains an advanced provisioning system for adding devices to the management system. This process can occur automatically by submitting a list or range of IP addresses to the system (both IPv4 and IPv6). Devices can also be expressly added to the system.
The underlying technology for this configuration is XML, so users can either use the web-based user interface or they can automate the process by scripting the creation of the XML configuration files.
The provisioning system contains adapters to integrate with other processes within the application and to external software, such as a Dynamic DNS server and RANCID.
The provisioning process is asynchronous for scalability, and has been shown to provision networks of more than 50,000 discrete devices and to networks of single devices with over 200,000 virtual interfaces, each (Juniper E320). [14]
The service assurance features of OpenNMS allow for the availability of network-based services to be determined. The types of monitors span from the very simple (ICMP pings, TCP port checks) to the complex (Page Sequence Monitoring, [15] Mail Transport Monitor [16] ). Outage information is stored in the database and can be used to generate availability reports.
In addition to being able to monitor network services from the point of view of the OpenNMS server, remote pollers can be deployed to measure availability from distant locations.
Papa John's Pizza uses the OpenNMS remote poller software in each of its nearly 3000 retail stores to measure the availability of centralized network resources. [17]
Performance data collection exists in OpenNMS for a number of network protocols including SNMP, HTTP, JMX, WMI, XMP, XML, NSClient, and JDBC. Data can be collected, stored, graphed and checked against thresholds.
The process is highly scalable, and one instance of OpenNMS is collecting 1.2 million data points via SNMP every five minutes. [18]
OpenNMS is accessed via a web-based user interface built on Jetty. An integration with JasperReports creates high level reports from the database and collected performance data.
Simple Network Management Protocol (SNMP) is an Internet Standard protocol for collecting and organizing information about managed devices on IP networks and for modifying that information to change device behavior. Devices that typically support SNMP include cable modems, routers, network switches, servers, workstations, printers, and more.
Java Management Extensions (JMX) is a Java technology that supplies tools for managing and monitoring applications, system objects, devices and service-oriented networks. Those resources are represented by objects called MBeans. In the API, classes can be dynamically loaded and instantiated. Managing and monitoring applications can be designed and developed using the Java Dynamic Management Kit.
FCAPS is the ISO Telecommunications Management Network model and framework for network management. FCAPS is an acronym for fault, configuration, accounting, performance, security, the management categories into which the ISO model defines network management tasks. In non-billing organizations accounting is sometimes replaced with administration.
FreeMind is a free mind mapping application written in Java, which is further developed by the fork Freeplane. FreeMind itself was last updated in 2014. FreeMind is licensed under the GNU General Public License Version 2. It provides extensive export capabilities. It runs on Microsoft Windows, Linux, and macOS via the Java Runtime Environment.
m0n0wall was an embedded firewall distribution of FreeBSD, one of the BSD operating system descendants. It provided a small image which could be put on Compact Flash cards as well as on CD-ROMs and hard disks. It ran on a number of embedded platforms and generic PCs. The PC version could be run with just a Live CD and a floppy disk to store configuration data, or on a single Compact Flash card. This eliminated the need for a hard drive, which reduces noise and heat levels and decreases the risk of system failure through elimination of moving parts found in older hard drives.
A management information base (MIB) is a database used for managing the entities in a communication network. Most often associated with the Simple Network Management Protocol (SNMP), the term is also used more generically in contexts such as in OSI/ISO Network management model. While intended to refer to the complete collection of management information available on an entity, it is often used to refer to a particular subset, more correctly referred to as MIB-module.
The Intelligent Platform Management Interface (IPMI) is a set of computer interface specifications for an autonomous computer subsystem that provides management and monitoring capabilities independently of the host system's CPU, firmware and operating system. IPMI defines a set of interfaces used by system administrators for out-of-band management of computer systems and monitoring of their operation. For example, IPMI provides a way to manage a computer that may be powered off or otherwise unresponsive by using a network connection to the hardware rather than to an operating system or login shell. Another use case may be installing a custom operating system remotely. Without IPMI, installing a custom operating system may require an administrator to be physically present near the computer, insert a DVD or a USB flash drive containing the OS installer and complete the installation process using a monitor and a keyboard. Using IPMI, an administrator can mount an ISO image, simulate an installer DVD, and perform the installation remotely.
Wireshark is a free and open-source packet analyzer. It is used for network troubleshooting, analysis, software and communications protocol development, and education. Originally named Ethereal, the project was renamed Wireshark in May 2006 due to trademark issues.
The company Zenoss, Inc. was founded in 2005 and is headquartered in Austin, Texas. The company develops hybrid IT monitoring and analytics software.
Pandora FMS is software for monitoring computer networks. Pandora FMS allows monitoring in a visual way the status and performance of several parameters from different operating systems, servers, applications and hardware systems such as firewalls, proxies, databases, web servers or routers.
NetXMS is an multi-platform open-source network management system. It can be used for monitoring entire IT infrastructures, starting with SNMP-capable hardware and ending with applications on servers.
The TurnKey Linux Virtual Appliance Library is a free open-source software project which develops a range of Debian-based pre-packaged server software appliances. Turnkey appliances can be deployed as a virtual machine, in cloud computing services such as Amazon Web Services or installed in physical computers.
Pentaho is the brand name for several Data Management software products that make up the Pentaho+ Data Platform. These include Pentaho Data Integration, Pentaho Business Analytics, Pentaho Data Catalog, and Pentaho Data Optimiser.
Shinken is an open source computer system and network monitoring software application compatible with Nagios. It watches hosts and services, gathers performance data and alerts users when error conditions occur and again when the conditions clear.
LogicalDOC is a proprietary cloud-based document management system that is designed to handle and share documents within an organization. LogicalDOC is a content repository, with Lucene indexing, Activiti workflow, and a set of automatic import procedures. The system was developed using Java technology.
Checkmk is a software system developed in Python and C++ for IT Infrastructure monitoring. It is used for the monitoring of servers, applications, networks, cloud infrastructures, containers, storage, databases and environment sensors.
OpenLMI provides a common management infrastructure for Linux systems. Available operations include configuration of various operating system parameters and services, hardware components configuration, and monitoring of system resources. Services provided by OpenLMI can be accessed both locally and remotely, using multiple programming languages and standardized APIs.
iDempiere. Community Powered Enterprise, also known as OSGi + ADempiere, is an open source enterprise resource planning (ERP) software that is fully navigable on PCs, tablets and smartphones, it also has customer relationship management (CRM) and supply chain management (SCM) functions.
Odoo is a suite of Belgian origin business management software tools that include customer relationship management, e-commerce, billing, accounting, manufacturing, warehouse, project management, and inventory management.
OpenHPI is an open-source software system providing an abstracted interface to managing computer hardware, typically for chassis and rack based servers. It is production ready implementation of the Hardware Platform Interface specification from Service Availability Forum, complimenting existing hardware management standards. Founded in 2003, OpenHPI is maintained by the OpenHPI Project.
Release 33.1.1 contains bug fixes, security updates and new features.
OpenNMS was registered on SourceForge in March of 2000 as project 4141, about two months after NetSaint which later became Nagios. So it has been around for while, almost longer than any other open source management tool.