Académique Documents
Professionnel Documents
Culture Documents
Etude Nagios PDF
Etude Nagios PDF
Marque Brand
Ecrit par Written by M. Grgory Bernard
Destinataires Recipients
Copie Copy
Trs chers,
Vous trouverez dans les pages suivantes une explication dtaille du fonctionnement de loutil de monitorage de
rseau Nagios. Cet outil bas sur une licence GPL de version 2 et fonctionne originellement sur la plate-forme
Linux.
La courte tude qui vous est propose pour but danalyser le produit Nagios en se servant dune grille simple
et performante (quoi, pourquoi, comment).
Pour toutes questions relatives lutilisation ou la mise en uvre de ce produit, nhsitez pas me contacter
ladresse nagios@todo.biz
Bonne lecture.
Grgory Bernard
Directeur
Avant propos :
Je tenais tout dabord remercier Ethan Galstad et la communaut de dveloppeurs qui ont particip la mise au
point de Nagios. Cet outil contribue en grande partie la qualit des services Internet de ma socit, et il me
permet de passer des week-end agrables tout en tant prvenu du moindre incident sur mon tlphone
portable.
Nagios est devenu au fur et mesure de ses diffrentes amliorations successives un partenaire simple
consulter et remarquablement fiable et efficace.
1. Le Pourquoi ?
Avec lexplosion des systmes dinformation rpartis au milieu des annes 90, les administrateurs de rseaux et
des systmes ont d apprendre grer la supervision des services et des serveurs de faon plus active.
La dcentralisation des systmes dinformation, la transparence des rseaux et la simplification des systmes ont
permis des entreprises de taille moyenne dacqurir des systmes prcdemment rservs de trs grandes
entreprises ou des administrations.
Cette dmocratisation a introduit de nouveaux besoins de gestion et dadministration des systmes. Souvent
propose par les oprateurs dans le cadre de leurs offres commerciales, la supervision des rseaux et des
services peut aujourdhui tre prise en charge par les entreprises moindre cot.
Le produit Nagios est n dans ce contexte. La premire version du logiciel a t cre en Mars 1999 par Ethan
Galstad (nagios@nagios.org) avec comme objectif dassurer la surveillance des htes et des services en vous
prvenant lorsque les choses vont mal .
Bas sur linux, cet outil a principalement t dvelopp pour fonctionner sous des systmes Unix. Afin de le faire
fonctionner, il est ncessaire de possder : un systme Unix et un compilateur C.
Le systme Nagios se distingue de tous ses concurrents par sa politique de licence ouverte (licence GNU
General Public Licence). Celle-ci a permis une distribution massive de ce produit et son utilisation par un public
de novice ou dexpert qui largement contribu son amlioration rapide au cours des huit diffrentes versions
qui se sont succdes depuis trois ans.
Lenny Liebmann ditorialiste pour la revue InternetWeek dfini ainsi le produit : Les produits tels que Nagios
et Webmin, disponibles gratuitement, ont t mis au point par la mme communaut de dveloppeurs que ceux
qui ont faits de Linux une alternative aussi viable dans le domaine des serveurs.
Jeff Davis DAmareda Hess Corp. Houston qui gre plusieurs dizaines de serveur Linux faisait remarquer : Il
est particulirement difficile de justifier des cots dacquisition de systme de gestion de rseau qui cotent plus
cher que vos systmes. La plupart des systmes de gestion de rseaux propritaires sont simplement trop chers
pour nous !.
Nous allons donc tudier plus dans le dtail les diffrents mcanismes mis en uvre dans ce produit et dcouvrir
quels services peuvent tre pris en charge par Nagios.
Cette tude vous est offerte gratuitement par la socit ToDoo elle peut-tre distribue sans aucune limitation.
2. Le quoi grer ?
Une division en couche nous a t propose pour aborder la problmatique du quoi grer ? (cf. schma ci-
dessous). Nagios adopte une grille danalyse simplifie et inspir de la division en couche propose par TCP/IP.
Nagios fait ainsi une synthse par le plus petit commun multiple disponible sur chacun des quipements dont il
se charge de vrifier le fonctionnement. Nagios, la diffrence dautres outils de monitoring nintgre pas
doutil de maintenance en son corps, il se base sur diffrents adaptateurs. Suivant le schma figurant ci-
dessous :
Cette tude vous est offerte gratuitement par la socit ToDoo elle peut-tre distribue sans aucune limitation.
Une procdure de validation classique des dveloppements est ensuite propose (comme cest le cas pour la
plupart des projets Open-Source).
Il existe ce jour 70 adaptateurs diffrents dont la plupart sont crits en C et quelques-uns en PERL. Une
cinquantaine dautres adaptateurs sont ltat de dveloppement et nont pas encore t tests.
Linstallation des adaptateurs est assez simple pour la plupart des systmes UNIX qui possdent les outils GCC
permettant de compiler les sources. Aprs linstallation, les diffrentes librairies sont places dans un rpertoire
de destination du type libexec.
Les adaptateurs crit en C se servent des diffrentes librairies permettant de supporter le transport des requtes
(netutils.h). Laccs aux sources des diffrents adaptateurs permet, pour ceux qui en ont les comptences,
dapporter des modifications maison ;
Les adaptateurs sont appels depuis le fichier nagios.cfg. Ce dernier comprend des lignes de commandes qui se
servent des librairies compiles dans le rpertoire libexec pour tester les services et transmettre la rponse
au serveur Nagios.
Il serait un peu rbarbatif de dresser la liste complte des diffrents adaptateur mis la disposition des
utilisateurs. Nous essaierons donc de les regrouper en catgorie logique suivant la nomenclature suivante :
1. Equipements.
a. check_disk.c permet de tester lespace disque disponible sur les partitions tests. Bas sur
une utilisation de la commande /bin/df
b. get_load_average.c permet de tester la charge dun systme en temps rel. Bas sur la
commande unix uptime ou getloadaverage.
c. check_swap.c permet de tester le swap disque.
d. check_ups.c permet de tester les systmes donduleurs et de dterminer leur tat.
e. check_hpjd.c permet de tester les imprimantes HP qui utilisent Jet Direct.
f. check_temptraxf permet de tester la temprature laide dun module externe Temptrax.
2. Rseaux/Protocoles.
a. check_ping.c permet de vrifier quun hte est vivant sur un rseau, bas sur ICMP.
b. check_mrtgtraf.c ce plugin va vrifier les taux de transfert dun routeur, switch, il est bas
sur les logs au format MRTG.
c. check_nw.c permet de tester les rseaux NetWare.
d. check_udp.c permet de tester les le bon fonctionnement de la couche transport en se
basant sur UDP.
3. Applicatifs :
a. check_by_ssh.c permet dencapsuler des requtes en se servant de ssh comme support.
b. check_radius.c permet de tester les serveurs radius.
4. Services.
a. Il existe plus dune dizaine de adaptateur dans cette catgorie. Nous citerons parmi ceux-ci :
check_dns.c , check_ftp.c , check_http.c , check_imap.c , check_ldap.c ,
check_mysql.c , check_pgsql.c , check_pop.c , check_real.c . Lensemble de ces
noms sont assez explicites pour comprendre la fonction quils peuvent avoir. Le principe est
toujours le mme : formaliser une requte dans le protocole et vrifier l tat de lhte distant.
5. Clients.
a. check_Nagios.c permet de valider le bon fonctionnement des clients Nagios dans le
cadre dune architecture distribue.
Cette tude vous est offerte gratuitement par la socit ToDoo elle peut-tre distribue sans aucune limitation.
Il existe de nombreux autres adaptateurs qui sont encore en cours de dveloppement et qui permettent de faire
des tests aussi varis que :
Une documentation extensive ainsi quun readme est fournie pour les utilisateurs intresss par ces nouveaux
dveloppements et souhaitant y prendre part.
Les htes locaux utilisent un script de connexion directe check_host alors que les htes distants vont se baser
sur des techniques de hirarchies dhtes, permettant ainsi dtablir deux tats : host_unreacheable et
host_down .
En se basant sur les hirarchies dhtes, le script va pouvoir tablir une cartographie de la svrit des problmes
rencontrs et permettre dtablir un diagnostique prcis visant permettre une prise de dcision rapide pour la
rsolution du problme rencontr.
Cette tude vous est offerte gratuitement par la socit ToDoo elle peut-tre distribue sans aucune limitation.
En permettant laccs un daemon fonctionnant sur le client grce au module NRPE et NRPEP (avec un ajout de
lencryption triple DES), Nagios permet dassurer une surveillance distante malgr la prsence de firewall. Il
faudra toutefois ouvrir un port de communication non privilgi pour permettre NRPE de communiquer avec son
client et rcuprer les informations dtat concernant les serveurs dports.
Cette tude vous est offerte gratuitement par la socit ToDoo elle peut-tre distribue sans aucune limitation.
Monitoring dport :
Une nouveaut intressante est aussi larchitecture de passive_check propos par Nagios en alternative aux
commandes active_check .
Afin de permettre un accs aux applications distantes situes derrires un firewall (et sans ouvrir de port de
communication, la diffrence du systme NRPE), Nagios peut utiliser les commandes passive_check ces
commandes permettent aux diffrentes applications gres de soumettre par un systme de external command
file . Les rsultats des commandes externes sont ensuite mis dans la mme file dattente que les services actifs
avant dtre traits.
Le module appel NSCA_client ne fait que transmettre les rsultats collects en local au serveur NSCA
suivant un protocole simple. Afin de sassurer de la confidentialit des rsultats soumis, il est possible dutiliser
lune des mthodes dencryptions suivantes (DES, 3DES, CAST, xTEA, Twofish, LOKI97, RJINDAEL, SERPENT,
GOST, SAFER/SAFER+, etc.).
Il est ainsi possible dutiliser ensemble des systmes de contrle actif et passif suivant les besoins de votre
organisation et la structure de votre rseau.
Cette tude vous est offerte gratuitement par la socit ToDoo elle peut-tre distribue sans aucune limitation.
Monitoring redondant :
Afin dassurer une qualit au niveau mme de loutil de supervision, il est intressant de sassurer de son
fonctionnement constant.
Nagios prvoit ainsi des cas de figure o lun des nuds ou se trouve le serveur Nagios principale tombe,
isolant ainsi le rseau du reste des segments, rendant impossible toute supervision. Pour parer ces cas de figure,
il est possible de configurer un ou plusieurs autres serveurs qui devront prendre le relais dans les cas suivants :
- Enfin le serveur matre doit arrter de superviser tout le rseau et ne plus superviser que son rseau
local si :
o Lhte esclave devient injoignable d un ou plusieurs routeurs ne fonctionnant plus et le
serveur de secours tait joignable.
Les entreprises ont de plus en plus de services grer sur leurs rseaux, aussi bien au niveau des services
rseaux, (SMTP, POP, http, NNTP, ). Quau niveau des htes eux-mmes (charge des processeurs, utilisation
des disques).
Cette tude vous est offerte gratuitement par la socit ToDoo elle peut-tre distribue sans aucune limitation.
Nagios offre :
3. Le comment ?
La faon la plus simple semble tre de se reporter la documentation qui vient dtre traduite en Franais par
Christian Vanguers et Pierre-Antoine Angelini
La mise en uvre du produit ncessite une bonne connaissance du systme Linux, bien que la procdure soit
assez standardise (make, make clean). Une bonne connaissance dApache pourra aussi vous viter de faire
des erreurs en laissant la vue de tous ltat de votre rseau
Afin de raliser une installation efficace, il est ncessaire de bien comprendre les mcanismes qui sont mis en
uvre dans la gestion des ressources par Nagios. Il ne sert rien de se lancer dans une installation complexe
alors que ce dont vous avez besoin se limite un test de ping sur deux ordinateurs.
Cette tude vous est offerte gratuitement par la socit ToDoo elle peut-tre distribue sans aucune limitation.
Pour des administrateurs qui souhaitent avoir un accs leur tableaux de supervision depuis lextrieur de leur
rseau sans laisser le serveur Nagios la vue de tous, le plus simple est dutiliser ssh et le port forwarding .
vous permettra daccder un serveur Nagios dont les ports 80 sont inaccessibles depuis lextrieur. Pour ce
faire vous devez tre root sur votre machine car les ports < 1024 ne peuvent tre manipuls que par root
Il vous suffit ensuite sur votre machine local douvrir un navigateur et de tapper : http://localhost/ pour accder
votre tableau de supervision de faon entirement scurise.
Cette tude vous est offerte gratuitement par la socit ToDoo elle peut-tre distribue sans aucune limitation.