Procédure Nagios

Transcription

Procédure Nagios
Christian NLANDU
Meryeme EL AYACHI
TS2 SIO
Procédure Nagios
Nagios est un logiciel de supervision destiné à vous informer de problèmes éventuels dans
votre système d’informations avant que vos clients, utilisateurs ou managers ne le fassent.
I- LAMP
Avant d'installer Nagios, on installe d'abord les bases: LAMP. LAMP signifie
Linux.Apache.MySQL & PhP. Elle désigne un ensemble de logiciels libres permettant de
construire des serveurs de sites web. Elle nous sera utile pour le programme Nagios.
Linux: Effectuez une mise à jour sur la machine Linux avec les commandes : « apt-get update
» & « apt-get upgrade »
Apache2: On installe Apache2, lancer la commande : « apt-get install apache2 »
MySQL: Ici on va installer le MySQL serveur et client avec cette commande : « apt-get install
mysql-server mysql-client ».
Durant l'implantation de MySQL, il vous demandera de mettre un nouveau mot de passe
pour l'administrateur « root ». Puis, confirmez-le.
PhP: Dernière étape, on passe à l'installation de PhP : « apt-get install php5 php5-mysql
libapache2-mod-php5 ».
Ensuite, on va créer un fichier .php dans /var/www pour vérifier s'il fonctionne ou pas avec
Apache : « nano /var/www/phpinfo.php »
Dans ce texte, on insère « <?php phpinfo(); ?> » et on sauvegarde.
II- Installation Nagios
Maintenant que le LAMP est configuré, on peut mettre en place Nagios : "apt-get install nagios3"
Durant la procédure, il vous demandera un nouveau mot de passe pour le login Nagiosadmin.
Une fois terminé, ouvrez un navigateur web et tapez l'adresse "http://adresse_ip_machine/nagios3"
(l'authentification vous sera demandé)
III- Ajouter un nouvel hôte & 2 services
Avant d'ajouter un nouvel hôte, positionnons nous dans /etc/nagios3 pour créer un dossier c'est
dedans qu' on créera un nouveau fichier (ne pas oublier l'extension .cfg).
Dans le fichier de configuration /etc/nagios3/nagios.cfg , on lui déclare que les nouveaux hôtes se
trouvent dans un fichier avec l'option cfg_file=le_chemin_du_fichier. Je trouve qu'il sera plus simple
d'utiliser l'option cfg_dir car Nagios va chercher dans le dossier ou les fichiers cfg (hôtes, services et
groupes) sont produits. Revenez dans le dossier pour ouvrir le ficher vide et faire ceci :
- Création d'un hôte:
define host {
use
host_name
alias
address
hostgroups
}
generic-host
V-Win7
Virtual Win 7 PC
172.16.50.48
V-Machines
; Ici on utilise un template (par défaut)
; Le nom qu'on donne à un hôte
; Son alias
; L'adresse IP de l'hôte
;Membre d'un groupe "V-Machines"
define host {
use
host_name
alias
address
hostgroups
}
generic-host
V-DNS
Virtual DNS
172.16.50.55
V-Machines
; Ici on utilise un template (par défaut)
; Le nom qu'on donne à un hôte
; Son alias
; L'adresse IP de l'hôte
;Membre d'un groupe "V-Machines"
On peut aussi créer un groupe d'hôtes :
define hostgroup {
hostgroup_name
alias
}
V-Machines
Virtual Machines
; Le nom qu'on donne au groupe
; Son alias
Maintenant qu'un hôte a été déclaré, il faudra maintenant lui associer un service ou plusieurs. Par
exemple, on va tester la disponibilité de l'hôte avec le service 'PING'. Faire la chose suivante:
define service {
use
host_name
service_description
check_command
}
generic-service
; Ici on utilise un template (par défaut)
V-Win7
; Hôte à qui on lui associe le service
Ping
; Son alias
check_ping!100.0,20%!500.0,60% ; On fait appel à la commande
Enregistrer le fichier et faites "service nagios3 reload" ou "/etc/init.d/nagios3 reload" (ou bien à la
place de reload, restart). Votre hôte doit être visible sur l'interface web Nagios.
On va ajouter un deuxième service qui est la vérification du disque dur d'un serveur DNS tournant sur
Windows (c'est-à-dire sa capacité totale, capacité disponible, etc...) avec la commande check_nt.
Pour cela, il faudra télécharger NSClient++ pour la machine Windows. Attention aux versions 32bits
et 64bits (Pour le vérifier, voir dans Panneau de configuration > Système et sécurité > Système)
Durant l'installation de NSClient++, il vous demande de rentrer l'adresse IP de Nagios avec son mot
de passe.
Une fois installé, redémarrer le NSClient++ (Démarrer > Exécuter et taper « services.msc ») et
ensuite faire un clique droit dessus, une fenêtre apparait et dans l'onglet "Connexion", Sélectionner
Ouvrir une session en tant que « Compte système local » et cocher « Autoriser le service à interagir
avec le Bureau ».
Sur le serveur Nagios, on va se rendre dans le répertoire /usr/lib/nagios/plugins ou l'on va retrouver
toute une liste de plugins dont un qui va nous intéresser est le check_nt. Faire la chose suivante:
Tapez : "./check_nt -H adresse_ip_de_la_machine -p port NSClient (12489 par défaut) -v
USEDDISKSPACE -s 'mot_de_passe' -l lettre_de_la_racine_windows (ex. "c" pour c:\) -w (seuil
avertissement) 80 -c (seuil critique) 90"
Il vous retourne les détails du disque dur de la machine windows (capacité totale, capacité
disponible, etc...)
On va ensuite se positionner dans le répertoire /etc/nagios-plugins/config , dans le fichier nt.cfg
pour créer une sorte de boîte qui va contenir la commande à rappeler et des arguments. Exemple, ici
j'ai crée ma boîte "verifdskw".
define command {
command_name
verifdskw
command_line
/usr/lib/nagios/plugins/check_nt -H '$HOSTADDRESS$' -p 12489 -s
'$ARG1$' -v '$ARG2' -l '$ARG3$' -w '$ARG4$' -c '$ARG5$'
}
Enregistrer le fichier nt.cfg puis on va retourner sur le fichier de configuration des hôtes. Ajoutez
maintenant ce service :
define service {
use
generic-service
; Ici on utilise un template (par défaut)
host_name
V-DNS
; Hôte à qui on lui associe le service
service_description
Disk capacity
; Son alias
check_command
verifdskw!azerty!USEDDISKSPACE!c!80!90 ; On fait appel à la boîte
conçu contenant la commande check_nt avec les variables imposées (le mot de passe, la variable à
checker 'USEDDISKSPACE', la lettre de la partition de la machine Windows, le pourcentage pour le
seuil d'avertissement et critique)
}
Enregistrer le fichier et faites "service nagios3 reload" ou "/etc/init.d/nagios3 reload" . Il faudra
attendre environ 10-20 secondes pour que cela prenne effet et le service devrait apparaître sur
l'interface Nagios.
Pour allez plus vite, sur l'interface web de Nagios, cliquez sur un service d'un hôte > Re-schedule the
next check of this service (à droite de l'écran avec l'horloge comme logotype). Cliquez ensuite sur
Commit (assurez vous que le "Force Check" est coché d'abord).
S'il vous retourne cet erreur :
Sorry, but Nagios is currently not checking for external commands, so your command will not be
committed!
Faire la chose suivante:
Dans le fichier /etc/nagios3/nagios.cfg, à la ligne check_external_commands, remplacez la valeur 0
par le chiffre 1.
Exécuter ensuite les commandes suivantes (en tant que root bien évidemment!):
dpkg-statoverride --update --add nagios www-data 2710 /var/lib/nagios3/rw
dpkg-statoverride --update --add nagios nagios 751 /var/lib/nagios3
chmod 2770 /var/lib/nagios3/rw
/etc/init.d/nagios3 stop
apache2ctl restart
/etc/init.d/nagios3 start
Voila vous avez réussi à ajouter des machines dans Nagios avec leurs services, visible depuis
l'interface web Nagios. Vous pouvez aussi déclarer les parents pour un hôte pour réaliser
proprement la cartographie Nagios, en ajouter cette option dans un hôte:
" parents
nom_de_ou_des_hôte(s)"
...ou bien ajouter des icones. L'emplacement des icônes se trouve dans le répertoire
/usr/share/nagios3/htdocs/images/logos. Si vous importez vous même une image (format 40x40
maxi.), pensez à faire un "chmod u-x nom_de_l'image".

Documents pareils