Académique Documents
Professionnel Documents
Culture Documents
Université de Montpellier II
- Faculté des Sciences -
Rapport de stage
effectué au Lirmm
du 16 avril au 30 septembre 2009
Je tiens à remercier la direction du LIRMM de m’avoir permis d’effectuer mon stage dans
ce laboratoire.
Je remercie le groupe SI2 de m’avoir accueillie durant ces six mois très enrichissants.
Je remercie enfin Michel Jacquot et Cathy Tuchming pour l’aide et les conseils concernant
les missions évoquées dans ce rapport, qu’ils m’ont apportés durant ce stage.
2
Résumé
3
Chapitre 1
Présentation
1.1 Le LIRMM
Le Laboratoire d’Informatique, de Robotique et de Microélectronique de Montpellier
(LIRMM) est une unité mixte de recherche CNRS 1 et UM2 2 regroupant 360 personnes
dont environ 140 chercheurs et enseignant-chercheurs et autant de doctorants auquels
s’ajoutent une trentaine de contractuels de recherche (dont des postdocs). Ils se répartissent
dans trois départements scientifiques de recherche :
• Informatique : Étude en algorithmique, en base de données et système d’information,
en génie logiciel, intelligence artificielle et sur les interactions homme-machine.
• Microélectronique : Conception et vérification de systèmes intégrés et microsystèmes,
avec un accent sur les aspects de modélisation et méthodologie.
• Robotique : Recherches en automatique, traitement du signal et de l’image, produc-
tique et informatique industrielle (modélisation, conception et commande).
Ses activités de recherche positionnent pleinement le LIRMM au coeur des sciences et
technologies de l’information, de la communication et des systèmes. Elles font l’objet de
transferts technologiques vers les entreprises via des partenariats ou encore à travers l’aide
à la création d’entreprises (incubateurs 3 ).
Le LIRMM n’oublie pas sa mission d’enseignement et de diffusion de la recherche : il
pilote ainsi deux formations doctorales, l’une en Informatique, l’autre en Systèmes auto-
matiques et microélectroniques.
Aux financements du CNRS et de l’Université Montpellier 2, s’ajoutent ceux de nom-
breux programmes de recherche nationaux et européens auxquels le LIRMM participe.
Toute cette activité de recherche est soutenue par les services généraux :
– service administratif et financier ;
– service logistique ;
– services techniques et informatiques : RéseauX, SI2, Appui à la recherche ;
– communication, documentation, incubation.
4
composé de cinq permanents dont les compétences diverses permettent de répondre aux
besoins très variés des utilisateurs.
Comme son nom l’indique, le service SI2 assure principalement deux missions au sein
du laboratoire décrites ci-après.
De plus, le SI2 réalise des projets à la demande des services du LIRMM : application de
gestion d’absence, migration du fond documentaire sous le logiciel PMB 6 .
5
Figure 1.1 – Services et serveurs gérés par le SI2. Certains serveurs abritant plusieurs
services, ils apparaissent plusieurs fois sur ce schéma.
6
Chapitre 2
La supervision ou surveillance
systèmes et réseaux
2.1.1 Définition
La supervision désigne un ensemble de concepts recouvrant la surveillance du bon
fonctionnement d’un système informatique (matériel, services, applicatifs) en production.
On distingue trois types :
Supervision système. La supervision système porte principalement sur les trois types
principaux de ressources système : processeur, mémoire et stockage.
Supervision réseau. La supervision réseau porte sur la surveillance de manière continue
de la disponibilité des services en ligne - du fonctionnement, des débits, de la sécurité
mais également du contrôle des flux.
Supervision des applications. La supervision des applications (ou supervision appli-
cative) permet de connaître la disponibilité des machines en terme de services rendus
en testant les applications hébergées par les serveurs.
À titre d’exemple, un serveur Web peut avoir une supervision système et réseau avec
des signaux au vert, et la machine ne sera pourtant pas disponible au sens du service Web
si apache n’est pas présent ou n’est pas en mesure de servir des pages Web.
7
Certaines solutions n’utilisent pas ce modèle de fonctionnement et préfère se baser sur le
protocole SNMP (Simple Network Management Protocol) qui permet de gérer le matériel
informatique à distance (voir annexe A). Pour les services publics (Web, messagerie), le
serveur de supervision peut se contenter de simuler le comportement de l’application en
faisant par exemple une requête HTTP sur le serveur Web pour vérifier son activité. On
peut donc faire de la supervision sans installer d’agent au préalable.
En cas de dysfonctionnement, le système de supervision permet d’envoyer des mes-
sages sur la console de supervision, ou bien d’envoyer un courriel, un SMS voire un appel
téléphonique à l’opérateur d’astreinte.
2.1.3 Sécurité
Le serveur de supervision ayant accès à énormément d’informations, il doit être consi-
déré comme un point potentiellement dangereux et doit être sécurisé au maximum.
2.1.4 Besoins
Les besoins en matière de supervision de systèmes et de réseaux sont assez variés.
Certaines entreprises souhaitent simplement une visibilité en temps réel de leur fonction-
nement, d’autres veulent également des alarmes ou des actions automatiques en cas de
problème, des mesures de performances ou un historique pour l’aide à la décision, voire
l’ensemble.
2.2 Panorama
2.2.1 Un détour par le « libre »
Un logiciel libre est un logiciel dont la licence dite libre donne à chacun (et sans
contrepartie) le droit d’utiliser, d’étudier, de modifier, de dupliquer et de diffuser (donner
et vendre) le dit logiciel. Richard Stallman a formalisé la notion de logiciel libre dans la
première moitié des années 1980 puis l’a popularisée avec le projet GNU et la Free Software
Foundation (FSF). Les logiciels libres constituent une alternative à ceux qui ne le sont pas,
qualifiés de « propriétaires » ou de « privateurs ».
Comme souvent répété, les logiciels libres ne sont pas forcément gratuits. De plus, il
existe plusieurs types de licences, sous lesquelles les logiciels peuvent être distribués, qui
donnent plus ou moins de droits aux utilisateurs. La plus connue d’entre elles est la licence
GPL (GNU Public Licence) qui garantie les libertés suivantes :
1. La liberté d’exécuter le programme ;
2. La liberté d’étudier le fonctionnement du programme ce qui suppose l’accès au code
source ;
3. La liberté de redistribuer des copies ce qui comprend la liberté de vendre des copies ;
4. La liberté d’améliorer le programme et de publier ses améliorations ce qui suppose,
là encore, l’accès au code source.
On parle souvent de logiciel Open Source.
La possibilité d’avoir accès au code source permet un développement partagé par une
communauté de programmeurs et d’utilisateurs. Le grand nombre des premiers est un gage
de qualité et de réactivité. Le soutien par un éditeur garantit une certaine pérennité de la
solution.
Quant aux utilisateurs, ils ont une grande influence car ce sont eux qui font remon-
ter les dysfonctionnements et qui proposent des améliorations tant du logiciel que de la
8
documentation. De plus, l’accès au code source permet d’adapter le logiciel à son pro-
blème et de le faire évoluer selon ses besoins, tout en faisant bénéficier la communauté de
ces améliorations. Cette souplesse d’utilisation est souvent ce qui fait défaut aux logiciels
propriétaires.
Cependant, il faut garder à l’esprit que le déployement et le maintien d’un logiciel n’est
pas une tâche aisée. Contrairement aux solutions propriétaires, le support n’est en effet
pas garanti : si un problème se fait jour ou qu’un développement est nécessaire, il n’est
pas sûr d’obtenir une réponse ou un soutien de la part de la communauté.
Les entreprises qui désirent passer aux logiciels libres s’adressent d’ailleurs de plus en
plus souvent à des sociétés de services pour leur déployement et leur maintien. Ou bien
elles souscrivent à des contrats de maintenance auprès d’éditeurs de logiciels libres : le
logiciel lui-même est gratuit mais le support, payant, garantit une réponse rapide en cas
de problème. L’éditeur peut aussi réaliser des développements à la demande du client.
1. http://www.eclipse.org/cosmos/
9
Nom Licence Langage Graphes Greffons (Création) Interface Web Droits utilisateur
Nagios [5] GPL C Oui Oui (Facile) Oui Oui
OpenNMS [6] GPL Java Oui Oui (Assez facile) Oui Oui
Hyperic [7] GPL Java/JBOSS Oui Oui (Facile) Oui Oui
& commerciale
10
Zabbix [8] GPL C/Php Oui Oui (Facile) Oui Oui
Zenoss [9] GPL Python/Zope Oui Oui (Facile) Oui Oui
& commerciale
Table 2.1 – Quelques solutions libres et leurs caractéristiques (adapté du tableau http://en.wikipedia.org/wiki/Comparison_of_network_
monitoring_systems)
c’est-à-dire pour accomoder l’ajout de matériel ou d’applications non supportés en stan-
dard par la solution de surveillance. Il doit permettre l’envoi de notifications en cas de
problème par email, SMS ou appel téléphonique.
Ce logiciel doit être « libre », pour limiter les coûts (pas d’acquisition de licence), tout
en étant soutenu par une large communauté de développeurs et d’utilisateurs, voire par
un éditeur, pour assurer sa pérennité et un soutien si un quelconque problème se présente.
Il est installable sous CentOS de préférence.
Idéalement, cette solution est déjà deployée dans d’autres entreprises ou organismes
avec un retour positif.
Les tests porteront sur les services dits publics (serveurs Web, messagerie, base de
donnees MySQL, annuaire LDAP) qui sont ceux que le SI2 désire surveiller en priorité.
Enfin, la solution choisie doit être bien documentée, tant au niveau de l’installation que
de l’utilisation. Le logiciel doit, de préférence, comporter une interface graphique agréable
et simple d’utilisation. Il doit être aisé de le maintenir, en particulier pour les mises à jour.
Le stagiaire devra former ses collègues et rédiger une documentation administrateur
et utilisateur sous forme de notices qui seront conservées sur le site technique du SI2.
11
Figure 2.1 – Configuration de tests : à gauche, les machines de supervision ; à droite, les
machines surveillées.
Les services installés sur ces hôtes sont une sélection de services effectivement utilises
par le SI2. Nous avons donc un serveur de messagerie, un serveur Web, une base de données
mysql et un annuaire ldap.
Nous utiliserons 3 recipiendaires pour les emails d’alerte :
– un responsable pour le système entier qui recevra toutes les alertes 24h sur 24h, 7
jours sur 7 ;
– deux gestionnaires restreints à un sous-groupe (serveur Web/base de donnees) qui
ne recevront les alertes qu’entre 14h et 17h du lundi au jeudi.
12
Chapitre 3
Nagios/Centreon
3.1 Présentation
Un des prérequis pour utiliser Centreon est d’installer Nagios et comprendre son fonc-
tionnement.
13
Figure 3.1 – Fonctionnement de Nagios.
14
Cette surveillance est dite active car elle se fait à la demande du serveur Nagios.
Tous les services ne peuvent être testés à intervalles fixes : par exemple, les sauvegardes
effectués par le SI2 tous les jours peuvent prendre plus ou moins de temps. Il faut donc un
agent qui surveille ces activités et acquittent leur bon fonctionnement auprès de Nagios :
NSCA (Nagios Service Connection Acceptor) est ce démon qui permet de remonter les
alertes asynchrones vers le serveur Nagios (Fig. 3.3). Dans ce cas, on parle de surveillance
passive car Nagios est à l’écoute.
Nagios n’est qu’un ordonnanceur de scripts qui acquitte les réponses des différents
hôtes interrogés. Il est donc nécessaire d’ajouter un module pour conserver les données
recueillies et ainsi pouvoir générer des graphes de suivi. Ce module NDO utilise une base
de données MySQL pour le stockage des données (Fig. 3.4). Le contenu de cette base peut
ensuite être exploité par n’importe quel logiciel tier.
Outre la configuration par l’édition de fichier texte, l’autre point faible de Nagios est
la non-convivialité de son interface Web. Mais sa grande force est qu’il s’agit simplement
d’un ordonnanceur qui se charge d’excécuter des commandes (greffons), ce que ces greffons
testent ne le concerne pas. De même, ce que nous faisons des résultats obtenus lui importe
peu. On peut donc définir facilement de nouveaux greffons et on peut développer de
15
nouvelles interfaces pour Nagios. Nous nous proposons d’utiliser l’une d’elles, Centreon.
Figure 3.5 – Exemple de graphique produit par Centreon :il s’agit du temps de réponse
à une requête ICMP Echo afin de s’assurer de l’activité du serveur.
16
Figure 3.6 – Interface Web sous Centreon : état des services surveillés (ils sont tous OK).
17
graphiques sur Centreon mais ne pourront pas le configurer (groupe de simples utilisa-
teurs).
18
Figure 3.7 – Centreon en état d’alerte : les deux serveurs ont été éteints (encadrés sur la
figure). On voit les services passés au rouge.
Figure 3.8 – Charge processeur du serveur Webmail installé sur la machine virtuelle virt2
(Webmail sous CentOS).
19
Chapitre 4
Zabbix
4.1 Présentation
Zabbix [8] est une solution de supervision système développée par Alexei Vladishev
depuis 2001. Il est aussi le directeur de ZABBIX SIA, basé à Riga, en Lettonie. Zabbix est
conçu pour surveiller les services, serveurs et tourtes sortes de matériel réseau. Il utilise
une base de données pour stocker les informations et se configure à travers une interface
Web très riche (Fig. 4.1).
20
Il se base sur les protocoles de communication connus (SNMP, HTTP, etc.), ce qui
permet une surveillance avec ou sans agent comme expliquer 8. Il permet de produire des
graphiques et des alertes avec envoi de notifications (email, SMS).
Le coeur de Zabbix est codé en C et son interface en PHP. Il est livré sous la licence
GPL v2.
4.2.1 Installation
L’installation, détaillée dans l’annexe C, est assez simple et est très bien documentée.
Nous choisissons de travailler en mode client/serveur, qui nécessite l’installation d’agents
sur les hôtes, car c’est le mode conseillé par la documentation.
21
Figure 4.2 – Zabbix en état d’alerte : les deux serveurs ont été éteints (encadrés sur la
figure).
Figure 4.3 – Graphique sous Zabbix. Charge processeur du serveur Webmail installé sur
la machine virtuelle virt2 (sous CentOS).
22
Chapitre 5
Comme le montre les tableaux 5.1, 5.2 et 5.3, les deux solutions sont comparables en
terme de capacité : elles couvrent toutes les applications et le matériel que nous souhaitons
surveillés et permettent d’utiliser divers systèmes de notification (email, SMS).
Les grandes différences proviennent de la documentation, et de la communauté propre
à chaque solution, ainsi que de l’ergonomie de l’interface Web.
Zabbix est une solution complète très simple d’installation. Cependant elle est encore
jeune et les retours de déployement sur de gros systèmes commencent seulement à paraitre.
De plus, son interface Web me semble un peu trop touffu : Zabbix est très modulaire
et flexible, ce qui rend sa configuration et donc l’interface qui y donne accès un peu
compliquées. C’est une solution à surveiller car elle évolue très vite et peut être plus
adaptée si le service SI2 venait à grossir.
Pour un système aussi simple que celui du SI2, le couple Nagios/Centreon nous semble
plus approprié : les exemples concrets d’installation, d’application et les greffons abondent
sur Internet. En particulier, la documentation de Nagios, très didactique, permet de com-
prendre les dessous de la supervision et de prendre en main le logiciel (Nagios et Centreon)
très rapidement.
23
Services Zabbix Centreon
LDAP OK OK
Messagerie OK OK
MySQL OK OK
Postgresql OK OK
Oracle OK OK
Apache OK OK
Tomcat OK OK
Acquittement sauvegardes OK OK
Table 5.2 – Support des services. On constate que les deux solutions couvrent toutes les
applications que nous désirons surveillées.
Table 5.3 – Supervision des caractéristiques des serveurs (processeurs, mémoire, occupa-
tion des disques, montage NFS).
Le serveur Centreon
Le serveur sera hébergé sur une machine virtuelle dédiée (sous CentOS 5.3). Nous
pouvons utiliser la version qui a servi pour les tests. Nous pensons tout de même qu’il
serait formateur pour les membres du SI2 intéressés, de procéder à l’installation eux-
mêmes, cette installation n’étant pas très difficile.
Un groupe si2 qui comprend tous les membres du SI2 interessés est créé. Ils reçoivent
les alertes par email.
Nous installons le démon SNMP sur les hôtes et les déclarons auprès de Centreon en
indiquant le groupe si2 comme récipiendaire des alertes (voir la figure 1.1 pour la liste des
serveurs).
Nous déclarons ensuite les services à surveiller et ici encore, associons le groupe si2
aux alertes (voir la figure 1.1 pour la liste des services).
24
5.2.2 Évolution de la surveillance : avec agent
Agents NRPE/NSCA
Lorsque le groupe SI2 est à l’aise avec la manipulation de Centreon, nous pouvons
installer les agents NRPE/NSCA sur les hôtes le nécessitant. Par exemple, le service SI2
a mis en place des tâches cron qui permettent de faire une sauvegarde automatique des
serveurs. Lorsque celle-ci est achevée, le démon NSCA peut prévenir le serveur Centreon.
Groupes de services
Certains services sont dédoublés : en cas de panne du serveur ldap abritant l’annuaire
LDAP, par exemple, le serveur ocotopus prend le relais puisqu’un annuaire LDAP secon-
daire y est installé.
Nous pouvons définir un tel groupe de services : dans ce cas, le service LDAP est
marqué comme en fonctionnement mais l’hôte ldap est signalé aux gestionnaires comme
ayant un problème.
À terme, il s’agit de remplacer toutes les alertes individuelles mises en place manuel-
lement par le service SI2 par les services de Nagios/Centreon.
25
Chapitre 6
Conclusions
26
Annexes
27
Annexe A
Le protocole SNMP
A.1 Le protocole
Une requête SNMP est un datagramme UDP habituellement à destination du port
161 de la machine surveillée. La réponse, quant à elle, est envoyée vers le port 162 du
superviseur.
Les commandes utilisées dans les requêtes et réponses sont indiquées dans le ta-
bleau A.1. Il est possible de lire et de modifier les données sur la machine distante.
Commande Action
get-request Le Superviseur SNMP demande une information à un agent SNMP
get-next-request Le Superviseur SNMP demande l’information suivante à l’agent SNMP
set-request Le Superviseur SNMP met à jour une information sur un agent SNMP
get-reponse L’agent SNMP répond à un get-request ou a un set-request
trap L’agent SNMP envoie une alarme au Superviseur
[ !ht]
28
Figure A.1 –
A.2 La MIB
Pour que SNMP fonctionne, il faut une standardisation des informations que ce pro-
tocole peut transporter : ces informations sont stockées dans une MIB (Management In-
formation Base).
La MIB se présente comme une base de données normalisée, qui permet de lire et
d’écrire sur les équipements distants, de façon également normalisée. Ce sera à l’agent lui-
même de faire la traduction entre les informations transmises par SNMP et la plate-forme.
Elle est organisée hiérarchiquement, comme montré sur la figure A.2. Chaque noeud ou
feuille de l’arbre est situé par un index, cette numérotation étant normalisée. Pour rendre
cet arbre plus lisible, les noeuds possède un nom, cette nomenclature étant elle-même
normalisée.
Elle contient une partie commune à tous les agents SNMP en général, une partie
commune à tous les agents SNMP d’un même type de matériel et une partie spécifique à
chaque constructeur.
On peut lire la MIB en faisant référence aux index ou aux noms : interroger .1.3.6.1.2.1.1.3.0
ou .iso.org.dod.internet.mgmt.mib-2.system.sysUpTime.0 désigne la même feuille, sysUp-
TimeInstance.
Un agent SNMP est plus ou moins finement paramétrable, suivant le système. Il est
possible, par exemple de créer des groupes de sécurité qui auront accès en lecture seule,
d’autres en lecture/écriture, d’autres encore en lecture seule, mais sur certaines branches
seulement.
Chaque groupe devra disposer d’une sorte de mot de passe, appelé "community". En
général, la communauté "public" est celle qui a le droit de lecture sur les informations non
sensibles.
L’inconvénient majeur est qu’avec SNMP v1, qui est actuellement la seule version
vraiment stabilisée et reconnue par tous, ce mot de passe circule en clair sur le réseau, ce
qui rend dans ce cas SNMP plus que dangereux.
Les versions suivantes de SNMP corrigent ce problème majeur.
29
+--system(1)
|
+-- -R-- String sysDescr(1)
| Textual Convention: DisplayString
| Size: 0..255
+-- -R-- ObjID sysObjectID(2)
+-- -R-- TimeTicks sysUpTime(3)
| |
| +--sysUpTimeInstance(0)
|
+-- -RW- String sysContact(4)
| Textual Convention: DisplayString
| Size: 0..255
+-- -RW- String sysName(5)
| Textual Convention: DisplayString
| Size: 0..255
+-- -RW- String sysLocation(6)
| Textual Convention: DisplayString
| Size: 0..255
+-- -R-- INTEGER sysServices(7)
| Range: 0..127
+-- -R-- TimeTicks sysORLastChange(8)
| Textual Convention: TimeStamp
|
+--sysORTable(9)
|
+--sysOREntry(1)
| Index: sysORIndex
|
+-- ---- INTEGER sysORIndex(1)
| Range: 1..2147483647
+-- -R-- ObjID sysORID(2)
+-- -R-- String sysORDescr(3)
| Textual Convention: DisplayString
| Size: 0..255
+-- -R-- TimeTicks sysORUpTime(4)
Textual Convention: TimeStamp
30
Par exemple, si on veut connaître depuis combien de temps le serveur fonctionne (ou
uptime), on fait la requête suivante :
31
Annexe B
Installation de Centreon
Centreon nécessite l’installation de Nagios en premier lieu. Ensuite, une fois Centreon
installé, la déclaration des machines peut se faire à travers l’interface Web.
Nous avons suivi les instructions données dans la documentation fournie avec Nagios
v3.0.6 [11] et Centreon v2.0.2 [12] et sur le site de Nicolargo [13]. Nous n’indiquons ici que
les grandes lignes pour donner une idée de la complexité de l’installation.
# /usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg
[...]
Total Warnings: 0
Total Errors: 0
[...]
Pour finir avec Nagios lui-même, nous configurons le serveur de messagerie sendmail
pour pouvoir envoyer des emails d’alerte.
32
B.3 Installation de Centreon
Après avoir téléchargé le logiciel Centreon, nous l’avons installé à l’aide du script
d’installation fourni. Ceci fut rapide et sans douleur. La configuration se termine à travers
l’interface Web de Centreon.
Une fois connecté, on constate qu’une machine est déjà surveillé : il s’agit du serveur
abritant Centreon et Nagios.
33
Annexe C
Installation de Zabbix
34
Bibliographie
[1] Mieux surveiller son réseau grâce aux outils open source.
http://www.01informatique.fr/reseaux-telecoms-117/
surveiller-reseau-open-source-11422/, Mis en ligne le 09/12/2008, consulté en
mai 2009.
[2] Supervision : ce que valent les outils open source. http://pro.01net.com/
editorial/344735/supervision-ce-que-valent-les-outils-open-source/,
Mis en ligne le 23/03/2007, consulté en mai 2009.
[3] Network monitoring. http://en.wikipedia.org/wiki/Network_monitoring, Der-
nière mise à jour en 2009, consulté en mai 2009.
[4] Le blog de nicolargo. http://blog.nicolargo.com/, Dernière mise à jour 2009,
consulté en mai 2009.
[5] Nagios. http://www.nagios.org/.
[6] Opennms. http://www.opennms.org/.
[7] Hyperic. http://www.hyperic.com/.
[8] Zabbix. http://www.zabbix.com/.
[9] Zenoss. http://www.zenoss.com/.
[10] Centreon. http://www.centreon.com/.
[11] Nagios core version 3. http://nagios.sourceforge.net/docs/3_0/, Dernière mise
à jour 16 juin 2009, consulté en juin 2009.
[12] Centreon 2 setup : Centos/fedora/rhel. http://en.doc.centreon.com/Setup:
Centos/Fedora/RHEL, Dernière mise à jour 16 août 2009, consulté en juin 2009.
[13] Le serveur de supervision libre - part 2. http://blog.nicolargo.com/2009/01/
le-serveur-de-supervision-libre-part-2.html, Dernière mise à jour 20 janvier
2009, consulté en juin 2009.
[14] Installation de zabbix sur linux. http://blog.nicolargo.com/2007/11/
installation-de-zabbix-sur-linux.html, Dernière mise à jour 20 novembre 2007,
consulté en juin 2009.
35
Table des matières
Remerciements 2
Résumé 3
1 Présentation 4
1.1 Le LIRMM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.2 Le service SI2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.2.1 Axe « Système d’Information » . . . . . . . . . . . . . . . . . . . . . 5
1.2.2 Axe « Systèmes informatiques » . . . . . . . . . . . . . . . . . . . . . 5
1.2.3 Évolution du service . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.3 Cahier des charges initial . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
3 Nagios/Centreon 13
3.1 Présentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
3.1.1 Nagios [5] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
3.1.2 Centreon [10] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
3.2 Mise en oeuvre de Nagios/Centreon . . . . . . . . . . . . . . . . . . . . . . 16
3.2.1 Installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
3.2.2 Déclaration de gestionnaires . . . . . . . . . . . . . . . . . . . . . . . 16
3.2.3 Déclaration d’hôtes et de services . . . . . . . . . . . . . . . . . . . . 18
3.2.4 Définitions d’alerte . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
3.2.5 Arrêts de service ou d’hôte . . . . . . . . . . . . . . . . . . . . . . . 18
3.2.6 Arrêt programmé . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
3.2.7 Production de graphiques . . . . . . . . . . . . . . . . . . . . . . . . 18
36
4 Zabbix 20
4.1 Présentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
4.2 Mise en oeuvre de Zabbix . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
4.2.1 Installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
4.2.2 Déclaration de gestionnaires . . . . . . . . . . . . . . . . . . . . . . . 21
4.2.3 Déclaration d’hôtes et de services . . . . . . . . . . . . . . . . . . . . 21
4.2.4 Définitions d’alerte . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
4.2.5 Arrêts de service ou d’hôte (intempestifs ou programmés) . . . . . . 21
4.2.6 Production de graphiques . . . . . . . . . . . . . . . . . . . . . . . . 21
6 Conclusions 26
Annexes 27
A Le protocole SNMP 28
A.1 Le protocole . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
A.2 La MIB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
A.3 La sécurité avec SNMP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
A.4 Interrogation d’un agent . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
A.5 Installation et utilisation de SNMP . . . . . . . . . . . . . . . . . . . . . . . 31
A.5.1 Sous CentOS 5.3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
A.5.2 Sous OpenSolaris 2009.06 . . . . . . . . . . . . . . . . . . . . . . . . 31
B Installation de Centreon 32
B.1 Installation de Nagios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
B.2 Installation de NDO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
B.3 Installation de Centreon . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
C Installation de Zabbix 34
Bibliographie 35
37