It’s no secret that most organizations use 10+ products to monitor everything from servers and devices to networks, traffic, applications and databases. Not all monitoring tools are the same; some are stronger in certain areas than others. In this article our resident Icinga technician, Jeff Williams, will highlight the areas where Icinga’s open source monitoring tool is strong.
1. Monitoring of Services
Icinga 2 is a flexible, open source monitoring platform that has the capability to cover most of your monitoring requirements due to its customizable framework.
Out of the box, Icinga 2 is strong at monitoring servers and devices, supporting both direct monitoring and SNMP. It excels at providing data and alerts for availability, connectivity, and general health checks of your infrastructure.
When it comes to net flow, application monitoring and database monitoring, Icinga 2 is capable but requires custom configuration or additional plugins. The more specific you can be about your intended data points and thresholds, the more success you will have with Icinga 2. If you are hoping to turn Icinga 2 on and receive a flood of monitoring data points, then it is not an ideal tool for you.
Here’s a screenshot of Icinga’s incident dashboard:
2. Direct Monitoring vs SNMP
Icinga 2 supports both direct monitoring and SNMP monitoring but it is not your typical SNMP tool. Because it lends itself more to direct monitoring, Icinga 2 can be quickly configured vs an SNMP monitoring tool. On the flipside, if you want to receive all data points for a hardware device, such as a router, you will need to configure it individually for each datapoint vs. an SNMP tool that will provide all data metrics once the tool is setup to monitor the specific device.
Icinga 2 is designed to be object-oriented from top to bottom. It has a rich configuration language that allows expression of complex configurations in a minimal amount of text, allowing monitoring configurations to be written quickly and concisely. Combined, these two architectural features allow the creation of a large number of monitoring data points in a small amount of time.
Icinga 2 is built to be fast. It can run thousands of checks every second due to its multithreaded design when most monitoring tools run checks every few minutes. If you need quick notification of a system issue, this is another area where Icinga shines.
5. Clustering and Zone Monitoring
The clustering and zone monitoring abilities of Icinga 2 yield high availability at several different levels. It allows the architect to create a distributed hierarchy of monitoring systems where checks are run local to regions of the network and only the results are relayed back to the masters. In very large implementations this removes a burden from the masters, freeing resources to spend more time on recording, display, and notification.
Icinga 2 also supports enterprise level scaling. Satellite nodes can form high availability clusters with load balancing and replication managed by an active zone instance, ensuring that Icinga2 maintains its own availability to provide monitoring data.
6. Configuration & Templates
Different from it’s Nagios ancestor, Icinga 2 recently introduced an object-based, rule-driven configuration. The configuration format is similar to Puppet with a clear “one best way” of creating configuration rules, allowing it to remove user confusion that exists with Nagios today.
To help simplify the configuration of multiple hosts, Icinga 2 supports the use of templates. Templates are used to apply services and notifications to hosts, or downtimes and dependencies to services.
7. Open Source Community Focused
The reason why Icinga created a new open source monitoring product based on Nagios is because they wanted to be more community-focused and adaptive to the dynamic needs of the IT marketplace.
Although Nagios is a strong player in the monitoring space, Icinga identified several pain points that they wanted to address like the UI, the confusing configuration format and scalability limitations. Another area that Icinga shines as a company is its pattern of frequent innovation and growth, releasing new versions every few months, while maintaining compatibility between Icinga2 and the existing Nagios plugins.
Icinga 2 is a strong monitoring tool if you need to monitor general availability, connectivity and infrastructure health, or if you require a flexible and configurable monitoring platform. When it comes to deep application monitoring or netflow, there are narrowly focused tools that excel in those areas. Icinga 2 can be customized to give application and netflow checks, but it only makes sense if your intended data points are limited in scope.
Overall Icinga 2 shines because of it’s flexibility, ease of use, and enterprise scalability and performance. It’s worth considering in order to standardize and consolidate some of your existing monitoring toolsets or as an upgrade from Nagios.