Server Monitoring With Icinga On Ubuntu 11.10

Version 1.0
Author: Falko Timme
Follow me on Twitter
Last edited 03/29/2012

Icinga is an enterprise grade open source monitoring system which keeps watch over networks and any conceivable network resource, notifies the user of errors and recoveries and generates performance data for reporting. It is a fork of Nagios. This tutorial explains how to install Icinga on an Ubuntu 11.10 server to monitor this server and another Ubuntu 11.10 server.

I do not issue any guarantee that this will work for you!

 

1 Preliminary Note

In this tutorial I use the following servers:

  • server1.example.com (IP: 192.168.0.100): Icinga server; this server has Apache, MySQL, Postfix, and Courier-IMAP/-POP3 installed that I want to monitor. I have a virtual host named www.example.com on this server.
  • server2.example.com (IP: 192.168.0.101): Icinga client; this server has Apache, MySQL, Postfix, and Dovecot-IMAP/-POP3 installed that I want to monitor.

Because we will run all the steps from this tutorial with root privileges, we can either prepend all commands in this tutorial with the string sudo, or we become root right now by typing

sudo su

 

2 Installing Icinga On The Icinga Host (server1)

server1.example.com:

Icinga can now be installed as follows:

apt-get install icinga icinga-doc icinga-phpapi

You will be asked the following questions:

Apache servers to configure for icinga: <-- apache2

Please provide the password to be created with the "icingaadmin" user. Icinga web administration password: <-- icingaadmin_password
Re-enter password to verify: <-- icingaadmin_password

Configure database for icinga-idoutils with dbconfig-common? <-- No

Afterwards you can access Icinga under http://www.example.com/icinga/. You will be asked for a username (icingaadmin) and the password you specified during installation:

This is how the Icinga web interface looks:

If you look around, you will notice that there are already a few service checks enabled for localhost (= server1.example.com):

Share this page:

2 Comment(s)

Add comment

Comments

From: Anonymous at: 2012-04-01 19:30:39

Wow, thats a nice tutorial, however you should look into using Nagios. What you described is MUCH easier to do with Nagios and if its for a business, look into Nagios XI, it takes all of the work out of configuring it, simple point and click wizards are so easy, even your manager can configure it :)

From: Bill at: 2012-04-01 22:47:12

One thing everyone forgets about is the -n parameter when running plugins (like nrpe). The -n means no ssl. If this is not specified, the server will try to initiate an ssl handshake first. If your clients don't have ssl turned on for NSClient++ or whatever, then hard to track errors occur. I use the -n flag a lot in my environment. All our monitoring happens on a private network with no external access.