Review: Icinga enterprise-grade, open-source network monitoring that scales

Icinga's management software is well-documented, easy to install and has plenty of plug-ins, but could benefit from an easier install

Current Job Listings

Continuing our quest for robust, enterprise-grade open source network monitoring, we tested Icinga Core 2 (version 2.8.1) and the stand-alone Icinga Web 2 interface. Created in 2009 as a fork of the Nagios network monitoring tool, Icinga has come a long way.

We found Icinga to be a powerful monitoring tool with many great features. The Core install is straightforward and basic monitoring is easy with either pre-configured templates or plugins. However, we discovered that the Web install is a bit more complicated and could stand to be streamlined.

Icinga runs on most of the popular Linux distros and the vendor provides detailed installation instructions for Ubuntu, Debian, Red Hat (including CentOS and Fedora) and SUSE/SLES. Icinga does not publish specific hardware requirements, but our installation ran well on a quad-core processor with 4 GB RAM and this is probably a good starting point for a basic installation.

As with most monitoring applications, storage is an important variable that largely depends on the number of hosts and services monitored and how often information is written to the log. With too little storage, the logs can easily fill up and freeze the system.

Network World > Open-Source Monitoring Tools > Icinga > Pros + Cons IDG

We were able to quickly install Icinga on Ubuntu 16.04 LTS with just a few simple commands at the prompt. The first step was to download the necessary files to the local repository, and then install the actual Icinga application. Icinga can be used to monitor the availability of hosts and services from switches and routers as well as a variety of network services like HTTP, SMTP and SSH.


One of Icinga’s strengths is the availability of plugins that can be used for most monitoring tasks, and as part of the installation you need to install the basic monitoring plugins to check external services. There are literally thousands of plugins available, both directly from the Icinga Exchange and from third parties. For third-party plugins from unknown sources, it is a good security practice to examine the source code and compile it yourself, or stick to known and trusted plugin authors.

Granular monitoring capabilities

Icinga provides impressive granularity as to how hosts and services are monitored. For instance, you can create what Icinga calls a ‘host object’, which is essentially a rule or task, to monitor a server.  For each server you can define what services to check, from a simple ping command to make sure the server is on and responding, or checking to see if the HTTP or FTP services are running. Icinga provides flexibility in how often to check, with various warning levels defining how and who to alert when something needs attention.

Icinga uses a series of configuration files to store information about how the infrastructure is monitored. In addition to the 10-plus default files, you can create your own custom files and include these as part of the overall Icinga configuration. While this approach might be a bit overwhelming for first-time users, we found that the concepts are fairly easy to grasp once you spend some time with the various files. Icinga provides templates that cover most scenarios, making it easier to customize its use in your environment.

To continue reading this article register now

Now read: Getting grounded in IoT