WOW !! MUCH LOVE ! SO WORLD PEACE !
Fond bitcoin pour l'amélioration du site: 1memzGeKS7CB3ECNkzSn2qHwxU6NZoJ8o
  Dogecoin (tips/pourboires): DCLoo9Dd4qECqpMLurdgGnaoqbftj16Nvp


Home | Publier un mémoire | Une page au hasard

 > 

Etude et mise en œuvre d'un serveur de supervision réseau

( Télécharger le fichier original )
par Awawou Viviane GHARINGAM NDANE
Institut africain d'informatique Cameroun - Ingénieur des travaux informatiques 2012
  

précédent sommaire suivant

Bitcoin is a swarm of cyber hornets serving the goddess of wisdom, feeding on the fire of truth, exponentially growing ever smarter, faster, and stronger behind a wall of encrypted energy

2. Etude de la solution choisie

Cette section va nous édifier sur tout ce qui a savoir sur Nagios, Centreon et Nagvis.

2.1. Nagios

Nagios est un logiciel libre distribué sous licence GPL qui permet de superviser un

système d'information complet. Utilisé par de nombreuses sociétés, il fait l'objet de contribution et recherche très actives

 
 

29

Mémoire de fin d'études pour l'obtention du diplôme d'Ingénieur de Travaux
Option Systèmes et Réseaux, IAI-CAMEROUN.
Par GHARINGAM NDANE Awawou Viviane

 
 
 

Etant le successeur de NetSaint dont la première version date de 1999, ce logiciel est considéré comme une évolution de ce dernier auquel a été ajoutée, entre autre, la gestion du protocole SNMP. Il apparaît sous le nom de Nagios le 10 mai 2002 aux conditions de la GNU General Public License.

Cet outil repose sur une plate-forme de supervision, fonctionnant sous Linux et sous la plupart des systèmes Unix. Il centralise les informations récoltées périodiquement par le fonctionnement modulaire dont il est caractérisé, ce qui le rend beaucoup plus attractif que ses produits concurrents. En revanche sa configuration peut se révéler complexe.

7777777777777s d777777777: 7

Elles sont très nombreuses, mais les plus communes sont suivantes :

· La supervision des services réseaux (SMTP, http...), des hôtes et des ressources systèmes (CPU, charge mémoire...)

· La détermination à distance et de manière automatique l'état des objets et les ressources nécessaires au bon fonctionnement du système grâce à ses plugins.

· Représentation coloriée des états des services et hôtes définies.

· Génération de rapports.

· Cartographie du réseau.

· Gestion des alertes.

· Surveillance des processus (sous Windows, Unix...).

· Superviser des services réseaux : (SMTP, POP3, HTTP, NNTP, ICMP, SNMP, LDAP, etc.)

· La supervision à distance peut utiliser SSH ou un tunnel SSL.

