:.     Home     .:.     Cours     .:.     Faits divers     .:.     Blagues     .:.     Liens     .:.     Perso     .:

 

Installation et paramétrages de Nagios
sous linux


Nagios est un programme vraiment très passionnant. J’en ai entendu parlé depuis longtemps, mais ce n’est depuis peu que je l’ai installé. C’est un open source permettant de surveiller des machines, des services, des réseaux... Il aide l'administrateur réseau dans sa tâche de monitoring, un peu comme MRTG. Mais il permet de vraiment détecter des problèmes plus rapidement que MRTG, et aussi de controler plus de choses. Cependant, je pense que MRTG et Nagios sont deux outils complémentaires, et j’entends bien les utiliser tous les deux : MRTG pour me produire mes graphes et autres statistiques, Nagios pour me détecter rapidement les pannes. Alors, trêve de bavardages et passons à l’installation de Nagios.

Avant de continuer, pour les novices de Nagios comme moi, il faudrait savoir que cette installation et configuration de Nagios n’est pas évidente. Il faut se préparer psychologiquement à passer du temps sur Nagios pour le faire démarrer, paramétrer et marcher correctement comme vous le voulez.

Je ne dirai pas mieux que la personne qui a écrit ceci : « Relax ­ its going to take some time. Don't expect to be able to compile Nagios and start it up right off the bat. Its not that easy. In fact, its pretty difficult. If you don't want to spend time learning how things work and getting things running smoothly, don't bother using this software. Instead, pay someone to monitor your network for you or hire someone to install Nagios for you. :­) »

C’est pas pour vous effrayer, mais juste vous avertir que ça pourrait prendre du temps.

 

1. Téléchargement :

Allez sur www.nagios.org, et téléchargez une version de nagios.
Par exemple, moi je viens d’installer la 1.2 depuis http://prdownloads.sourceforge.net/nagios/nagios-1.2.tar.gz

2. Compilation et installation :

Je suppose que vous avez téléchargé le fichier nagios-1.2.tar.gz.
$]# tar -zxvf nagios-1.2.tar.gz // Le décompresser
$]# cd nagios-1.2 // Accéder au répertoire créé
A ce niveau, je vous conseille vivement de lire le fichier INSTALL
$]# ./configure // Initialiser les variables et créer le Makefile
$]# /usr/sbin/useradd nagios -s /sbin/nologin -M -c "Nagios Program"
$]# make all // Compiler
$]# make install // Installer Nagios
Jusqu’ici, il ne doit pas avoir de problème sérieux à résoudre concernant Nagios. Tout roule. Avec cette installation par défaut, toute l'installation se trouve dans « /usr/local/nagios/ » et c’est dans ce répertoire que vous aurez à beaucoup travailler.

3. Configuration du joujou :

$]# make install-config // Installation de fichiers contenant des exemples de config
$]# make install-init // Installation des scripts de démarrage de Nagios
Attaquez-vous d’abord au script de démarrage auquel il faut apporter quelques petites retouches (c’est plus facile que ce qui va suivre, mais vous pouvez bien sauter cette étape et la faire à la fin).

a) Modifications au fichier /etc/rc.d/init.d/nagios
$]# vi /etc/rc.d/init.d/nagios // Editer le fichier nagios
Dans ce fichier, apportez ces modifications :
i – « if ps -p $NagiosPID » ==> « if ps -P $Nagios » // Seulement si vous êtes sous redhat ou autres fedora. Moi j’installe sous fedora core 4. Dans le cas contraire, ne pas toucher.
ii – Dans la section start, mettre en commentaire la ligne commençant par « su -l » et tapez ces lignes tout juste après :

touch $NagiosVar/nagios.log $NagiosSav
chown nagios.nagios -R ${prefix}/var

iii – A la fin de la section start, tapez : chmod o+w $NagiosCmd

b) Création des fichiers de configuration de Nagios :
Toute la config se fait dans "/usr/local/nagios/etc/".
$]# cd /usr/local/nagios/etc/ // Se placer dans le répertoire de config
Si vous avez lancé la commande « make install-config », vous avez déjà exemples de
fichiers de configuration dans ce répertoire. Ils ont des noms du genre xyz.cfg-sample (tel
que nagios.cfg-sample). Renommer tous ces fichiers en leur donnant des noms du genre
xyz.cfg (tel que nagios.cfg). A noter que le principal fichier de configuration est nagios.cfg.
L’éditer en premier.
$]# vi nagios.cfg
i – S’assurer que l’utilisateur et le groupe de nagios est nagios.
nagios_user=nagios
nagios_group=nagios

