Kings of open source monitoring

Built on open source, OpenNMS and Zenoss Enterprise take different paths to rich, scalable, and extensible network and systems monitoring

1 2 3 4 5 6 Page 2
Page 2 of 6

OpenNMS and Zenoss share several advanced features that separate them from their lower-end open source counterparts such as Nagios or Cacti. Companies with large network infrastructures are likely using some configuration management tool. If that happens to be the open source RANCID project, then you will be glad that both OpenNMS and Zenoss can integrate with RANCID. For IT shops with Windows servers, OpenNMS and Zenoss can use WMI to monitor the Windows machines (though large numbers of WMI monitored network devices will cause a performance hit; again, see the "Maximize performance" sidebar). Futhermore, these two network monitoring systems will cull information from your VMware infrastructure.

Beyond the usual ICMP and service up/down monitoring that you'll get with most any network monitoring system, OpenNMS and Zenoss are able to use specific service queries and compare the responses against what you expect from your monitored servers. You can run custom SQL queries against your production databases and trigger an alert if the response changes. Maybe you want to monitor a critical Web application that uses Apache with PHP and MySQL. You can build a PHP page on your Web server that will run a database query and return the results in the Web page, thus ensuring that Apache, PHP, and MySQL all work as expected.

[ Looking for a lighter shade of heavyweight? See "Killer open source monitoring tools" ]

Peek at performance
Performance monitoring is an important task for any enterprise-grade network monitoring system. Zenoss uses the RRDtool system, made popular by MRTG and Cacti, to collect performance data from network devices, create graphs for easy analysis by a human, and generate threshold-based alerts. By default OpenNMS uses a Java implementation of RRDtool's functionality to provide the same performance data collection and presentation services, but it can be configured to use RRDtool proper for compatibility with other tools that read RRDtool's data files. Both systems collect and graph all available incrementing data via SNMP for monitored devices by default. In addition to the usual network traffic statistics and RAM and CPU utilization, OpenNMS and Zenoss can track disk utilization as well as I/O throughput on supported systems. And both systems provide a way to collect and graph custom data, or perform modifications to collected data as well as calculations before graphing.

An important aspect of any open source software project is its community of supporters and developers, and both OpenNMS and Zenoss have strong followings. At the OpenNMS Group (the company), all but one of the employees are developers, while approximately 60 percent of the OpenNMS project development team is composed of community programmers who have no direct affiliation with the OpenNMS Group. Zenoss is developed almost entirely by company employees, but the community of Zenoss users and customers has produced more than 100 ZenPacks to provide additional functionality for Zenoss.

For an application of the magnitude of these two network monitoring systems, you will almost certainly run into some configuration issues or unclear features, so support is important. As part of my research for this review, I made use of the support groups at both companies for help with their respective products. OpenNMS and Zenoss both did a great job with support. They were able to answer my questions quickly and were completely courteous and friendly at all times.

OpenNMS: Superior value
OpenNMS is a purely open source software project. This means that you get the full version of the software for free as open source; there is no extended, "enterprise" version. The business model used by the OpenNMS company is to sell support and training services for the OpenNMS open source software. Most of the company's employees are developers or contributors to the open source project. There is also a healthy development community behind the project. While the company does not have large financial backers, it likes to brag of its prudent accounting strategy: "We spend less than we make."

One of my favorite features of OpenNMS is the ability to integrate with several help desk software applications, including Request Tracker (RT), ConcourseSuite, JIRA, OTRS, and Intuit's QuickBase. Unlike some monitoring systems (including Zenoss), OpenNMS does not merely open help desk tickets by sending e-mails to the application. OpenNMS uses the API for the help desk application, which allows OpenNMS to open, update, and close tickets, as well as provide links from the OpenNMS Web interface to the appropriate ticket in the help desk application's Web interface. As part of our GreenLight Project on-site consulting, we had the OpenNMS server tied in to my company's Request Tracker help desk system and configured OpenNMS to open tickets for network device down alerts, and update and close the tickets once the network device came back online.

Another strong point of OpenNMS is its alerting and notification system, which abstracts alarms into event notifications and user notification paths. Event notifications define what sort of changes in the network will trigger an alert. User notification paths define who gets notified, how they get notified, and when they get notified, as well as a notification escalation procedure for alerts. Although setting up alerts in OpenNMS is not quite intuitive, the OpenNMS design gives the user a great amount of flexibility. The event notifications and user notification paths can be reused. Once you've configured an event notification rule for one network device (to watch for high network throughput, for instance), you can use that same rule for other network devices. And if you have a standard set of employees for day shift and night shift, then you might need only a handful of rules for thousands of devices. The more devices you monitor, the more you'll appreciate the OpenNMS notification system.

Open source enterprise monitoring at a glance

OpenNMS 1.6.5Zenoss Enterprise 2.4
CostSoftware is freely available under open source GPL. Support costs $14,995 for one year of 7-a.m.-to-7-p.m. ET business days, 4-hour response; $29,995 for one year of 24/7 support, 2-hour response.Software is sold on an annual subscription basis. Subscriptions cost $100 (Silver), $150 (Gold), or $180 (Platinum) per managed device per year, minimum 250 devices, with support 7-a.m.-to-8-p.m. ET business days. Volume discounts and site/corporate licenses available for > 1,000 devices.
PlatformsLinux, Solaris, Mac OS X, FreeBSD, OpenBSD, WindowsLinux, Solaris, Mac OS X, FreeBSD
Pros+ Easy customization and extensibility through XML configuration files and free external tools
+ Performance monitoring through service queries and RRDtool data
+ Full integration with RANCID configuration management and several helpdesk applications
+ Native monitoring of Windows systems via WMI
+ Enormously flexible and scalable notification system
+ Network topology discovery and mapping
+ Support pricing is flat-rate per organization
+ Easy customization and extensibility through free and proprietary ZenPack plug-ins
+ Performance monitoring through service queries and RRDtool data
+ Full integration with RANCID configuration management
+ Native monitoring of Windows systems via WMI
+ Provides fine-grained, role-based access controls
+ Easy configuration of alerts and notifications
+ Network topology discovery and mapping
+ Automatically determines root-cause relationships
+ Geographic network maps
+ Polished, AJAX-enabled Web interface
+ Well-organized documentation in PDF and HTML
+ Tracks installed software for licensing compliance
+ Distributed data collection is extremely easy to set up
Cons- Lacks fine-grained access controls
- AJAX-less Web GUI is clunky
- Configuring root-cause relationships is a manual process
- Setting up alerts is non-intuitive
- Documentation is poorly organized and often outdated
- Distributed data collection systems write directly to primary database
- Subscription pricing depends on the number of devices being monitored
- Help desk integration via e-mail only
- Rules for alerts not particularly flexible
Bottom LineOpenNMS can scale to monitor tens of thousands of devices from a single server, and the full breadth of its functionality is available as free open source. A number of important shortcomings including the clunky Web GUI and lack of role-based access controls promise to be addressed in the forthcoming version 1.8.Zenoss Enterprise has a richer set of features than OpenNMS, with a Web 2.0 GUI, role-based access controls, VMware vSphere 4 support, and the ability to track software inventories just a few of the differentiators. However, the additional functionality and polish come at the price of an annual subscription.
1 2 3 4 5 6 Page 2
Page 2 of 6
How to choose a low-code development platform