Beyond the basic tests


I’ve been fiddling with Icinga for the last couple weeks, and now I have a basic setup that works fine.

In my work I have to monitor a modest network of 14 Linux servers (public and behind a NAT).

I setup a (public) machine running Icinga, and it’s now making the basic checks on all my servers:

  • load
  • disk
  • swap
  • users
  • procs
  • ssh (public servers only)

Now I’m thinking: where do I go from here?

The servers are all running various services: Dnsmasq, DNS with BIND, Web server with Apache, PHP & MySQL and various virtual hosts, mail server with Postfix and Dovecot, they’re all synchronized via NTP (some run ntpd, some Chrony). They’re all running CentOS 7 currently (hey there’s a plugin for checking updates). There’s an XMPP server, an IRC server, an SFTP server, etc.

So I thought I’d ask before I haphazardly google all that stuff and wade through tons of mixed tutorials all over the Internet. Is there some sort of centralized place somewhere that answers these two questions:

  • What can I check with my Icinga installation?
  • How do I put the corresponding checks into practice?

Cheers from France,


Hey Niki,

you could start be scolling through the docs here:

Take a look at the checks there and see what interests you. “Advantage” of most of those checks is that the command definition is already implemented in Icinga (ITL - Icinga Template Library), so you only need to download the relevant scripts, put them into the PluginDir folder, /usr/lib/nagios/plugins for Debian/Ubuntu and /usr/lib64/nagios/plugins RHEL/CentOS. Then you are good to go for creating templates and checks.

Checks you can/should implement right away are some form of ntp monitoring, a check on the master for the icinga status (check command icinga) and the ido status (check command ido).

Other sources of good checks are:
or searching on the web with keywords like “myproduct monitoring” or “myproduct monitoring nagios”

As for the definition of the checks I would also suggest the docs and then practice :wink:
The basic order is: check command -> service template -> service apply rule
If you have any troubles then you can search the community and/or ask here again :slight_smile:

1 Like

Thanks very much for your detailed answer.

I followed up on your suggestion and - first things first - started with NTP monitoring.

It looks like I have a partial success.

  • Old servers with ntpd seem to work fine.
  • Newer machines with chrony instead of ntpd don’t work.

On chrony machines I get various errors like “No response from NTP server”.

Before going further down into that rabbit hole, I guess this has to be a common problem, since chrony is the default on CentOS since 7.0.

Curiously enough I didn’t find any documentation except a blog article that wasn’t helpful.



Hello @microlinux!

I’m afraid I’ve not enough time to list all your possibilities – Icinga is pretty unlimited. :wink:

However I miss the following ones in your list:



1 Like