Dans le précédent tutoriel d’installation d’Icinga, nous avons installé Icinga avec IDOUTILs. Dans ce tutoriel, nous allons installer Icinga avec les toutes dernières version de paquet que nous avons à disposition.
Ce tutoriel à été tester sur une machine Debian 32bits.
Dans ce tutoriel, nous installerons la dernière version d’Icinga depuis le dépôt git. Cette méthode d’installation recommande une certaine maîtrise de l’utilisation du système Debian, mais permet notamment de personnaliser l’installation d’Icinga selon ses préférences/besoins, et surtout de disposer de la version la plus récente d’Icinga. Le SGBD utilsé est MySQL.
Pré-requis
Installation des dépendances requises à la mise en place d’Icinga :
1 2 3 4 5 |
$ sudo apt-get install apache2 build-essential libgd2-xpm-dev $ sudo apt-get install libjpeg62 libjpeg62-dev libpng12-0 libpng12-dev $ sudo apt-get install mysql-server mysql-client libdbi0 libdbi0-dev libdbd-mysql $ sudo apt-get install snmp libsnmp5-dev libssl-dev $ sudo apt-get install git |
Création d’un utilisateur icinga et des groupes nécessaires
L’utilisateur icinga sert à exécuter les composants/démons Icinga, sans avoir recours à un utilisateur avec des privilèges (root, sudo-users). L’utilisateur icinga ne doit pas être un super-utilisateur (sudo-user).
1 2 3 4 5 6 |
$ sudo groupadd -g 6000 icinga $ sudo useradd -u 6000 -g icinga -d /usr/local/icinga -c "Icinga User" icinga $ sudo passwd icinga $ sudo groupadd icinga-cmd $ sudo usermod -a -G icinga-cmd icinga $ sudo usermod -a -G icinga-cmd www-data |
Téléchargement de la dernière version Icinga dans le dépôt git
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
$ sudo cd /usr/src/ $ sudo git clone git://git.icinga.org/icinga-core.git $ cd icinga-core/ $ sudo git submodule init $ sudo git submodule update $ sudo ./configure --with-nagios-user=icinga --with-nagios-group=icinga --with-command-user=icinga --with-command-group=icinga-cmd --prefix=/usr/local/icinga --enable-idoutils --enable-ssl $ sudo make all $ sudo make install $ sudo make install-init $ sudo make install-commandmode $ sudo make install-idoutils $ sudo make install-config $ sudo make install-webconf $ sudo make install-api |
Téléchargement des Plugins Nagios
Vous pouvez aller chercher la dernière version de Nagios ici.
1 2 3 4 5 6 7 |
$ cd /tmp
$ wget http://downloads.sourceforge.net/project/nagiosplug/nagiosplug/1.4.16/nagios-plugins-1.4.16.tar.gz
$ tar xvf nagios-plugins-1.4.15.tar.gz
$ cd nagios-plugins-1.4.15
$ sudo ./configure --prefix=/usr/local/icinga --with-cgiurl=/icinga/cgi-bin --with-htmurl=/icinga --with-nagios-user=icinga --with-nagios-group=icinga
$ sudo make
$ sudo make install
|
Configuration de IDOutils
1 2 |
$ sudo mv /usr/local/icinga/etc/idomod.cfg-sample /usr/local/icinga/etc/idomod.cfg $ sudo mv /usr/local/icinga/etc/ido2db.cfg-sample /usr/local/icinga/etc/ido2db.cfg |
Editez le fichier /usr/local/icinga/etc/ido2db.cfg et vérifiez la présence des champs suivants:
use_ssl=1
socket_type=tcp
Editez le fichier /usr/local/icinga/etc/idomod.cfg et vérifiez la présence des champs suivants:
use_ssl=1
output_type=tcpsocket
output=127.0.0.1
Editez le fichier de configuration principal d’Icinga, recherchez le champ « broker_module » et décommentez l’exemple:
vi /usr/local/icinga/etc/icinga.cfg
broker_module=/usr/local/icinga/bin/idomod.o config_file=/usr/local/icinga/etc/idomod.cfg
Editez le fichier de configuration des modules pour IDO et décommentez les lignes suivantes:
$ vi /usr/local/icinga/etc/modules/idoutils.cfg
define module{
module_name ido_mod
path /usr/local/icinga/bin/idomod.o
module_type neb
args config_file=/usr/local/icinga/etc/idomod.cfg
}
Création de la base de données pour IDOutils
ancez le daemon de MySQL:
$ sudo /etc/init.d/mysql start
$ mysql -u root -p
mysql> CREATE DATABASE icinga; GRANT USAGE ON *.* TO ‘icinga’@’localhost’ IDENTIFIED BY ‘icinga’ WITH MAX_QUERIES_PER_HOUR 0 MAX_CONNECTIONS_PER_HOUR 0 MAX_UPDATES_PER_HOUR 0; GRANT SELECT , INSERT , UPDATE , DELETE ON icinga.* TO ‘icinga’@’localhost’;
mysql> FLUSH PRIVILEGES;
mysql> quit
Importation du schéma de la base de données:
1 |
$ mysql -u root -p icinga < /usr/src/icinga-core/module/idoutils/db/mysql/mysql.sql |
Editez le fichier de configuration de ido2db pour rajouter les paramètre de la base de données que vous venez de créer:$ vi /usr/local/icinga/etc/ido2db.cfg
db_servertype=mysql
db_port=3306
db_user=icinga
db_pass=icinga
Configuration de l’interface web classique
1 2 3 4 |
$ cd /usr/src/icinga-core $ sudo make cgis $ sudo make install-cgis $ sudo make install-html |
Création de l’utilisateur de l’interface web d’Icinga:
1 |
$ sudo htpasswd -c /usr/local/icinga/etc/htpasswd.users icingaadmin |
Redémarrage des services pour une relecture des fichiers de configuration:
1 2 3 |
$ sudo /etc/init.d/ido2db start $ sudo /etc/init.d/icinga start $ sudo /etc/init.d/apache2 restart |
Activation de Icinga au démarrage de la machine:
1 |
$ sudo update-rc.d icinga defaults |
Connectez-vous à l’interface web d’Icinga
Pour vous connecter à votre interface Icinga, il faut ouvrir votre navigateur Internet et entrer cette adresse :
http://localhost/icinga
ou
http://VOTRE_ADRESSE_IP/icinga
Vérification que IDO est bien fonctionnel
Solution 1: une requête SQL:
root@icingamonitor:~# mysql -u icinga -p icinga -e ‘select host_id, instance_id, display_name, address from icinga_hosts;’
Enter password:
+———————————–+
| host_id | instance_id | display_name | address |
+———————————–+
| 3 | 1 | localhost | 127.0.0.1 |
+———————————–+
Solution 2: dans les logs d’Icinga:
1 |
$ sudo tail -f /usr/local/icinga/var/icinga.log |
Si vous avez ceci quelques lignes du genre d’affiché, c’est que tout est correct:
[1306596840] idomod: Successfully connected to data sink. 0 queued items to flush. [1306596840] Event broker module '/usr/local/icinga/bin/idomod.o' initialized successfully. [1306596840] Finished daemonizing... (New PID=12792) [1306596845] Caught SIGTERM, shutting down... [1306596845] Successfully shutdown... (PID=12792) [1306596845] idomod: Shutdown complete. [1306596845] Event broker module '/usr/local/icinga/bin/idomod.o' deinitialized successfully. [1306596859] Icinga 1.5.0 starting... (PID=12819) [1306596859] Local time is Sat May 28 17:34:19 CEST 2011 [1306596859] LOG VERSION: 2.0 [1306596859] idomod: IDOMOD 1.5.0 (08-17-2011) Copyright (c) 2005-2008 Ethan Galstad (nagios@nagios.org), Copyright (c) 2009-2011 Icinga Development Team (http://www.icinga.org)) |
Pour plus de tutoriel sur Icinga et la supervision, je vous invite à regarder ici : Supervision & Icinga