· Les plugins sont écrits dans les langages de programmation les plus adaptés à leur tâche (Bash, C++, Python, Perl, PHP, C#, etc.).

Toutes ces fonctionnalités sont assurées grâce la gestion et supervision du réseau et ses

différentes entités d'une manière centralisée. La figure ci-dessous modélise cet aspect :

30

Mémoire de fin d'études pour l'obtention du diplôme d'Ingénieur de T777777
777777'777777777t R777777,7777777777777.
7 77'77 7 7 7 77 7 7 7 777777777777777777777

METHODOLOGIE

2012

Figure14. Centralisation d'informations par Nagios

Architecture de Nagio

L'architecture de Nagios se base sur le modèle serveur-agent. D'une manière spécifique, un serveur faisant office de point central de collecte des informations tandis que les autres machines du réseau exécutent un agent chargé de renvoyer les informations au serveur.

L'architecture globale de Nagios peut etre décomposée en 3 parties coopératives entre

elles :


· Un noyau qui est le coeur du serveur Nagios, lancé sous forme de démon et responsable de la collecte et l'analyse des informations, la réaction, la prévention, la réparation et l'ordonnancement des vérifications (quand et dans quel ordre). C'est le principe de répartition des contrôles au mieux dans le temps qui nous évite la surcharge du serveur et des machines à surveiller.

 
 

31

Mémoire de fin d'études pour l'obtention du diplôme d'Ingénieur de Travaux
Option Systèmes et Réseaux, IAI-CAMEROUN.
Par GHARINGAM NDANE Awawou Viviane

 
 
 

· Des exécutants : ce sont les plugins dont un grand nombre est fourni de base, responsables de l'exécution des contrôles et tests sur des machines distantes ou locales et du renvoie des résultats au noyau du serveur Nagios

· Une IHM : C'est une interface graphique accessible par le web conçue pour rendre plus exploitable les résultats. Elle est basée sur les CGI (Common Gateway Interface) fournis par défaut lors de l'installation de Nagios qui interprètent les réponses des plugins pour les présenter dans l'interface.

Cette interface sert à afficher de manière claire et concise une vue d'ensemble du système d'information et l'état des services surveillés, de générer des rapports et de visualiser l'historique. D'une manière générale avoir la possibilité de détecter en un simple coup d'oeil, les services ou hôtes ayant besoin d'une intervention de leur administrateur.

Il est possible de coupler Nagios à une base de données MySQL ou PostgreSQL, lorsque le nombre d'objets à superviser devient conséquent. La figure suivante modélise l'architecture de Nagios.

 

Fonctionnement de Nagios

 
 

32

Mémoire de fin d'études pour l'obtention du diplôme d'Ingénieur de Travaux
Option Systèmes et Réseaux, IAI-CAMEROUN.
Par GHARINGAM NDANE Awawou Viviane

 
 

Nagios fonctionne grâce à des plugins écris en Perl ou en C. Sans eux, il est totalement incapable de superviser et se résume en un simple noyau.

Ces plugins sont des programmes externes au serveur, des exécutables qui peuvent se lancer en ligne de commande afin de tester une station ou service. Ils fonctionnent sous le principe d'envoi de requêtes vers les hôtes ou services choisis lors d'un appel du processus de Nagios, et la transmission du code de retour au serveur principale qui par la suite se charge d'interpréter les résultats et déterminer l'état de l'entité réseau testée.

La relation entre le noyau et les plugins est assurée d'une part par les fichiers de configuration (définitions des commandes) et d'autre part par le code retour d'un plugin. Cette relation peut se résumer par le tableau ci-dessous :

Tableau 3:code d'erreur envoyé par les plugins de Nagios

Code retour

Etat

Signification

1

OK

Tout va bien

2

Warning

Le seuil d'alerte est dépassé

3

Critical

Le service a un problème

4

Unknow

Impossible de connaître l'état du service

Nagios est livré avec un « package » de greffons standards regroupant les plus utilisés. Pour une utilisation basique et simple, ils devraient être suffisants. En voilà quelques exemples:

> checkhttp : Vérifie la présence d'un serveur web.

> checkload : Vérifie la charge CPU locale.

> checkping : Envoie une requête Ping à un hôte.

> checkpop : Vérifie la présence d'un serveur POP3.

> checkprocs : Compte les processus locaux.

> checksmtp : Vérifie la présence d'un serveur SMTP.

> checksnmp : Envoie une requête SNMP (passée en argument) à un hôte.

> checkssh : Vérifie la présence d'un service SSH.

> checktcp : Vérifie l'ouverture d'un port TCP (passé en argument).

> checkusers : Compte le nombre d'utilisateurs sur la machine locale.

 
 

33

Mémoire de fin d'études pour l'obtention du diplôme d'Ingénieur de Travaux
Option Systèmes et Réseaux, IAI-CAMEROUN.
Par GHARINGAM NDANE Awawou Viviane

 
 

Il est possible de créer son propre plugin et l'interfacer avec Nagios tout en respectant les conventions des codes de retours précédemment expliqués. La vivacité de la communauté Open Source et celle de Nagios 2 en particulier permet de disposer d'un grand nombre de plugins supplémentaires. Comme on peut le constater sur la figure suivante, les plugins peuvent fonctionner soit en effectuant des tests en local, soit à distance par le biais de divers moyens comme l'installation des agents NRPE ou NSClient ou autres.

Bref NAGIOS de façon simplifiée se résume à cet algorithme :

 
 

Figure 4: Algorithme de fonctionnement de Nagios Les fichiers de configuration de Nagios

Nagios s'appuie sur différents fichiers textes de configuration pour construire son

infrastructure de supervision. Nous allons à présent citer et définir ceux qui sont les plus importants :

· Nagios.cfg est le fichier de configuration principal de Nagios. Il contient la liste des autres fichiers de configuration et comprend l'ensemble des directives globales de fonctionnement.

· Cgi.cfg contient un certain nombre de directives qui affectent le mode de fonctionnement des CGI. Il peut titre intéressant pour définir des préférences concernant l'interface web de Nagios.

 
 

34

Mémoire de fin d'études pour l'obtention du diplôme d'Ingénieur de Travaux
Option Systèmes et Réseaux, IAI-CAMEROUN.
Par GHARINGAM NDANE Awawou Viviane

 
 
 

· Resource.cfg permet de définir des variables globales réutilisables dans les autres fichiers. Etant inaccessible depuis les CGI qui génèrent l'interface, ce fichier peut être utilisé pour stocker des informations sensibles de configuration.

· Commands.cfg contient les définitions des commandes externes, telles que celles qui seront utiles pour la remontée d'alerte.

· Checkcommands.cfg contient les définitions des commandes de vérification prédéfinies et celles définies par l'utilisateur.

· Hosts.cfg définit les différents hôtes du réseau à superviser. A chaque hôte est associé son nom, son adresse IP, le test à effectuer par défaut pour caractériser l'état de l'hôte, etc.

· Services.cfg associe à chaque hôte ou à chaque groupe d'hôtes l'ensemble des services qui doivent être vérifiés.

· Hostsgroups.cfg définit des groupes d'hôtes pour regrouper des hôtes selon des
caractéristiques communes. Un hôte peut appartenir à plusieurs groupes.

· Contacts.cfg déclare les contacts à prévenir en cas d'incident et définit les paramètres des alertes (fréquences des notifications, moyens pour contacter ces personnes, plages horaires d'envoi des alertes...).

précédent sommaire suivant






Bitcoin is a swarm of cyber hornets serving the goddess of wisdom, feeding on the fire of truth, exponentially growing ever smarter, faster, and stronger behind a wall of encrypted energy








"Entre deux mots il faut choisir le moindre"   Paul Valery