ii – Activer aussi cette option : check_external_commands=1
Laissez tous les autres paramètres du fichier inchangés, jusqu’à ce que vous soyez plus rodés. Vous pourrez revenir les modifier lorsque vous aurez réussi à faire démarrer proprement Nagios. Vous aurez certainement besoin de consulter ce fichier : file:///usr/local/nagios/share/docs/configmain.html
Ensuite, éditez le fichier "cgi.cfg"
$]# vi cgi.cfg
Il est capital d’avoir ces paramètres dans le fichier :
i – main_config_file=/usr/local/nagios/etc/nagios.cfg // précise le principal fichier de config de Nagios
    physical_html_path=/usr/local/nagios/share
    url_html_path=/nagios
ii - nagios_check_command=/usr/local/nagios/libexec/check_nagios /usr/local/nagios/var/status.log 5 '/usr/local/nagios/bin/nagios'
iii – use_authentication=1 // Vous pouvez mettre cette valeur à 0 pour une période de test si vous avez des problèmes.
iv – default_user_name=nagiosadmin // Cet utilisateur n’a pas besoin d’exister sur le système.
v – Décommentez toutes les lignes du genre #authorized_for_xyz (comme
#authorized_for_configuration_information=nagiosadmin,jdoe), et transformez les en des lignes de ce genre : authorized_for_xyz=nagiosadmin (comme authorized_for_system_information=nagiosadmin)
Vous pourrez aussi modifier le paramètre refresh_rotate si vous le souhaitez.
Documentation : file:///usr/local/nagios/share/docs/configcgi.html
Sauvegardez le fichier.

c) Settings du web interface
J’espère que vous avez bien 1 apache qui est installé et qui tourne sans problème ?! Si ce n’est pas le cas, faites une pause, installez apache et revenez.
Editez le fichier de config de apache. Sous redhat et autres fedora, il s’agit de "/etc/httpd/conf/httpd.conf".
Ajoutez exactement ces deux sections au fichier:

ScriptAlias /nagios/cgi-bin/ /usr/local/nagios/sbin/
<Directory "/usr/local/nagios/sbin/">
AllowOverride AuthConfig
Options ExecCGI
Order allow,deny
Allow from all
</Directory>

Alias /nagios/ /usr/local/nagios/share/
<Directory "/usr/local/nagios/share">
Options None
AllowOverride AuthConfig
Order allow,deny
Allow from all
</Directory>

Ensuite, sauvegardez le fichier et tapez :
$]# apachectl graceful // ou bien
$]# /etc/init.d/httpd restart
Doc : file:///usr/local/nagios/share/docs/installweb.html et file:///usr/local/nagios/share/docs/cgiauth.html

d) Installation de plugins :
Sur http://sourceforge.net/project/showfiles.php?group_id=29880&release_id=94599
télécharger ce plugins : nagios-plugins-1.4.2.tar.gz
$]# tar -zxvf nagios-plugins-1.4.2.tar.gz
$]# cd nagios-plugins-1.4.2
$]# ./configure
$]# make
$]# make install
Il y’aura création du répertoire "/usr/local/nagios/libexec" contenant des fichiers de commande de nagios.
Voilà, tout est terminé ; il ne vous reste plus qu’à tester et faire les quelques derniers petits débogages seuls.

4. Tests et FIN

La commande qui vous permettra de débugguer est :
            /usr/local/nagios/bin/nagios ­dv /usr/local/nagios/etc/nagios.cfg
Cette commande va vous permettre de détecter les erreurs éventuelles dans vos fichiers de configuration. Lisez bien les messages d’erreurs, ils sont très clairs et aident beaucoup. Vous aurez certainement à lire le fichier hosts.cfg (et à le modifier si vous l’avez déjà compris), à modifier les fichier services.cfg et hostgroups.cfg en focntion du fichier hosts.cfg, à peut tout commenter le fichier dependencies.cfg ou même le supprimer, ...
En tous les cas, dès que vous faîtes une modif à l’un de ces fichiers, relancez la commande de test pour voir ce qui s’est passé. Corrigez jusqu’à ce que vous n’ayez plus une seule erreur (les warning, c’est pas trop grave).

Lancez Nagios : /etc/init.d/nagios start
Lancez apache : /etc/init.d/httpd restart
Lancez votre navigateur web, puis tapez dans la barre d’adresse : 127.0.0.1/nagios/
Et voilà votre bébé qui aboye.
Vous pourrez dès lors mieux paramétrer votre nagios, tout en visualisant les résultats de vos paramétrages.

5. houfff (Mais config plus sophistiqués possibles, et d'autres plugins ...)

Sources :

http://www.nagios.org
http://www.linuxfrench.net/article.php3?id_article=1009
http://www.nagios.org/support/mailinglists.php
http://nagiosplug.sourceforge.net/

 


L'information, n'est-elle pas précieuse ? Partageons la tous ensemble !

© Novembre 2005
Roger YERBANGA
www.yerbynet.com