ArticleslgStudy

computer science

OpenNMS

OpenNMS is a computer science topic covered in the lgStudy science library. This page brings together a partial reference excerpt, illustrations, worked examples, real-world applications and a short study plan, so you can understand OpenNMS rather than just read about it. In short: 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.

Key takeaways

  • OpenNMS belongs to computer science; place it in that map before memorising details.
  • Learn the definition first, then one example that makes the definition concrete.
  • Connect OpenNMS to a quantity you can measure, compute or draw — that is where exam questions come from.
  • Reproduce the core statement of OpenNMS from memory before moving on to harder problems.

Reference excerpt

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. 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.

History Steve Giles, Brian Weaver, and Luke Rindfuss started the OpenNMS project in July 1999 at their company PlatformWorks. The project was registered on SourceForge in March 2000, about two months after the registration of NetSaint (later Nagios). On September 28, 2000, PlatformWorks was acquired by Atipa, a Kansas City-based Linux systems vendor. In July 2001, Atipa renamed itself Oculan. In September 2002, Oculan stopped supporting OpenNMS. Tarus Balog, then an Oculan employee, left the company to continue the project independently. 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. OpenNMS produces two release streams: Horizon (community releases with new features) and Meridian (enterprise-oriented releases with longer support cycles).

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). 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. 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.

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.

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.

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

Awards 2015 InfoWorld Best of Open Source (BOSSIE) 2010 InfoWorld Best of Open Source (BOSSIE) 2010 SourceForge Project of the Month 2007 TechTarget Product Excellence Gold Award 2006 LinuxWorld Expo Product Excellence Award

See also

Comparison of network monitoring systems Nagios Zabbix

References

External links Official website OpenNMS source code on GitHub

Worked examples

Example 1 — a first encounter with OpenNMS

Start with the simplest possible case. Write down what OpenNMS claims or describes in one sentence, then invent the smallest concrete situation in which that sentence is true. In computer science, the smallest case is usually a single object, a single equation or a single measurement. Check that every symbol or term in your sentence has a meaning in that case.

Example 2 — changing one variable

Take the situation from Example 1 and change exactly one quantity: double it, halve it, or set it to zero. Predict what should happen to OpenNMS before you calculate. Comparing your prediction with the result is the fastest way to find out whether you understand the idea or only the words.

Example 3 — an exam-style question

Typical questions about OpenNMS ask you to (a) state it precisely, (b) apply it to given data, and (c) explain a limitation. Practise writing all three answers in under five minutes; the third part is what separates a full-mark answer from an average one.

Applications of OpenNMS

In research
OpenNMS appears in computer science research whenever the underlying quantities have to be modelled precisely. Papers usually cite it as a starting assumption and then explore where it breaks down.
In technology and industry
Engineering practice reuses OpenNMS in design rules, simulations and safety margins. Knowing the idea lets you read a specification sheet and understand why the numbers look the way they do.
In the classroom
OpenNMS is common in secondary-school and first-year university syllabi. It links to neighbouring topics 1999 software, Computer network analysis, Free network management software, so understanding it makes those chapters shorter.
In everyday life
Look for OpenNMS outside the textbook — in sport, cooking, traffic, electronics or the sky above you. An example you found yourself is remembered far longer than one you were given.

Affiliate

Preply — study more efficiently by working with a personal tutor. 50% off.

How to study OpenNMS in 20 minutes

  1. Read the reference excerpt below once, without taking notes.
  2. Close the page and write down what OpenNMS means in your own words.
  3. Compare your version with the excerpt and mark what you missed.
  4. Work through the three examples above with pen and paper.
  5. Explain OpenNMS out loud to somebody else — or to Teacher Smith in the lgStudy chat.

Frequently asked questions

What is OpenNMS in simple terms?

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.

Why does OpenNMS matter?

Because it connects several computer science ideas at once: it gives you a definition you can apply, a quantity you can calculate, and a way to check whether a result is plausible.

How should I study OpenNMS?

Read the excerpt, restate it from memory, then work through the examples and applications listed on this page. The five-step study plan above takes about twenty minutes.

What does this page cover?

It gives you a compact reference excerpt plus original lgStudy explanations, examples, applications and study material on OpenNMS.

Tags

  • 1999 software
  • Computer network analysis
  • Free network management software
  • Free software programmed in Java
  • Network performance
  • Software using the GNU Affero General Public License
  • System administration

Keep exploring