Nous allons installer le logiciel de supervision "Icinga". La version utilisée est la 1.9.0.
Icinga nécessite des paquets supplémentaires.
#
yum install xinetd php-soap gd-devel glib2-devel fping perl-GD libdbi \
libdbi-drivers libdbi-devel libdbi-dbd-mysql perl-Crypt-DES perl-Net-SNMP \
perl-Class-Accessor perl-Config-Tiny perl-Params-Validate perl-ExtUtils-Embed
Démarrez le service "xinetd" et redémarrer le service "Apache".
#
service xinetd start
#
service httpd restart
Créez l'utilisateur et le groupe "icinga".
#
groupadd -g 6000 icinga
#
useradd -u 6000 -g icinga -d /usr/local/icinga -c "Icinga User" icinga
#
chmod 755 /usr/local/icinga
#
passwd icinga
Changement de mot de passe pour l'utilisateur icinga.
Nouveau mot de passe :
<= Tapez un mot de passe
#
groupadd icinga-cmd
Assignez les utilisateurs "apache" et "icinga" au groupe "icinga-cmd" :
#
usermod -a -G icinga-cmd apache
#
usermod -a -G icinga-cmd icinga
Le site Internet d'Icinga se trouve à l'adresse : https://www.icinga.org.
Créez le répertoire [/root/telech/icinga] puis téléchargez le fichier "icinga-1.9.0.tar.gz" dans ce répertoire.
#
mkdir /root/telech/icinga
#
cd /root/telech/icinga
#
wget http://sourceforge.net/projects/icinga/files/icinga/1.9.0/icinga-1.9.0.tar.gz
Copiez l'archive dans le répertoire [/usr/local/src] puis décompressez-la.
#
cp icinga-1.9.0.tar.gz /usr/local/src
#
cd /usr/local/src
#
tar xvzf icinga-1.9.0.tar.gz
Positionnez-vous dans le répertoire [./icinga-1.9.0] puis lancez la configuration de l'application.
#
cd icinga-1.9.0
#
./configure --prefix=/usr/local/icinga \
--enable-nanosleep \
--enable-event-broker \
--enable-idoutils \
--enable-embedded-perl \
--enable-ssl \
--with-icinga-user=icinga \
--with-icinga-group=icinga \
--with-command-user=icinga \
--with-command-group=icinga-cmd \
--with-web-user=apache \
--with-web-group=apache \
--with-cgiurl=/icinga/cgi-bin \
--with-htmurl=/icinga \
--with-perlcache
Lancez la compilation.
#
make all
Installez l'application.
#
make install
Installez les services.
#
make install-init
Installez et configurez les permissions sur le répertoire des fichiers de commandes externes.
#
make install-commandmode
Installez les exemples.
#
make install-eventhandlers
Installez le plugin IDOUtils.
#
make install-idoutils
Installez les fichiers de configuration.
#
make install-config
Installez l'interface Web d'Icinga.
#
make install-webconf
Relancez le service "Apache".
#
service httpd restart
Les "plugins" sont des scripts qui permettent de collecter des données sur les composants supervisés.
Le site Internet des "plugins" se trouve à l'adresse : http://www.nagios.org/download/plugins.
Positionnez-vous dans le répertoire [/root/telech/icinga/] puis téléchargez l'archive "nagios-plugins-1.4.16.tar.gz".
#
cd /root/telech/icinga
#
wget http://prdownloads.sourceforge.net/sourceforge/nagiosplug/ \
nagios-plugins-1.4.16.tar.gz
Copiez l'archive dans le répertoire [/usr/local/src] puis décompressez-la.
#
cp nagios-plugins-1.4.16.tar.gz /usr/local/src
#
cd /usr/local/src
#
tar xvzf nagios-plugins-1.4.16.tar.gz
Changez, sur le répertoire [nagios-plugins-1.4.16], le propriétaire et le groupe en "root:root".
#
chown -R root:root nagios-plugins-1.4.16
Attention ! | |
---|---|
Vous devez installer le protocole SNMP sur le serveur Linux avant de lancer la compilation. Dans le cas contraire, le plugin "check_snmp" ne sera pas compilé ! |
Positionnez-vous dans le répertoire [nagios-plugins-1.4.16] puis lancez la configuration de l'application.
#
cd nagios-plugins-1.4.16
#
./configure --prefix=/usr/local/icinga \
--enable-perl-modules \
--with-nagios-user=icinga \
--with-nagios-group=icinga \
--with-cgiurl=/icinga/cgi-bin
Lancez la compilation.
#
make all
Installez les "plugins".
#
make install
IDOUtils est un module qui permet de stocker la configuration d'Icinga et les résultats de contrôle dans une base de données MySQL.
Commencez par renommer les fichiers "ido2db.cfg-sample", "idomod.cfg-sample" et "./modules/idoutils.cfg-sample".
#
cd /usr/local/icinga/etc
#
mv ido2db.cfg-sample ido2db.cfg
#
mv idomod.cfg-sample idomod.cfg
#
mv ./modules/idoutils.cfg-sample ./modules/idoutils.cfg
Modifiez le fichier "ido2db.cfg".
#
vim ido2db.cfg
lock_file=/usr/local/icinga/var/ido2db.lock
ido2db_user=icinga
ido2db_group=icinga
# socket_type=unix
<= Ajoutez le signe # pour désactiver
socket_type=tcp
<= Retirez le signe # pour activer
# socket_name=/usr/local/icinga/var/ido.sock
<= Ajoutez le signe # pour désactiver
# socket_perm=0755
<= Ajoutez le signe # pour désactiver
tcp_port=5668
use_ssl=1
<= Remplacez "0" par "1"
db_servertype=mysql
db_host=localhost
db_port=3306
db_name=icinga
db_prefix=icinga_
db_user=icinga
db_pass=icinga
<= A modifier si nécessaire
..............................
Modifiez le fichier "idomod.cfg".
#
vim idomod.cfg
instance_name=default
# output_type=file
output_type=tcpsocket
<= Retirez le signe # pour activer
# output_type=unixsocket
<= Ajoutez le signe # pour désactiver
# output=/usr/local/icinga/var/ido.dat
output=127.0.0.1
<= Retirez le signe # pour activer
# output=/usr/local/icinga/var/ido.sock
<= Ajoutez le signe # pour désactiver
tcp_port=5668
use_ssl=1
<= Remplacez "0" par "1"
Affichez le contenu du fichier "./modules/idoutils.cfg". Vérifiez que votre fichier contient les lignes ci-dessous.
#
cat ./modules/idoutils.cfg
define module{
module_name idomod
module_type neb
path /usr/local/icinga/lib/idomod.so
args config_file=/usr/local/icinga/etc/idomod.cfg
}
Modifiez le fichier "icinga.cfg".
#
vim icinga.cfg
..............................
broker_module=/usr/local/icinga/lib/idomod.so config_file=/usr/local/icinga/etc
/idomod.cfg
<= Retirez le signe # pour activer - Ligne 276
..............................
date_format=euro
<= Remplacez "us" par "euro" - Ligne 1252
..............................
admin_email=webmaster@sm.fr
<= Tapez une adresse E-Mail valide - Ligne 1406
# admin_pager=pageicinga@localhost
<= Ajoutez le signe # pour désactiver
..............................
Créez la base de données icinga sous MySQL.
#
cd /
#
mysqladmin -u root -p create icinga
Créez l'utilisateur "icinga" et attribuez-lui les droits SELECT, INSERT, UPDATE, DELETE sur la base "icinga".
#
mysql -u root -p
mysql>
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;
mysql>
GRANT USAGE ON *.* TO 'icinga'@'127.0.0.1' IDENTIFIED BY \
'icinga' WITH MAX_QUERIES_PER_HOUR 0 MAX_CONNECTIONS_PER_HOUR 0 \
MAX_UPDATES_PER_HOUR 0;
mysql>
GRANT USAGE ON *.* TO 'icinga'@'esx10' IDENTIFIED BY \
'icinga' WITH MAX_QUERIES_PER_HOUR 0 MAX_CONNECTIONS_PER_HOUR 0 \
MAX_UPDATES_PER_HOUR 0;
mysql>
GRANT SELECT, INSERT, UPDATE, DELETE ON icinga.* TO 'icinga'@'localhost';
mysql>
GRANT SELECT, INSERT, UPDATE, DELETE ON icinga.* TO 'icinga'@'127.0.0.1';
mysql>
GRANT SELECT, INSERT, UPDATE, DELETE ON icinga.* TO 'icinga'@'esx10';
mysql>
flush privileges;
mysql>
exit
Remplissez la base de données icinga.
#
cd /usr/local/src/icinga-1.9.0/module/idoutils/db/mysql
#
mysql -u root -p icinga < mysql.sql
Vérifiez, dans le fichier "/usr/local/icinga/etc/ido2db.cfg" la présence des lignes suivantes :
#
vim /usr/local/icinga/etc/ido2db.cfg
..............................
ido2db_user=icinga
ido2db_group=icinga
..............................
db_servertype=mysql
..............................
db_port=3306
db_name=icinga
<= A modifier si nécessaire
..............................
db_user=icinga
db_pass=icinga
<= A modifier si nécessaire
..............................
#
cd /
Positionnez-vous dans le répertoire [/usr/local/src/icinga-1.9.0] puis installez l'interface Web.
#
cd /usr/local/src/icinga-1.9.0
#
make cgis
#
make install-cgis
#
make install-html
#
cd /
Créez l'utilisateur "icingaadmin" et attribuez-lui un mot de passe. Ce compte servira pour l'authentification Web.
#
htpasswd -c /usr/local/icinga/etc/htpasswd.users icingaadmin
#
chmod 444 /usr/local/icinga/etc/htpasswd.users
Redémarrez le service Web puis démarrez les services "ido2db" et "icinga".
#
service httpd restart
#
service ido2db start
#
service icinga start
Ajoutez les services "ido2db" et "icinga" au démarrage de Linux.
#
chkconfig --add ido2db
#
chkconfig --add icinga
Redémarrez le système.
Lancez le navigateur Internet à l'adresse : http://esx10.sm.fr/icinga. Le compte utilisateur est "icinga" et le mot de passe est "password".
Icinga est installé et opérationnel !