Configuration de Nagios
Nagios est installé, il ne reste plus qu’à le configurer. Voici comment monitorer une infra simple en créant quelques fichiers de configuration.
Pour vérifier votre configuration de Nagios, vous pouvez exécuter la commande
# /usr/local/bin/nagios -v /usr/local/etc/nagios/nagios.cfg
Et pour redémarrer Nagios afin qu’il prenne en compte les dernières versions des fichiers de config
# service nagios restart
Configuration de Nagios
Afin d’avoir une structure un peu hiérarchisée au niveau des machines à surveiller, on peut éditer le fichier nagios.cfg et y ajouter
cfg_dir=/usr/local/etc/nagios/objects
afin que tous les fichiers .cfg contenus dans /usr/local/etc/nagios/objects soient ajoutés.
Dans ce directory « objects », on doit retrouver pour l’instant les fichiers
commands.cfg contacts.cfg timeperiods.cfg
ainsi que les templates et le fichier de config du localhost
generic-host.cfg generic-service.cfg generic-contact.cfg localhost.cfg
Création d’un host
Dans le directory objects, on crée le fichier de config gandalf.cfg qui définit notre premier host (en utilisant notre template generic-host et en remplaçant les « x » par l’adresse IP)
define host{
use generic-host
host_name gandalf
alias Gandalf
address xx.xx.xx.xx
}
Si vous préférez utiliser la résolution DNS plutôt que de spécifier une adresse IP, vous pouvez supprimer la ligne « address ».
Après un redémarrage, le nouveau host apparaît dans les hosts de Nagios.

Ajout de services pour notre nouveau host
Pour créer des services pour un host, on ajoute simplement la liste des services et leurs paramètres à son fichier de config
# Definition du service de Load Average
define service{
use generic-service
host_name gandalf
service_description Load Average
check_command check_load!5.0,4.0,3.0!10.0,8.0,6.0
}
# Definition du service de controle d'url Web
define service{
use generic-service
host_name gandalf
service_description Reponse interface Web
check_command check_http!"http://gandalf"
notifications_enabled 0
}
La commande check_load n’étant pas connue (erreur lors de la vérification des fichiers), il faut la définir en l’ajoutant au fichier commands.cfg
# 'check_load' command definition
define command{
command_name check_load
command_line $USER1$/check_load -w $ARG1$ -c $ARG2$
}
Après un redémarrage de Nagios, l’affichage des services devrait ressembler à ceci

Création d’un contact
On édite le fichier contacts.cfg et on y ajoute un contact et son groupe
define contact{
contact_name jsmith
use generic-contact
alias John Smith
email j.smith@company.be
}
define contactgroup{
contactgroup_name support
alias Support Technique
members jsmith
}
Pour que le groupe Support Technique soit alerté, il faut ajouter le paramètre suivant dans le fichier de config du host (ou dans le template correspondant), soit dans la définition de l’host lui-même, soit dans la définition du service concerné (il faut que le paramètre notifications_enabled soit à 1).
contact_groups support
Si la notification par email est correctement configurée, un mail sera envoyé au déclenchement d’une alerte.
Tags: nagios
Trackback from your site.