Rapport nagios miniprojet

5 618 vues

Publié le

Rapport nagios miniprojet

Publié dans : Logiciels
0 commentaire
6 j’aime
Statistiques
Remarques
  • Soyez le premier à commenter

Aucun téléchargement
Vues
Nombre de vues
5 618
Sur SlideShare
0
Issues des intégrations
0
Intégrations
10
Actions
Partages
0
Téléchargements
411
Commentaires
0
J’aime
6
Intégrations 0
Aucune incorporation

Aucune remarque pour cette diapositive

Rapport nagios miniprojet

  1. 1. Année Universitaire : 2014 / 2015 « Mini Projet En Réseau » Etudiants En 2ème Année Informatique, Administration de systémes et Réseaux Matiére : Administration des services SUJET : « Administration et supervision du réseau Par NAGIOS » = NAGIOS SUPERVISION = Réalisé par :  AYOUB ROUZI  EYSSAM CHAREF Encadré par :  Abdelkarim KHARTOCH U.S.M.B.A
  2. 2. 1 Partie 1 : Présentation et réalisation du projet …………………………………………………….13 Introduction…………………………………………………………………………………………….14 Chapitre 1 : Etat d’art ……………………………………………………………………………...15 I. Supervision……………………………………………………………………………….16 II. Aspects de la supervision………………………………………………………………....16 III. Solutions existantes-Etude comparative………………………………………………….17 1) Les offres éditeurs……………………………………………………………………17 2) Les offres du monde libre…………………………………………………………….20 IV. Problématique…………………………………………………………………………….21 V. Cahier de charge………………………………………………………………………….22 VI. Choix d’une machine virtuelle…………………………………………………………....23 Chapitre 2 : NAGIOS……………………………………………………………………………...24 I. Présentation du logiciel de supervision NAGIOS………………………………………..25 II. Fonctionnement de NAGIOS……………………………………………………………..26 III. Installation de NAGIOS…………………………………………………………………..26 IV. Plugins principaux………………………………………………………………………..28 V. Plugins retenus…………………………………………………………………………....29 1) Chek_nt……………………………………………………………………………….29 2) Check_nrpe…………………………………………………………………………...30 3) Check_snmp………………………………………………………………………….30 4) Check_ping…………………………………………………………………………...30 VI. Usage des plugins…………………………………………………………………………30 1) Check_nt & nrpe……………………………………………………………………...30 VII. Installation de premiers greffons…………………………………………………………33 VIII. Premier test de NAGIOS………………………………………………………………...34 IX. Configuration des machines à superviser………………………………………………...36 1) Machine Windows……………………………………………………………………37 2) Machine Linux……………………………………………………………………….37 I. Ajout d’un host…………………………………………………………………………....57 II. Ajout d’un serveur Web…………………………………………………………………..58 III. Ajout d’un service………………………………………………………………………...59 IV. Configuration SNMP sur « Linux »………………………………………………………61 V. Activation du SNMP sur l’hôte « Windows »……………………………………………66 VI. Exportation de la configuration vers NAGIOS…………………………………………...68 Résumé…………………………………………………………………………………………….72 Conclusion…………………………………………………………………………………………73 Bibliographie………………………………………………………………………………………82
  3. 3. 2 Partie1 : Présentation et réalisation du projet
  4. 4. 3 Actuellement aucune entreprise ne peut se passer d'outils informatiques, et très souvent un réseau informatique de taille plus ou moins importante est mis en œuvre. Le nombre des machines dans ces réseaux peut parfois devenir extrêmement élevé; la maintenance ainsi que la gestion de ces parcs informatiques deviennent alors des enjeux cruciaux, d'autant plus qu'une panne du réseau peut parfois avoir des conséquences catastrophiques. C'est pourquoi les administrateurs réseau font appel à des logiciels de surveillance et de supervision de réseaux. Ces logiciels vérifient l'état du réseau ainsi que des machines connectées et permettent à l'administrateur d'avoir une vue d'ensemble en temps réel de l'ensemble du parc informatique sous sa responsabilité. Il peut être aussi informé (par email, par SMS) en cas de problème. Grâce à un tel système, les délais d'interventions sont fortement réduits. Plusieurs logiciels réalisent ces taches, comme par exemple Websense, Tivoli, Observer, Hp Openview, Ciscoworks, Patrol et d'autres, mais certains sont payants. Dans ce domaine, un logiciel fait office de référence: NAGIOS. En effet NAGIOS est très performant et possède une prise en main assez intuitive. Il s'installe sur une machine possédant un système d'exploitation Linux, mais peut superviser aussi bien des machines Linux que Windows. Cet outil permet également une supervision des équipements réseaux (routeur, switch), ce qui est primordial pour l'utilisation que l'on va en faire. De plus, NAGIOS est un outil Open source: Chaque société peut l'adapter comme elle lui semble. Puis, la société ne payera pas de licence: Elle ne payera que les frais de formation, d'installation et de maintenance. Enfin un autre avantage: Une grosse communauté est réunie autour de ce logiciel, ce qui facilite les recherches de documentations et de réponses à nos questions. Notre projet consiste en premier lieu à comprendre le concept de la supervision avec ses différents aspects, puis dans le 2ème chapitre on d’intéressera à NAGIOS, son installation et sa configuration. Enfin, le rapport contiendra tout un chapitre dédié à l’installation de CENTREON ainsi que sa configuration, sachant que ce dernier un programme qui se fixe sur NAGIOS, et qui offre une nouvelle interface graphique. Introduction
  5. 5. 4 Chapitre 1 : Etat d’art
  6. 6. 5 I- Supervision : La supervision réseau (network monitoring) se traduit par l'utilisation d'un système qui vérifie constamment l'état d'un réseau d'ordinateurs interconnectés et qui notifie l'administrateur réseau concerné en cas de problème, via email ou autre moyen. La supervision est donc une sous-partie de la gestion de réseau. L'examen quotidien des logs systèmes est un bon début, mais, si un problème survient, on s'en rend compte seulement le lendemain, ce qui peut être trop tard. Pour simplifier leur travail, les administrateurs utilisent généralement ce qu’on appelle un « Moniteur de supervision informatique » Un tel moniteur permet d'avoir une vue globale du fonctionnement de réseau ainsi que du niveau de performances des systèmes, et d’alerter par différents moyens l’apparition d’une anomalie. II- Aspects de la supervision La supervision peut porter sur plusieurs aspects de l’informatique. Pour simplifier on peut les classer dans trois catégories principales qui sont les suivantes  La Fiabilité : Il s’agit de l’utilisation la plus courante du monitoring informatique. Une surveillance permanente de la disponibilité de l’équipement est effectuée, et ce pour détecter la moindre anomalie et de la signaler à l’administrateur.  La Performance : Le monitoring de performance a pour but de retourner des informations sur le rendement d’un équipement ou d’un service comme par exemple le temps de résolution DNS, le temps de connexion, le temps de récupération du premier octet et dans le cas d’une page Web le temps de récupération de la page et de l’ensemble des éléments de celle-ci (image, scripts…).Grâce à cette analyse, on va pouvoir diagnostiquer une montée en charge difficile ou même un surdimensionnement de votre bande passante.  Le Contenu : Dans ce dernier cas, on analyse les informations retournées par les éléments surveillés pour détecter, par exemple, la suppression d’un fichier sur un serveur FTP, la modification d’une page Web ou encore la disparition d’un mot clef. III- Solutions existantes – Etude comparative : Le marché de la supervision informatique déborde des logiciels de monitoring ; il en existe une diversité, certains sont payants et d’autres font parti du monde libre ou on peut même trouver des Open Source, Nous allons dans ce qui suit citer quelque uns et nous détaillerons les plus connus et répandus dans le milieu des entreprises.
  7. 7. 6 1) Les offres éditeurs : Les gros éditeurs logiciels ont rapidement compris que la supervision était une ressource clé pour les entreprises qui, de plus en plus, utilisent leur système d'information et ont donc besoin d'une disponibilité toujours plus grande de leur infrastructure informatique. Par conséquent, la supervision est un domaine dans lequel les sociétés n'hésitent pas à investir depuis quelques années. Ayant rapidement compris cela, les gros éditeurs logiciels sont donc très vite entrés dans la course aux logiciels de supervision. Aujourd'hui, la majorité des gros éditeurs logiciels propose des outils complets de supervision. On retrouve, parmi les plus connus :  HP : la gamme Openview (NNM, OVO, ...);  IBM : Tivoli ;  BMC : Patrol ;  Computer Associates : Unicenter TNG. . 2) Les offres du monde libre : Depuis une dizaine d'années déjà, plusieurs projets de supervision ont vu le jour au sein de la communauté du logiciel libre. Il suffit pour cela d'aller faire une simple recherche sur le Net pour se rendre compte de la multitude de projets émergeants autour de la supervision système et réseau. Nous présenterons ainsi, les systèmes de monitoring plus populaires :  NAGIOS ou Net saint (ancienne appellation de NAGIOS) est le principal logiciel Open Source de supervision de réseaux et de systèmes; c’est le plus répandu et le plus suivi par la communauté de développeurs.  MRTG est un outil de supervision du trafic de liens réseaux. Il peut s'intégrer étroitement à des solutions comme NAGIOS. MRTG (Multi Router Traffic Grapher) génère des pages HTML de représentation en temps réel du trafic réseau. Le logiciel prend toute sa dimension comme produit fini,  CACTI est un logiciel de supervision réseau basé sur RRDTool (voir ANNEXE). Il peut-être considéré comme un successeur à MRTG et également comme une interface à RRDTool. Cacti permet de représenter graphiquement divers statuts de périphériques réseau utilisant SNMP..  ZENOOS représente une alternative à des plates-formes de supervisions comme Tivoli ou OpenView, notamment pour les entreprises de taille moyenne. IV- Problématique : Les problèmes liés à l’informatique doivent donc être réduits au minimum afin de garantir la disponibilité du système en cas de panne et aussi tenter de prévenir en cas de problème et, le cas échéant, garantir une
  8. 8. 7 remontée d’information rapide et une durée d’intervention minimale; car une indisponibilité peut être la cause d’une perte financière conséquente. V- Cahier de charge : Le moniteur NAGIOS est considéré comme la solution la plus aboutie dans son genre et la plus utilisée dans le monde du logiciel libre de supervision. Ainsi nous l’avons choisi car le plus répandu, le plus suivi par la communauté de développeurs et le plus adapté aux systèmes d’information de taille moyenne ou importante ; Il a fallu donc : • Surveiller serveurs et ressources en temps réel (charge CPU, gestion disque, mémoire disponible, gestion de la mémoire swap, nombre de processus et d’utilisateurs,…), en centralisant les informations récoltées périodiquement via une interface Web sécurisé. Et pour cela il a fallu :  Installer une machine virtuelle.  Installer Ubuntu, car le logiciel de supervision NAGIOS fonctionne uniquement sur Linux.  Installer le Serveur NAGIOS sur la machine ainsi que ses plugins. 1/ Installer les agents NSCLIENT++ et NRPE.  Configurer une machine linux.  Configurer une machine Windows.  Afficher le résultat final sur l’interface NAGIOS. VI- Choix d'une machine virtuelle : Après réflexion, nous avons décidé d'utiliser une machine virtuelle sur laquelle nous avons installé NAGIOS. Une machine virtuelle permet d'utiliser plusieurs systèmes d'exploitation sur une même machine simultanément. Tout d'abord cela nous permet d'avoir un PC de moins dans notre réseau, ce qui est assez agréable d'utilisation étant donné que nous en avons déjà trois (plus les câbles, le hub, le routeur...). Etant donné que le pc sur lequel est installée la machine virtuelle est le pc personnel, cela m’a permis de travailler très facilement en dehors des séances de projet. Ensuite, il est beaucoup plus aisé de faire des sauvegardes d'une machine virtuelle que d'une machine physique.
  9. 9. 8 Dans une société où les équipements réseaux sont très nombreux, les machines virtuelles peuvent faire gagner de la place dans les locaux. Cette solution permettra également, en fin de projet, de pouvoir récupérer la machine sur laquelle est installé NAGIOS, qui pourra resservir ultérieurement. Il existe plusieurs logiciels permettant de créer des machines virtuelles. Un des plus connus est VMware. Donc notre choix c'est porté sur cette dernière, développé par IBM. C'est un logiciel à licence gratuite fonctionnant sur les machines hôtes Windows, Linux et Mac OS X, et qui peut supporter Windows et Linux comme systèmes invités. I- Présentation du logiciel de supervision NAGIOS : NAGIOS est une application écrite en C permettant la surveillance des systèmes, créée en 1999 sous le nom de NetSaint. C’est aussi un logiciel de supervision de réseau libre sous licence GPL qui fonctionne sous Linux et d’autres variantes Unix. Il a pour fonction de surveiller les hôtes et services spécifiés, alertant l'administrateur des états des machines et équipements présents sur le réseau. Bien qu'il fonctionne dans un environnement Linux, ce logiciel est capable de superviser toutes sortes de systèmes d'exploitation (Windows XP, Windows 2000, Windows 2003 Server, Linux, Mac OS entre autres) et également des équipements réseaux grâce au protocole SNMP. Cette polyvalence permet d'utiliser NAGIOS dans toutes sortes d'entreprises, quelque soit la topologie du réseau et les systèmes d'exploitation utilisés au sein de l'entreprise. Ce logiciel est composé de trois parties: Chapitre 2 : NAGIOS
  10. 10. 9  Le moteur de l'application, qui gère et ordonnance les supervisions des différents équipements.  Les Plugins qui servent d'intermédiaire entre les ressources que l'on souhaite superviser et le moteur de NAGIOS. Il faut bien noter que pour accéder à une certaine ressource sur un hôte, il faut un plugin coté NAGIOS et un autre coté hôte administré.  L'interface web qui permet d'avoir une vue d'ensemble des états de chaque machine du parc informatique supervisé et ainsi pouvoir intervenir le plus rapidement possible en ciblant la bonne panne. II- Fonctionnement de NAGIOS Le principe de supervision de NAGIOS repose sur l'utilisation de plugins, l'un installé sur la machine qui supporte NAGIOS, et l'autre sur la machine que l'on souhaite superviser. Un plugin est un programme modifiable, qui peut être écrit dans plusieurs langages possibles, selon les besoins, et qui servent à récupérer les informations souhaitées. NAGIOS, par l'intermédiaire de son plugin, contact l'hôte souhaité et l'informe des informations qu'il souhaite. Le plugin correspondant installé sur la machine concernée reçoit la requête envoyée par NAGIOS et ensuite va chercher dans le système de sa machine les informations demandées. Il existe deux types de récupération d'informations: La récupération active et la récupération passive. Alors que lors d'une récupération passive, l'envoi d'information est planifié en local, soi à partir d'une date, soit en réaction à un événement qui se déroule sur la machine administrée. III- Installation de NAGIOS : 1) Installation de pré-requis système : On commence par mettre à jour le système en saisissant les commandes suivantes: Nous allons avoir besoin de compiler des sources de logiciels, il faut donc dans un premier temps installer le package "build-essential" qui comporte les librairies de développement de bases:
  11. 11. 10 NAGIOS utilise une interface Web pour interagir avec les utilisateurs. Il faut donc installer un serveur Web sur notre serveur de supervision. On ne va pas être très original... On va utiliser Apache (version 2): Certaines librairies sont également nécessaires au bon fonctionnement de NAGIOS et de ses plugins : On installe les librairies qui serviront à NAGIOS pour afficher de beaux diagrammes réseau: Pour des raisons de sécurité, le processus NAGIOS ne sera pas lancé en « root ». Nous allons donc créer un utilisateur système NAGIOS et un groupe NAGIOS. CENTREON (que nous aborderons plutart) utilise une base de données MySQL, il faut donc installer MySQL server sur notre serveur: 2) Installation et compilation de NAGIOS : Récupération de l'archive de NAGIOS et installation : #cd /usr/local/packages #wget http://surfnet.dl.sourceforge.net/sourceforge/nagios/nagios-3.0.6.tar.gz
  12. 12. 11 #tar xvzf nagios-3.0.6.tar.gz #cd nagios-3.0.6 #./configure --with-command-group=nagcmd --prefix=/usr/local/nagios-3.0.6 #make all #make install #make install-init #make install-config #make install-commandmode #cd /usr/local/ #ln -s nagios-3.0.6 nagios Quelques explications :  make all : compilation des sources  make install : installation du programme principal, des CGI et du HTML  make install-init : installation des scripts de lancement init.d  make install-config : installation des fichiers de configuration par défaut  make install-commandmode : affectation des droits sur les répertoires et fichiers IV- Plugins principaux NAGIOS possède une importante communauté sur Internet. Grâce à celle-ci, de nombreux utilisateurs ont crées des plugins permettant à NAGIOS d'aller récupérer des informations sur des équipements du réseau (PC, routeurs, serveurs, …) Les plugins n'utilisent pas tous le même protocole pour échanger les informations. Le protocole utilisé est dans la plupart des cas un facteur décisif sur le choix des plugins à utiliser. Un seul plugin NAGIOS ne peut pas aller chercher toutes les informations sur les équipements du réseau: En effet, chaque plugin n'a accès qu'à certaines informations (exemple: un plugin peut aller chercher l'occupation du disque dur, et un autre l'occupation du processeur d'un PC). Pour superviser un parc informatique, il est donc nécessaire de mettre en place plusieurs plugins. De plus, certains plugins peuvent aller chercher des informations sur des clients uniquement sur certains systèmes d'exploitation (c'est le cas du plugin check_nt qui peut chercher des informations uniquement sur des équipements Windows). Les principaux plugins utilisés par NAGIOS sont : -check_disk : Vérifie l'espace occupé d'un disque dur - check_http : Vérifie le service "http" d'un hôte - check_ftp : Vérifie le service "ftp" d'un hôte - check_mysql : Vérifie l'état d'une base de données MYSQL - check_nt : Vérifie différentes informations (disque dur, processeur …)
  13. 13. 12 - check_nrpe: Permet de récupérer différentes informations sur les hôtes - check_ping: Vérifie la présence d'un équipement, ainsi que sa durée de réponse - check_pop: Vérifie l'état d'un service POP (serveur mail) - check_snmp : Récupère divers informations sur un équipement grâce au protocole SNMP Plugins retenus Après avoir consulté les différents plugins existants, nous avons choisi ceux qui correspondaient à notre cahier des charges. Nous avons retenus les plugins suivants : (- check_nt - check_nrpe - check_snmp - check_ping -) 1) Check_nt Le plugin Check_nt est un plugin récent qui permet de superviser très facilement des PC dont le système d'exploitation est Windows. Check_nt permet de récupérer sur un système Windows les informations suivantes : L'espace occupé sur le disque dur, le temps depuis le démarrage de l'ordinateur, la version du plugin NsClient ++, occupation du processeur, occupation de la mémoire, état d'un service. 2) Check_nrpe Le plugin Check_nrpe est un plugin qui permet de superviser des PC dont le système d'exploitation est Windows ou Linux. Check_nrpe utilise une connexion SSL (Secure Socket Layout) pour aller chercher les informations sur les postes. Ceci permet de crypter les trames d'échanges. 3) Check_snmp Le plugin Check_snmp est un plugin qui permet de superviser tous les équipements. En revanche, il est très instable pour superviser les PC. 4) Check_ping Le plugin Check_ping est un plugin qui permet de vérifier qu'un hôte est bien joignable. V- Usage des plugins : EXEMPLE : « check_nt » et « check_nrpe » 1) Check_nt : A/ Mise en place :  Le plugin check_nt est à installer sur la machine NAGIOS. Dans notre cas, check_nt a été installé automatiquement (dans le dossier /etc/usr/local/nagios/libexec) lors de l'installation de NAGIOS.  Sur les machines à superviser, on doit installer le logiciel NsClient++, téléchargeable sur le site http://sourceforge.net/projects/nscplus.
  14. 14. 13  Sur les machines à superviser, on doit configurer le fichier "NSC.ini". (le fichier est fourni en ANNEXE). C'est dans ce fichier que l'on doit définir : - Le port sur lequel NsClient++ doit écouter les requêtes -Les adresses des machines qui ont le droit de dialoguer avec NsClient++ (les machines qui ont le droit de récupérer les informations sur ce poste). B/ Fonctionnement : Figure 7 : Fonctionnement du check_nt Lorsque NAGIOS veut connaître une information sur un PC, il exécute le plugin check_nt. Celui envoie une requête au PC. Sur le PC, le programme NsClient++ reçoit la requête, va chercher les informations dans les ressources du PC et renvoie le résultat au serveur NAGIOS. C/ Usage : Pour aller chercher les informations sur un PC grâce à check_nt, NAGIOS exécute une commande ayant la syntaxe suivante : # check_nt -H host -v variable [-p port] [-w warning] [-c critical][-l params]. Avec : -H : Adresse IP de l'hôte à superviser. -v : ce qu'il faut superviser (ex : CPULOAD) -p : Port sur lequel il faut envoyer la requête. -w : Seuil pour lequel le résultat est considéré comme une alerte. -c : Seuil pour lequel le résultat est considéré comme critique. -l : Paramètres supplémentaires (nécessaire ou non en fonction du paramètre "v"). D/ Mise en œuvre :  Cette commande retourne la version du NSClient++ utilisé sur l’hôte ‘windows’. 2) Check_nrpe : A/ Mise en place sur windows
  15. 15. 14  Le plugin check_nrpe est à installer sur la machine NAGIOS. Dans notre cas, check_nrpe a été installé automatiquement (dans le dossier /etc/usr/local/nagios/libexec) lors de l'installation de NAGIOS.  Sur les machines à superviser, on doit installer un logiciel permettant de dialoguer avec check_nrpe. Le programme le plus couramment utilisé est "nrpe pluging". Seulement, le logiciel NsClient++ permet aussi de faire des échanges avec le plugin check_nrpe. Comme nous utilisons déjà ce programme pour check_nt, nous le conservons aussi pour check_nrpe.  Sur les machines à superviser, on doit configurer le fichier "NSC.ini". C'est dans ce fichier que l'on doit définir : - Le port sur lequel NsClient++ doit écouter les requêtes de check_nrpe (différent de celui check_nt). - Les adresses des machines qui ont le droit de dialoguer avec NsClient++ (les machines qui ont le droit de récupérer les informations sur ce poste). B/ Mise en place sur Linux : Même procédure que sur Windows sauf qu'on n'utilise pas NsClient ++ sur l'hôte à superviser mais le programme "nrpe", téléchargeable ici http://www.nagiosexchange.org/ Puis on configure le fichier /etc/nagios/nrpe.conf. C/ Fonctionnement : Figure 8: Fonctionnement du check_nrpe Lorsque NAGIOS veut connaître une information sur un PC, il exécute le plugin check_nrpe. Celui envoie une requête au PC. Sur le PC, le programme NsClient++ (ou nrpe si linux) reçoit la requête, va chercher les informations dans les ressources du PC et renvoie le résultat au serveur NAGIOS. D/ Usage : Pour aller chercher les informations sur un PC grâce à check_nrpe, NAGIOS exécute une commande ayant la syntaxe suivante :  check_nrpe -H <adresse de l'hôte à superviser> -c <nom de la commande à exécuter sur le serveur> Puis sur les postes à superviser, dans le fichier de configuration (NSC.ini pour Windows, nrpe.conf pour Linux), on doit définir la commande à exécuter pour chaque nom de commande. Exemple pour Windows: command [check_cpu]=inject checkCPU warn=80 crit=90 5 10 15 Exemple pour Linux:
  16. 16. 15 command [check_cpu]=/usr/local/nagios/libexec/check_load -w 15,10,5 - c 30,25,20 E/ Mise en œuvre : VI- Installation des premiers greffons : Afin de rendre NAGIOS utilisable un minimum, il faut ajouter les greffons essentiels et minimaux. Pour ça, il faut télécharger l'archive les contenant :  cd /usr/local/packages  wget http://ovh.dl.sourceforge.net/sourceforge/nagiosplug/nagios-plugins- 1.4.15.tar.gz  tar xvzf nagios-plugins-1.4.15.tar.gz  cd nagios-plugins-1.4.13  ./configure --with-nagios-user=nagios --with-nagios-group=nagios  make  make install Ceci installera les greffons basiques tels que par exemple :  check_disk  check_nagios  check_ssh  check_http  check_load  etc... Il faut ensuite installer l’interface Web: VII- Premier test de NAGIOS :
  17. 17. 16 NAGIOS est distribué avec une configuration initiale opérationnelle (elle permet notamment de surveiller... son serveur de supervision. Nous allons donc tester les fichiers de configuration grâce à la commande suivante: Si tout ce passe bien vous devriez avoir le message suivant qui s’affiche: Enfin on lance le serveur NAGIOS: Il ne reste plus qu'à lancer un navigateur Web sur un PC de votre réseau et à saisir l'URL suivante: Après une bannière d'authentification (login: nagiosadmin/ password: <votremotdepasse>), nous devrions voir s'afficher:
  18. 18. 17 Figure 9 : Page d’acceuil de NAGIOS NAGIOS ne surveille que le serveur sur lequel il est installé. Si vous on clique sur le lien Services ou Hosts de la page web, on ne voit que localhost. Certains services sont par défaut surveillés, notamment le swap, l'espace disque de la partition root /, le ping, etc. Figure 10: Les services par défaut surveillés par NAGIOS VIII-Configuration des machines à superviser :
  19. 19. 18 1) Machine Windows: La supervision des machines Windows se fait grâce à l'agent NSClient++ qui doit être installé sur la machine distante à superviser. Le schéma suivant, présente les différents composants qui doivent être mis en place et leur interaction pour que la supervision soit opérationnelle. Figure 11: La supervision de la machine windows se fait par l’agentNSCLient++ NSClient++” se base sur une architecture client/serveur. La partie cliente (nommée check_nt), doit être disponible sur le serveur NAGIOS. La partie serveur (NSClient++) doit être installée sur chacune des machines Windows à surveiller Installation de l'extension NRPE sur le serveur NAGIOS : Télécharger le fichier zip : nrpe-2.8.1.tar.gz #tar xvzf nrep-2.8.1.tar.gz cd nrpe-2.8.1 ./configure make all make install make install plugin cd – cd /root/nrpe-2.1.8/src cp check_nrep /usr/locql/nqgios/libexec ./check_nrpe –H 192.168.106.1 2) Machine Linux: a) Sur le serveur NAGIOS : Il faut installer le plugin NRPE (voir axe juste en dessus).
  20. 20. 19 b) Sur le serveur Linux à surveiller : La procédure est un peu plus longue. Il faut d'abord installer le daemon NRPE et les plugins NAGIOS (qui vont être lancés localement par le daemon NRPE): Puis éditer le fichier /etc/nagios/nrpe.cfg pour modifier la ligne suivante: On automatise le lancement du daemon au démarrage du serveur avec la commande: On ajoute une règle pour autoriser le Firewall IPtable à laisser passer les requêtes NRPE (à adapter selon vos règles): Il ne reste plus qu'à lancer le daemon: c) Modification des fichiers de configuration sur le serveur NAGIOS : Pour pouvoir ajouter une machine ou un équipement quelconque à superviser il faut modifier le fichier ‘host.cfg’ qu’on peut y accéder en suivant le chemin suivant : /usr/local/nagios/etc/hosts.cfg. Il faut aussi modifier le fichier principal ‘nagios.cf’ pour que NAGIOS prenne en considération les fichiers ‘hots.cfg’ et ‘switch.cfg’  On décommente alors les lignes suivantes en supprimant le symbole du commentaire ‘#’ : #cfg_file=/usr/local/nagios/etc/hosts.cfg #cfg_file=/usr/local/nagios/etc/objects/switch.cfg
  21. 21. 20  Résultat de la configuration : Figure 12: Les hôtes créées et configurées sont affichées sur l’interface web de NAGIOS Conclusion 1 : Pour aboutir au résultat illustré sur la Figure:12, il fallu :  Installer les pré-requis de NAGIOS.  Installer NAGIOS.  Installer les greffons.  Pour la configuration de la machine ‘windows’  Installer l’extension NRPE sur le serveur NAGIOS.  Installer l’agent NSCLIENT++.  Pour la configuration de la machine ‘LINUX’ - Installer l’extension NRPE sur le serveur NAGIOS et la sur machine à superviser. I. Introduction On remarque alors que la configuration de NAGIOS est très complexe pour une grande entreprise. En effet, si le parc informatique à superviser est grand, il faudra du temps pour remplir l'intégralité des fichiers de configuration. De plus, plus ces fichiers sont grands, plus il sera difficile pour l'administrateur réseau de s'y retrouver. Comme dans la plupart des cas, on supervise un réseau lorsque celui a une taille assez importante, la configuration de NAGIOS telle qu'elle sera rarement facile.
  22. 22. 21 C'est pourquoi plusieurs outils ont été crées pour faciliter la configuration de NAGIOS. C'est le cas de CENTREON, un programme qui se fixe sur NAGIOS, et qui offre une nouvelle interface graphique. Cette nouvelle interface graphique permet de configurer NAGIOS "en graphique", sans toucher directement les fichiers de configuration. Nous avons donc décidé de mettre en place cet outil. I- Installation de la base de données NDO : Afin de communiquer entre eux, NAGIOS et CENTREON utilise une base de données commune (NDO). Nous allons commencer par créer cette base de données sur notre serveur MySQL. II- Installation du plugin NDO pour NAGIOS 3 : De base, NAGIOS n’écrit pas les informations sur sa configuration dans la base de données NDO. Pour cela, il faut installer un plugin: NDOUtils. Ce dernier est composé de deux briques: NDOMOD et NDO2DB. Le premier va prendre les événements à partir du daemon NAGIOS et les envoyer via un socket (TCP ou UNIX) vers le second qui va les convertir dans un format compatible avec la base de données choisie (MySQL ou PgSQL). Figure 13: les deux briques NDOMOD et NDO2DB du NDoutils Pour que le système fonctionne, il faut donc que NDOMOD soit chargé par NAGIOS au démarrage et que le daemon NDO2DB soit lancé en tache de fond.
  23. 23. 22 Commençons par installer les NDOUtils.
  24. 24. 23 Puis on initialise la base de données MySQL: Pour automatiser le lancement de NDO au démarrage du serveur, il faut ajouter les 2 commandes suivantes. On automatise le lancement du processus ndo2db au démarrage du serveur: On lance ensuite NDO: Il ne reste plus qu’à lancer relancer NAGIOS:
  25. 25. 24 PRE-REQUIS SYSTEME :
  26. 26. 25 Figure 31: Informations sur l’état du ‘Serveur_web’  Ajout d'un "service" : Nous avons créée l’hôte Centreon-Server Figure 32 : L’hôte Centreon_Server est enregistrée sur CENTREON Figure 33: Informations générales sur l’hôte ‘Centreon_Server’  Nous avons créé après le serveur « Ping » :
  27. 27. 26 Figure 34: Le service « Ping » ajouté à la liste des services attribué à l’hôte ‘Centreon_Server ‘ Figure 35: Informations générales sur le service PING On peut voir aussi que CENTREON a créé des services par défaut (associé au Template par défaut : generic- service) permettant de superviser par SNMP certains services (disque, charge, swap) de notre serveur. Pour que cela fonctionne, il faut bien évidemment qu'un serveur SNMP soit lancé et configuré aussi bien sur la machine où est installé NAGIOS (machine linux) que sur la machine "host" windows qu’on souhaite superviser.
  28. 28. 27 Figure 36 : Les services par défaut sur CENTREON  Configuration SNMP sur Linux :  Installer les packages suivants : # apt-get install snmp # apt-get install snmpd # apt-get install snmp-mibs-downloader  Créer un lien sympbolique : # ln –s /usr/share/mibs/ /usr/share/snmp/mibs  Modifier le fichier /etc/default/snmpd : (ajouter les deux lignes ci-dessous) Export MIBDIRS=/usr/share/snmp/mibs Export MIBS=all # /etc/init.d/centstorage start (voir ANNEXE) # /etc/init.d/snmpdtrapd start # /etc/init.d/snmpd start Message d’erreur: ‘snmp’ is not running  Problème de droit. # cd /usr/local/bin # /usr/local/bin# chown nagios:nagios /usr/local/bin # /usr/local/bin# ps aux |grep snmpd Message d’erreur: ‘snmptrapd’ is not running  modifier le fichier snmpd. # gedit /etc/default/snmpd (1) (2)
  29. 29. 28 En ajoutant la ligne suivante : TRAPDRUN=yes.  Pour tester il faut lancer la commande suivante: # snmpwalk –v 1 –c public 192.168.106.1  La MIB standard devrait apparaître On lance la commande suivante NB : ‘snmpwalk’ est une commande Unix qui permet d'interroger une machine pourvue d'un agent SNMP à travers un réseau. Résultat : Qu’est ce que la MIB ? Nécessité d’une standardisation des informations Comme on le constate le protocole SNMP est simple. Cependant, étant un protocole Internet, il doit être utilisable sur des plates formes hétérogènes (matériel et système d’exploitation !). Il a donc fallu lui associer
  30. 30. 29 des standards pour la gestion, le stockage des informations transportées et utilisées par le protocole. Un élément indissociable de SNMP est donc la MIB pour Management Information Base, une base d’informations de gestion. Management Information Base : SNMP doit permettre de retrouver les informations et d’agir sur les paramètres des équipements de façon indépendante du matériel et du logiciel. La MIB se présente comme cette base de données normalisée qui permet de lire et d’écrire sur les équipements distants (de façon également standard). C’est à l’agent lui-même de traduire les informations entre SNMP et la plate forme de supervision.  Activation du SNMP sur l’hôte ‘windows’ : La première étape consiste à aller au ‘Panneau de configuration’ puis choisir « Programmes » Figure 37 : Activation SNMP sur windows (ETAPE : 1) Ensuite on clique sur « Programmes et fonctionnalités ».
  31. 31. 30 Figure 38: Activation SNMP sur windows (ETAPE : 2) On clique sur « Activer ou désactiver des fonctionnalités Windows » Figure 39 : Activation SNMP sur windows (ETAPE : 3)
  32. 32. 31 Figure 40: Activation SNMP sur windows (ETAPE : 4) Pour finaliser, on clique sur OK.  Exportation de la configuration vers NAGIOS : Il faut pour cela, aller dans le menu Configuration / NAGIOS (1/2) puis cliquer sur les boutons:  "Move export files": pour déplacer physiquement les fichiers de configuration dans l'arborescence NAGIOS. (3)  "Restart NAGIOS": pour demander à CENTREON de redémarrer NAGIOS pour que la configuration soit prise en compte. (4)  Puis cliquer sur Export. (5) (1) (2) (3 ) (4 ) (5)
  33. 33. 32 Figure 41: Exportation de la configuration de CENTREON vers NAGIOS Si tout ce passe bien, nous ne devrions pas avoir de message d'erreur mais seulement : ‘0 Warning and 0 Errors’ comment le montre la figure ci-dessous : Figure 42: résultat de la configuration de CENTREON(parfait) Quelques minutes après l'exportation, la nouvelle configuration apparaitra dans l'interface de CENTREON: Figure 43: Nombre des hôtes créées avec leur état (3 hosts) O K
  34. 34. 33 Figure 44 : Les services attribués à chaque hôte  Résultat Final de la configuration : Figure 45: Résultat de configuration de CENTREON (les 3 hôtes sont affichées sur la ‘MAP 2D’ Figure 46: Même résultat mais avec un Layout différent (Circular)
  35. 35. 34 Figure 47 : Les ‘hôtes’ créées sur CENTREON avec leur statuts Conclusion 2 : CENTREON est un programme qui se fixe sur NAGIOS, et qui offre une nouvelle interface graphique permettant de configurer NAGIOS "en graphique", sans toucher directement les fichiers de configuration. Nous avons donc pu mettre en place cet outil et de configurer NAGIOS sans oublier de configurer le protocole SNMP qui est nécessaire à la supervision pour enfin aboutir au même résultat tout en ayant les machines créées affichées sur l’interface NAGIOS. Le but de ce mini-projet a été de mettre en œuvre une solution pour superviser des machines et qui ne sont pas de la marque CISCO. Notre choix a été fixé sur NAGIOS qui est considéré comme la solution la plus aboutie dans le monde des développeurs. Donc comme résumé du travail, pour la première phase nous avons installé le fameux logiciel sur une machine virtuelle sur laquelle est installé le système d’exploitation Linux vu que NAGIOS fonctionne uniquement sur Linux, puis nous avons installé les plugins. Pour superviser une machine Windows, il a fallu installer sur cette dernière l’agent NSClient++, en contrepartie configurer le serveur NAGIOS en installant le plugin ‘NRPE’ pour pouvoir établir la communication avec l’agent, ainsi que de modifier les fichiers de configuration convenables. Par contre pour superviser la machine Linux, une installation du plugin NRPE sur la machine et sur le serveur s’est présenté obligatoire. Il a été nécessaire aussi de configurer le service SNMP sur le serveur NAGIOS et de l’activer sur la machine Windows afin de pouvoir réaliser la supervision. Résumé
  36. 36. 35 Ce mini-projet a été une occasion pour moi de révéler mes capacités. Au vue de l’ensemble du travail demandé, je me suis impliquée de manière sérieuse afin que ce mini-projet réussisse sur tous les aspects. Et ces deux mois ont été très enrichissants. L'entreprise m'a laissé une grande liberté de choix et d'actions, ce qui m'a permis de m'épanouir pleinement et d’élargir mon expérience. Ainsi, ce travail effectué dans le cadre d'un stage d’application m’a permis de comprendre les concepts de la supervision dans un système d'information et de mettre en évidence les différentes architectures possibles dans le cadre de la supervision. Le choix de NAGIOS et CENTREON comme logiciels cobails compatibles et matures étant très utilisés dans le monde professionnel, m’a permis de se mettre en situation réel en s'imaginant dans le monde professionnel. En effet, le gros du travail avec NAGIOS est de savoir où commencer, ce qu'il faut superviser, et ce qu'on peut oublier, et surtout de mettre en place un cadre de travail évolutif. Une fois ce travail fait, il sera relativement simple de faire évoluer les choses, et de rajouter ou enlever des sondes Bref, cette expérience enrichissante représente pour mon futur professionnel un atout majeur auquel je ne manquerai pas de me référer. Bibliographie : http://www.nagios.org/ http://doc.monitoring-fr.org/ http://en.doc.centreon.com http://eric.coquard.free.fr http://fr.scribd.com/doc/94274064/SNMPManager-Report http://blog.nicolargo.com/ http://doc.ubuntu-fr.org/nagios http://arnofear.free.fr http://doc.ubuntu-fr.org/ Conclusion

×