com
Rapport de stage PFE
1-remerciements
2-dédicace
i) Présentation de la société :
a) Historique
b) Innovation
a) Description de l’existant
b) Critique de l’existant
c) Solution proposée
iiii) Conclusion
i) La supervision
a) Définition
b) Rôle
c) Objectifs
ii) Nagios
a) Présentation
b) Fonctionnalités
c) Architecture
1) un ordonnanceur
2) une IHM
3) Les greffons
d) Plugins
e) Installation
g) configuration
f) Les fichiers de configuration
iii) Conclusion
http://rapportsp.blogspot.com
Remerciements
Je tiens à remercier vivement «One Tech » de m’avoir accueilli pour effectuer mon stage, en
m’offrant ainsi la possibilité d’acquérir une expérience professionnelle très enrichissante.
Je remercie ensuite tous le personnel de la société « One Tech » pour leur soutien et leur attention
dont ils ont fait preuve à mon égard tout au long du déroulement de ce stage.
Je tiens à remercier vivement tous mes professeurs, le Directeur de mon établissement qui ont
contribué à la réalisation de ce modeste projet, qui m’ont encadrés et aidés tout au long de mon
parcours.
Que tous ceux qui ont contribué à mener à bien ce stage trouvent ici l’expression de ma parfaite
considération.
http://rapportsp.blogspot.com
Dédicace
Merci d’être toujours à mes côtés, par votre présence, par votre amour dévoué et votre tendresse,
pour donner du goût et du sens à ma vie. En témoignage de mon amour et de ma grande affection, je
vous prie de trouver dans ce travail l’expression de mon estime et mon sincère attachement. Je prie
Dieu, le tout puissant, pour qu’il vous donne bonheur et prospérité.
http://rapportsp.blogspot.com
Cahier des charges
Titre de projet :
Travail demandé :
Recherche, implémentation et configuration dont le but d’établir une solution Open source qui vise à
monitorer à distance les différents serveurs de la société en gérant des alertes dans un
environnement multiplateformes.
Entreprise d’accueil :
One TECH Business Solutions, société Spécialisée dans les métiers de l'infrastructure et dans les
services liés aux nouvelles technologies.
Plan du travail :
L’objectif principal de ce projet est d’établir, installer et configurer une plateforme de surveillance
des serveurs (monitoring) qui répond à ces besoins suivants :
-Notifications à distance via Mail ou SMS (Short Message Service) en cas de panne.
L'informatique est au cœur de l'entreprise, quelle que soit son secteur d'activité. On peut
facilement comparer la place que joue l'informatique au sein d'une entreprise à celle que joue
le système nerveux chez l'être humain. En effet, il est au centre de l'activité, et doit
fonctionner pleinement et en permanence pour garantir l'activité.
Quelque soit la taille et le secteur d'activité de votre entreprise, l'informatique est au milieu de
votre système d'information. Les problèmes liés à l'informatique doivent donc être réduits au
minimum, car une indisponibilité du système d'information peut entraîner une baisse globale
de la productivité et des pertes financières importantes.
Donc il faut garantir la disponibilité du système en cas de panne, mais aussi tenter de prévenir
en cas de problème et, le cas échéant, garantir une remontée d'information rapide et une durée
d'intervention minimale : c'est le rôle de la supervision
La gestion d'un parc informatique est un travail de chaque instant. Un bon administrateur
système doit savoir à tout moment l'état des différentes machines et des différents services.
Un autre aspect clé est que l'administrateur ne peut pas se permettre de passer son temps
devant un tableau avec des voyants verts en attendant qu'un voyant passe au rouge pour agir.
Son temps est occupé à d'autres tâches et il ne peut donc pas surveiller le tableau de statut en
permanence. Pour se simplifier le travail, nous allons utiliser un moniteur de supervision. Le
but d'un tel programme est de surveiller les services et les machines se trouvant sous notre
responsabilité. Si un problème survient, le moniteur de supervision nous prévient (courrier
électronique, SMS, coup de téléphone, etc.)
-Phase de présentation des notions de base sur la supervision informatique et de ses logiciels
les plus fréquemment utilisés.
-Phase d’éducation de la solution choisie parmi plusieurs en énumérant ses fonctionnalités et
apports.
-La réalisation, et la mise en place de cette solution.
http://rapportsp.blogspot.com
Chap.1 Présentation de cadre de stage :
1) Présentation de la société :
One TECH Business Solutions, est une filiale de One TECH, groupe privé opérant dans
l’industrie localement et à l’international.
Spécialisée dans les métiers de l’infrastructure et dans les services liés aux nouvelles
technologies, avec une offre complète qui va du conseil jusqu’à l’exploitation, One TECH
Business Solutions intervient également sur le marché international via des centres de
services dédiés ou mutualisés.
One Tech Business Solutions est une société qui permet l’intégration et la maintenance de
vos solutions pour satisfaire tous vos besoins : Communications et Collaboration, Data et IT
(Information technology), Services et conseils : du Contact Center et Communication Unifiée
jusqu’au Datacenter et services managés en passant par les solutions mobiles.
One Tech Business Solutions apporte, également, des réponses aux problématiques les plus
diverses :
Solutions d’infrastructure téléphonique, réseaux, systèmes, sécurité, SCADA ( système de
contrôle et d'acquisition de données), processus industriel, automatismes, géo
localisation, gestion technique des bâtiments.
a)Historique :
En 1985 : création de TTE, entreprise spécialisée dans la fabrication et la commercialisation
de matériels de télécommunications ainsi que la fourniture de solutions clés en main : en
télégestion, en radiocommunication, et téléphonie d’entreprise.
En 1994 : création d’INTELCOM une société spécialisée dans le domaine des
télécommunications pour les entreprises.
En 2005 : création de One Tech Développement, intégrateur de solutions de réseaux,
télécoms et sécurité.
En 2008 : Recentrage de l’activité de TTE autour de l’intégration des réseaux et des télécoms.
En 2011 : Naissance de One Tech Business Solutions, fusion de TTE, INTELCOM et One Tech
Développement dont le métier est la fourniture et l’exploitation de solutions d’infrastructure
IT.
b) Innovation :
One TECH Business Solutions annonce aujourd’hui l’intégration de l’Internet Protocol version
6 (IPv6), en collaboration avec l’Agence Tunisienne d'Internet (ATI). One TECH Business
Solution est la première entreprise tunisienne à exploiter cette nouvelle technologie
d’adressage, plus rapide et plus sécurisée en termes d’authentification et de confidentialité
des données.
http://rapportsp.blogspot.com
2) Etude de l’existant :
a) Description de l’existant :
b) Critique de l’existant :
Le fait d’avoir un nombre très important des serveurs à gérer, l’administrateur n’arrive
pas malheureusement à vérifier leurs disponibilités, de déterminer la qualité de service
qu’ils offrent, ni détecter la des équipements (charge CPU, Etat mémoire, surcharge du
disque….) ni de prévenir avoir une attaque ou une panne sur le réseau.
Le seul moyen de détecter ces anomalies ne peut se faire que par la réception des
différentes plaintes et réclamations des clients.
Le but de ce projet est donc de trouver une solution optimale pour la gestion des
serveurs et le monitoring de ses équipements en premier lieu, offrir la possibilité de
devenir « pro actif » face aux problèmes rencontrés en un second lieu, et finalement et le
plus important, de pouvoir détecter et interpréter en un simple coup d’œil les causes et
origines des problèmes rencontrés afin de les fixer le plus rapidement possible.
c) Solution proposée :
Le monitoring et la gestion des serveurs et ses équipements étant un grand problème de
l’administrateur, pour cela j’ai eu l’occasion de mettre en évidence un outil pour
contrôler et superviser le bon fonctionnement du réseau, d’étudier les informations
collectées et de définir des seuils d’alertes qui peuvent servir pour le déclenchement des
alertes lors de la détection des pannes.
Grace à la mise en place d’un système de supervision on peut faire face à ce problème a
travers ses différentes fonctionnalités qu’il offre.
3) Etude de choix :
De nombreux outils de supervision existent aujourd’hui. Certaines permettent à
l'administrateur d'avoir une vue d'ensemble de son réseau, de visualiser la supervision des
équipements et de produire des rapports d'activité, d’autres permettent également de
connaître l’état des différents services, et d’autres qui offrent la possibilité de ressortir de
nombreuses statistiques du réseau permettant une analyse totale.
a) Offres éditeurs :
Les grandes sociétés ont rapidement compris que la supervision était une ressource clés
et un marché porteur pour tous les entreprises. D’où les sociétés n’hésitant pas de plus
en plus à investir dans des produits permettant la supervision et une meilleure gestion
des réseaux.
http://rapportsp.blogspot.com
Deux familles apparaissent, celle proposant des solutions généralistes pour la supervision
des réseaux, des serveurs, des applications, des sites web,… comme les logiciels Patrol
(BMC), d’Unicenter (Computer Associate), de la gamme openview (HP)...
D’autres offrent une supervision des domaines plus spécifiques citant comme logiciel
panorama(Altaworks) qui gère uniquement l’aspect sécurité ou PathWAI (Candle) qui se
penche principalement sur la supervision des applications.
Ces solutions n’ont qu’un seul point commun : un prix élevé.
b) Les offres libres :
Il existe des solutions de supervision libres et professionnelles. Parmi les plus
répandues, nous pouvons citer Nagios, Zabbix, BigBrother2 et OpenNMS.
L’avantage de ces logiciels libres est la gratuité, la disponibilité du code source et
la liberté de faire des modifications au niveau du code selon nos besoins et de le
diffuser ensuite. De plus, il existe une communauté importante d’utilisateurs et de
développeurs qui participent à l’amélioration des logiciels et apportent une
assistance par la mise en ligne des documentations et les participations aux forums.
c) Choix du logiciel :
Les outils de supervision déjà présentés (HPOpenview, Patrol, BigBrother, etc…)
nécessitent un investissement important pour sa mise en place, pour des raisons
propres à l’entreprise, j’ai banni tous ces solutions de ma liste de choix.
Parmi les solutions les plus récemment utilisées, recommandées et surtout Libres,
on citera Nagios et Zabbix.
Voici un tableau comparatif des deux logiciels choisis :
Zabbix
Nagios
Présentation
-Open source, libre
-Open source, Libre.
-Multiplateformes
-Conçu pour les plateformes Unix.
-Homogène.
-Modulaire.
-Moteur en C, interface web utilisateur
-Moteur en C, perl, Sharp…, interface
en PHP, base de données SQL
web en PHP, base de données SQL.
(MySQL, Oracle…)
-Configuration centralisée sur une
-Configuration plus ou moins complexe
même interface graphique.
Peut monitorer de 3 manières :
Peut monitorer de 3 manières :
-L’utilisation des journaux
-Lancement d’un processus sur les
D’exploitation par L’envoie des
machines à monitorer pour collecter
évènements issus des fichiers log en
des données locales, grâce à l’agent
temps réel vers un serveur central
Zabbix (obtenir des infos sans utiliser
offrant les informations nécessaires à
SNMP).
la supervision.
-Requêtes SNMP.
-Supervision active des services et
-Check externes qui sert à tester les
infrastructure qui nous permet de
services réseaux (rien à installer sur
garder l’historique des performances.
Fonctionnalités
-Offre une Interface web de -Offre une interface web basée sur les
consultation et d’administration.
CGL avec gestion des droits pour la
-Peut générer des graphes.
consultation.
http://rapportsp.blogspot.com
-Peut lever des alertes en envoyant des
-Génère des rapports de surveillance.
mails.
-Il a la possibilité de monitorer à
-Supervise des équipements SNMP.
distance à travers un firewall.
-Gère les pannes et les performances
-Il peut définir des serveurs esclaves
qui prennent le relais si le serveur
maitre tombe en panne.
-Surveillance des ressources des
serveurs (CPU, mémoire…)
-Surveillance des services réseaux.
-Arrêt temporaire de la supervision
locale ou globale.
-Génère des graphes par l’interfaçage
avec RRDTools.
Architecture
Architecture généralement basée sur:
Architecture généralement basée sur :
-Serveur Zabbix, le cœur et moteur de
-Le moteur de l’application qui sert à
L’application programmée en C.
ordonnancer les tâches de supervision
-Agent Zabbix pour la collection des
écrit en C.
informations locales.
-Une interface web réalisée à l’aide des
-Une interface web d’administration et
GCI, décrivant la vue d’ensemble su
consultation des données.
système et les anomalies possibles.
-Une base de données SQL.
-Plusieurs plugins qui peuvent être
complétés en fonction des besoins.
-Plus léger grâce à son homogénéité -Une très grande communauté qui
(Pas de plug-in à ajouter). participe activement au
-Mise à jour facile. développement.
-Configuration et utilisation aisée. -Un moteur performant
-Interface vaste mais claire. -solution complète permettant le
reporting, la gestion des pannes et
D’alarmes, gestion des utilisateurs…
-Des plugins permettent aux utilisateurs
de développer facilement ses propres
vérifications de services.
-Possibilité de repartir la supervision
entre plusieurs administrateurs.
-Offre la possibilité de développer ses
propres modules.
sécuriser les données. -Interface peu ergonomique et intuitive.
-Peu d’interfaçage avec d’autres
solutions commerciales.
-Communauté de développeurs limitée.
Notre choix sera Nagios grâce à sa modularité en premier lieu et grâce à ses plugins en
deuxième lieu, Nagios possède une architecture facilement adaptable à l’environnement
puisque ses plugins pouvant être ajoutés, modifiés ou même personnalisés et permettent de
spécifier les tâches afin d’acquérir un résultat voulu.
De plus Nagios est une solution stable, utilisée dans les petites et moyennes infrastructures
que dans les grands parcs informatiques et utilisée surtout par plusieurs entreprises tels que
Yahoo (100 000 serveurs), Yellow pipe WebHosting (7000 serveurs) …
Bien que ce dernier permet de tester l’état de service un certain nombre de fois avant de
considérer qu’il y a défaillance et de remonter l’alerte. ZABBIX n’offre pas cette possibilité.
Le système d’alerte de Nagios est plus robuste, et plus simple à mettre en place que celui de
ZABBIX.
4) Conclusion :
Ce chapitre a été conçu pour familiariser l’environnement du travail en présentant
l’entreprise d’accueil et l’architecture réseau dont elle dispose.
Les problèmes que rencontre la société se sont imposés suite à l’étude de l’existant et à sa
critique, ce qui m’a permis de cerner la problématique de mon projet. J’ai par la suite
proposé des solutions et leur étude a mon encadrant et finalement nous avons posé notre
choix sur la solution que nous jugeons la plus convenable à la société et à la formation que
nous estimons acquérir qui est le logiciel de supervision libre « Nagios ».
Le chapitre suivant attaquera une étude approfondie de la solution choisie.
http://rapportsp.blogspot.com
Chap.2 Présentation de l’outil de supervision Nagios
Dans ce présent chapitre, Je commence par définir la notion de la supervision et ses objectifs
ensuite, analyser de prés les fonctionnalités de la solution proposée, son architecture, et les
différents services qu’elle offre et finir par énumérer les différents fichiers de configurations
sur quoi se base cette solution.
1) La supervision :
a) Définition :
Fonction qui consiste à indiquer et à commander l’état d’un appel, d’un système ou d’un réseau. Les
solutions de supervision permettent de remonter des informations techniques et fonctionnelles du
système d’information.
b) Rôle :
Il existe deux enjeux majeurs pour les directions informatiques. Le premier est de garantir la
disponibilité et les niveaux de service du système en cas de panne ou de dégradation des
performances. Le second est de tenter de prévenir en cas de problème et, le cas échéant, garantir
une remontée d’information rapide et une durée d’intervention minimale. C ‘est le rôle de la
supervision.
Surveiller
Visualiser
Analyser
Piloter
Agir
Alerter
c) Objectifs :
Nagios est une application de supervision système et réseau. Il contrôle les hôtes et services
que vous spécifiez et émet des alertes quand les choses vont mal ou qu'elles reviennent à la
normale.
Nagios a été développé pour fonctionner sur Linux, mais devrait fonctionner sur la plupart
des systèmes Unix.
Etant le successeur de Net Saint dont la première version date de 1999, ce logiciel est
considéré comme une évolution de ce dernier auquel a été ajoutée, il apparaît sous le nom
de Nagios le 10 mai 2002 aux conditions de la GNU General Public License.
Nagios est licencié sous les termes de la version 2 de la GNU General Public License telle que
publiée par la Free Software Fondation. Cela vous donne la permission légale de copier,
distribuer et/ou de modifier Nagios sous certaines conditions.
b) Fonctionnalités :
Les fonctionnalités de Nagios sont très nombreuses, parmi les plus communes nous pouvons citer les
suivantes :
La surveillance des services réseaux (SMTP, POP3, http, NTP, PING, etc).
La supervision des ressources des hôtes (charge processeur, utilisation disque, etc).
Simplicité de système de plugins permettant aux utilisateurs de développer facilement leurs
propres vérifications de services.
Contrôle parallèle des services.
Représentation coloriée des états des services et hôtes définies.
Surveillance des processus (sous Windows, Unix…).
Notifications des contacts quand un hôte ou un service a un problème et quand celui-ci est
résolu (via email, SMS, ou par tout autre méthode définie par l'utilisateur)
Gestion des alertes.
Génération de rapports.
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 2 modélise cet aspect :
http://rapportsp.blogspot.com
c) Architecture de Nagios:
La solution Nagios se base sur l’architecture agent-serveur et repose sur un serveur web et des CGI.
Elle peut intégrer une base de données de type MySQL ou PostgreSQL pour y stocker des
informations de supervision. Bien que conseillée, la base de données n'est pas essentielle dans le
fonctionnement de Nagios et peut être remplacée par de simples fichiers tournants.
Un ordonnanceur : qui est le cœur du serveur Nagios, il est charger de contrôler quand et dans quel
ordre les contrôles des services sont effectués, et responsable aussi de la collecte et l’analyse des
informations, la réaction, la prévention, la réparation et l’ordonnancement des vérifications.
Une IHM : est une interface graphique visible à travers un simple serveur web tel Apache conçue
pour rendre plus exploitable les résultats elle basée sur les CGI (Common Gateway Interface) fournis
par défaut lors de l’installation de Nagios qui interprètent les réponses d’une manière conviviale
l’état des services contrôlés.
Les greffons : les greffons de Nagios (les sondes ou plugins) sont de petits scripts ou programmes qui
sont la base des vérifications. Ils sont 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
Cette interface nous offre d’une façon claire une vue d’ensemble du système d’information et l’état
des services surveillés, elle indique comment transmettre la requête du serveur HTTP au
programme et comment récupérer la réponse générée. Les données concernant les états
des hôtes supervisés sont stockées dans une base de données MySQL ou dans des fichiers
tournants.
http://rapportsp.blogspot.com
L'architecture standard de Nagios peut donc être représentée de la manière suivante :
Le choix de mettre en place une base de données dépend de l'utilisation qui sera faite de Nagios et
des données collectées. Libre choix à l’utilisateur d’utiliser une base de données ou des fichiers
tournants.