Beruflich Dokumente
Kultur Dokumente
GROUPE :
TRI2 B
Ralis par :
Boujdour Chaima
Chbani Rabab
par :
TRI2 GB
NAGIOS
Encadr
1
Elgoutay Sara
FATIMA
Mme. SALIM
2014/2015
TRI2 GB
NAGIOS
Remerciement
Tout dabord, ce travail ne serait
pas aussi riche et naurait pas pu
avoir le jour sans laide et
lencadrement de Mme SALIM
FATIMA , On la remercie pour la
qualit de son encadrement
exceptionnel, pour sa patience, sa
rigueur et sa disponibilit durant
notre prparation de ce projet de
fin de formation . Enfin nous
remercions nos collgues et aussi
nos formateurs de lInstitut
Spcialis des Technologies
Appliqus Marrakech .
TRI2 GB
NAGIOS
TRI2 GB
NAGIOS
Sommaire
Remerciement
.3
Introduction
gnrale.5
A. Partie thorique : prsentation de Nagios comme solution
supervision systmes
rseaux
6
I. NAGIOS comme outils pour la supervision de
rseaux6
1) Cest quoi
Nagios ?..............................................................................
..........6
2) Historique
..6
3) Version et
licence7
4) Avantages et
inconvnients.8
5) Fonctionnalits de
Nagios.8
II. Concepts et principe de fonctionnement de
Nagios....10
1) Comment Nagios fonctionne-t-il ?
...10
2) Architecture de Nagios
...10
3) C'est quoi un greffon
(plugin)?.............................................................11
4) Excution des
greffons12
a. NSCLIENT
12
b. NRPE
12
TRI2 GB
NAGIOS
c. NSCA
13
d. NDOUTils
..14
5) Emplacement du systme de
supervision.14
B. Partie pratique : Installation et configuration de
Nagios15
I. Installation de
Nagios...15
1) Prrequis
.....15
a. Cration d'un utilisateur
Nagios....15
b. Compilation et
installation....15
II . Configuration de
Nagios.16
1) Serveur
web
16
2) Nagios
.....16
III. Linterface de
Nagios..
21
1) Les vue du
monitoring.21
2) Les vue du
reporting.25
C. Conclusion
.....29
TRI2 GB
NAGIOS
Introduction
L
TRI2 GB
NAGIOS
A. Partie thorique :
Nagios comme solution supervision systmes et
rseaux :
3. Version et licence
4. Avantages et inconvnients :
Avantages
o
o
o
o
o
Inconvnients
o
o
o
o
5. Fonctionnalits de Nagios :
Nagios possde de nombreuses fonctionnalits, voici les
principales :
Surveillance des services rseaux (SMTP, POP3, http, NNTP,
PING, etc.)
_ La supervision distance peut utiliser SSH ou un tunnel SSL
(notamment via un agent NRPE).
Surveillance des ressources des stations (serveur, routeur ...)
comme la charge du processeur, des informations sur lutilisation
des disques durs, les processus en cours, les fichiers de log, . . .
Surveillance des donnes environnementales comme par
exemple la temprature.
Une conception simple de greffons permettant aux
administrateurs de dvelopper facilement leurs propres
fonctionnalits de surveillance.
TRI2 GB
NAGIOS
TRI2 GB
NAGIOS
TRI2 GB
NAGIOS
a. NSClient :
se base sur une architecture client/serveur. La partie cliente
(nomme check_nt), doit tre disponible sur le serveur Nagios. La
partie serveur (NSClient++) est installer sur chacune des
machines Windows surveiller.
TRI2 GB
NAGIOS
c. NSCA :
La seule diffrence quil y a entre les contrles actifs et passifs est
que dans le premier cas, les contrles sont raliss par Nagios alors
que dans le deuxime cas, ils sont raliss par des applications
externes. Une fois quune application externe a ralis un contrle
de service, elle soumet le rsultat Nagios via le fichier de
commande externe. Puis Nagios se charge de lire tous les rsultats
et de les replacer. Lagent NSCA permet lenvoi de commandes
externes Nagios.
d. NDOUtils
NDOUtils est un addon qui vous permet de stocker toutes les
informations d'tat de Nagios dans une base de donnes
MySQL. Plusieurs instances de Nagios peuvent tous stocker leurs
informations dans une base de donnes centrale pour le reporting
centralis. Ce sera probablement servir de base pour une nouvelle
interface web base sur PHP pour Nagios l'avenir.
B.
suivantes
: libgd
1.6.3 ou
b. Compilation et installation
Une fois les pr requis installs, et les sources rcupres sur
le site officiel, la phase d'installation suit les tapes suivantes
Il faut commencer par la phase de compilation, avec les options
choisies
./configure --options
# make all
#
make install
TRI2 GB
NAGIOS
make install-init
make install-commandmode
# make install-config
L'installation de Nagios est alors termine. Il faut maintenant
passer la phase de configuration.
II.Configuration de Nagios
1. Serveur web
L'accs Nagios doit tre restreint car il peut montrer des informations sensibles voire
confidentielles concernant le systme d'information.
Par ailleurs, des actions peuvent tre entreprises via l'interface web, allant de l'acquiescement
des alarmes jusqu'au redmarrage de machines.
Pour cette raison, il faut protger l'accs aux CGI de Nagios, au travers le mcanisme
d'authentification de votre serveur web (ex : mcanisme htpasswd pour Apache)
2. Nagios
La configuration de Nagios demande beaucoup de temps et n'est pas chose aise. En effet,
l'ensemble de la configuration du logiciel se fait dans des fichiers textes d'extension .cfg
L'ensemble des fichiers de configuration sont dfinis selon le format suivant
define type{
attribut1
TRI2 GB
NAGIOS
valeurs
1
attribut2
...
}
valeurs
valeurs
Ce mcanisme de dfinition implique qu'aucun espace ne pourra tre insr dans les paramtres
et leurs valeurs
La cohrence des fichiers de configuration peut tre teste en excutant Nagios avec l'option v et en lui fournissant le fichier de configuration principal
# /etc/init.d/nagios -v [chemin d'accs au fichier nagios.cfg]
Nagios supervise les quipements travers le rseau. Ils peuvent tre des serveurs, des
quipements rseaux, ou tout autre type de machine relie au rseau.
Ces hosts peuvent tre regroups dans un ou plusieurs groups, permettant ainsi d'agir sur un
ensemble de machines plutt que sur chacune, une par une.
Viennent ensuite les services. Ils correspondent aux services tests par les plugins. Dfinis dans
un fichier de configuration, les services font appel aux plugin via descommands elles-mme
dfinies dans un fichier checkcommands.cfg
L'ordonnancement de la vrification des services se fait elle selon des priodes de temps dfinis
par les clauses timeperiod dans le fichier timeperiods.cfg
Le rle de Nagios est donc de prvenir lorsqu'un problme survient. Les contacts prvenir sont
dfinis dans le fichier contacts.cfg et peuvent eux aussi tre groups dans le
fichier contactgroups.cfg
L'escalade des alertes entre les groupes, en cas de non rponse, peut tre dfinie dans le
fichier escalations.cfg
Il reste alors le fichier misccommands.cfg dans lequel sont dclares les commandes nondestines au lancement de plugin. On y trouvera par exemple les commandes ncessaires
l'envoi de mail, de SMS, etc..
Enfin, d'autres fichiers peuvent galement tre utiliss tels que dependencies.cfg pour dfinir
des dpendances entre services, cgi.cfg pour la configuration des CGI,hostextinfo.cfg pour les
infos supplmentaires sur les htes (icne, coordonnes graphiques sur la statusmap, ...)
et serviceextinfo.cfg idem que hostextinfo.cfg mais pour les services.
Les principaux fichiers de configuration sont donc les suivants :
nagios.cfg
ressource.cfg
hosts.cfg
hostgroups.cfg
services.cfg
TRI2 GB
NAGIOS
servicegroups.cfg
checkcommands.cfg
misccommands.cfg
timeperiods.cfg
contacts.cfg
contactgroups.cfg
escalations.cfg
dependencies.cfg
cgi.cfg
hostextinfo.cfg
serviceextinfo.cfg
nagios.cfg
Il s'agit du fichier principal de configuration de Nagios. Il contient notamment la liste des autres
fichiers de configuration utiliss, ainsi que l'ensemble des directives globales de fonctionnement
de Nagios, comme le nom et le groupe de l'utilisateur nagios.
ressource.cfg
Il s'agit d'un fichier de dclaration utilis par les autres fichiers de configuration de Nagios. Il
permet de dfinir des variables globales pour une utilisation simplifie dans les autres fichiers
de configuration (ex : $USER1$=/usr/local/nagios/libexec).
hosts.cfg
TRI2 GB
NAGIOS
bogus-router
Bogus Router #1
192.168.1.254
server-backbone
check-host-alive
5
0
0
30
1
notification_period
notification_options
}
24x7
d,u,r
hostgroups.cfg
Il contient les groupes d'htes permettant ensuite d'agir sur un ensemble de machines.
define hostgroup{
hostgroup_name
alias
contact_groups
members
}
novell-servers
Novell Servers
novell-admins
netware1,netware2,netware3,netware4
services.cfg
Fichier de configuration des services superviss. La dfinition d'un service identifie un service
tournant sur un hte. Le terme "service" est trs gnrique. Il peut s'appliquer un service ( tel
que POP, SMTP, HTTP, etc.) ou bien tout autre type de mesure associe l'hte (temps de
rponse un ping, nombre d'utilisateurs connects, usage des disques).
Exemple de dfinition d'un service supervis
define service{
host_name
service_description
check_command
max_check_attempts
normal_check_interval
retry_check_interval
check_period
notification_interval
notification_period
notification_options
contact_groups
}
linux-server
check-disk-sda1
check-disk!/dev/sda1
5
5
3
24x7
30
24x7
w,c,r
linux-admins
servicegroups.cfg
Il contient les groupes de services permettant ensuite d'agir sur des ensembles de services.
checkcommands.cfg
check_pop
/usr/local/nagios/libexec/check_pop -H $HOSTADDRESS$
misccommands.cfg
timeperiods.cfg
TRI2 GB
NAGIOS
nonworkhours
Non-Work Hours
00:00-24:00
00:00-09:00,17:00-24:00
00:00-09:00,17:00-24:00
00:00-09:00,17:00-24:00
00:00-09:00,17:00-24:00
00:00-09:00,17:00-24:00
00:00-24:00
contacts.cfg
Fichier de dfinition des contacts notifier. Une dfinition de contact s'applique la personne
physique qui doit tre contacte en cas de problmes sur le rseau.
Exemple de dfinition d'un contact notifier
define contact{
contact_name
jdoe
alias
John Doe
service_notification_period
24x7
host_notification_period
24x7
service_notification_options
w,u,c,r
host_notification_options
d,u,r
service_notification_commands
notify-by-email
host_notification_commands
host-notify-by-email
email
jdoe@localhost.localdomain
pager
5555555@pagergateway.localhost.localdomain
}
contactgroups.cfg
Il contient les groupes de contacts permettant ainsi de regrouper les contacts notifier en cas
d'alerte.
define contactgroup{
contactgroup_name
alias
members
}
novell-admins
Novell Administrators
jdoe,rtobert,tzach
escalations.cfg
TRI2 GB
NAGIOS
nt-3
Processor Load
4
0
30
all-nt-admins,themanagers
define hostescalation{
host_name
first_notification
last_notification
notification_interval
contact_groups
}
router-34
5
8
60
all-router-admins
define hostgroupescalation{
hostgroup_name
first_notification
last_notification
notification_interval
contact_groups
}
netware-servers
5
0
30
netware-admins,themanagers
dependencies.cfg
Il dfinit les dpendances entre les diffrents services, qu'ils soient sur le mme serveur ou non.
On peut ainsi par exemple faire dpendre le serveur web virtuel de la prsence d'un processus
Apache.
define hostdependency{
host_name
WWW1
dependent_host_name
DBASE1
notification_failure_criteria d,u
}
cgi.cfg
Il dfinit la configuration des CGI de Nagios utiliss dans l'interface graphique web.
hosttextinfo.cfg
Il permet d'ajouter des proprits graphiques aux htes dfinis dans hosts.cfg comme par
exemple une icne ou des coordonnes utiliser dans la statusmap de l'interface web.
define hostextinfo{
host_name
netware1
notes_url
http://webserver.localhost.localdomain/hostinfo.pl?
host=netware1
icon_image
novell40.png
icon_image_alt IntranetWare 4.11
vrml_image
novell40.png
statusmap_image novell40.gd2
2d_coords
100,250
3d_coords
100.0,50.0,75.0
}
serviceextinfo.cfg
TRI2 GB
NAGIOS
linux2
Log Anomalies
notes_url
http://webserver.localhost.localdomain/serviceinfo.pl?
host=linux2&service=Log+Anomalies
icon_image
security.png
icon_image_alt
Security-Related Alerts
}
III.
L'interface de Nagios
Monitoring
Reporting
Il est galement possible d'accder la configuration du logiciel via
cette interface, mais uniquement en lecture :-(
TRI2 GB
NAGIOS
vue
gnrale
rsumant
l'ensemble
des
TRI2 GB
NAGIOS
TRI2 GB
NAGIOS
TRI2 GB
NAGIOS
TRI2 GB
NAGIOS
TRI2 GB
NAGIOS
TRI2 GB
NAGIOS
TRI2 GB
NAGIOS
C.
Conclusion
TRI2 GB
NAGIOS