supervision avec nagios
TRANSCRIPT
Installation et configuration de Nagios sous Dubian 2013
1
Installation et configuration de Nagios
Sous Dubian
Rapport préparé et réalisé par
Ali Amaniss
Stagiaire en administration de systèmes
DEC en Techniques de l’informatique
Option : Gestion de Réseaux Informatiques
Collège de Maisonneuve
Stage réalisé à NVI Solutions, Montréal
Janvier 2013
Installation et configuration de Nagios sous Dubian 2013
2
Table des matières
Introduction ....................................................................................................................... 4
Installation de Nagios ....................................................................................................... 5
Phase de préparation........................................................................................................ 5
Installation de Nagios ...................................................................................................... 5
Installation de Nagios-Plugins ......................................................................................... 7
Librairies complémentaires ............................................................................................. 7
Compilation ..................................................................................................................... 7
Configuration .................................................................................................................... 8
Le répertoire /etc/nagios3/ ............................................................................................... 8
Le répertoire /etc/nagios3/conf.d ..................................................................................... 8
Le répertoire /etc/nagios3/conf.d/hosts ......................................................................... 12
Supervision ...................................................................................................................... 14
Les serveurs supervisés et leurs sites ............................................................................ 14
Les sites supervisés ....................................................................................................... 15
Les imprimantes supervisées ......................................................................................... 15
Les passerelles supervisées ........................................................................................... 16
Les paramètres supervisés ............................................................................................. 16
Les serveurs ............................................................................................................... 16
Les imprimantes ........................................................................................................ 17
Les sites ..................................................................................................................... 17
Le client NRPE de Nagios .............................................................................................. 18
Introduction ................................................................................................................... 18
Installation et désinstallation ......................................................................................... 18
Configuration ................................................................................................................ 19
Configuration générale .............................................................................................. 19
Configuration des plugins .......................................................................................... 19
Annexes ............................................................................................................................ 21
Supervision : ce que valent les outils open source ........................................................ 21
Supervision : Nagios ouvre la voie à l'open source ....................................................... 23
Installation et configuration de Nagios sous Dubian 2013
3
Bibliographie ................................................................................................................... 28
Installation et configuration de Nagios sous Dubian 2013
4
Introduction
La supervision est un élément important dans la gestion réseau. Il permet de contrôler les
ressources en supervisant certains éléments tels que :
la mémoire;
le disque dur;
la mémoire swap;
la bande passante;
la connexion des serveurs au réseau;
le nombre de processus;
la continuité des services;
les ressources allouées aux services;
le chargement d’une page web, etc.
En surveillant ces éléments et en intervenant, le cas échéant, on peut assurer la continuité
des services.
Il existe une panoplie d’outils de surveillance de parcs informatiques dont certains sont
Open Source et gratuits. Parmi ces derniers, on trouve Nagios et Zabbix.
Nagios est un logiciel de surveillance de parcs informatiques qui fonctionne avec une
interface web. Il permet de surveiller, à intervalles réguliers, les valeurs et les états de
certains paramètres sur des machines ou des services installés en réseaux. Les alertes sont
données sur l’interface de surveillance ou envoyées à des adresses emails ou des
téléphones cellulaires pour se tenir au courant de l’état du réseau. Pour installer Nagios, il
faut installer Apache/PHP/MySQL auparavant.
Nagios est largement utilisé dans le monde de la surveillance de parcs informatiques.
Installation et configuration de Nagios sous Dubian 2013
5
Installation de Nagios
Nous supposons que Nagios va être installé sur un serveur sur lequel il existe déjà
Apache/PHP/MySQL.
Phase de préparation
Avant de commencer, il faut exécuter les commandes suivantes pour mettre à jour votre
système et ajouter le SSH qui est nécessaire au bon fonctionnement de Nagios.
apt-get update
apt-get upgrade
apt-get install openssh-server
Il faut modifier le fichier suivant :
vi /etc/apt/sources.list
Le contenu désiré est le suivant:
deb http://ftp.fr.debian.org/debian/ squeeze main
deb-src http://ftp.fr.debian.org/debian/ squeeze main
deb http://security.debian.org/ squeeze/updates main
deb-src http://security.debian.org/ squeeze/updates main
# squeeze-updates, previously known as 'volatile'
deb http://ftp.fr.debian.org/debian/ squeeze-updates main
deb-src http://ftp.fr.debian.org/debian/ squeeze-updates main
Nous installons quelques utilitaires de base pour notre serveur de supervision
apt-get install php5-gd postfix fping snmp ntp smbclient nmap
saidar traceroute php5-snmp curl gettext
Installation de l’environnement de compilation :
apt-get install build-essential
Installation de Nagios
Création de l’utilisateur Nagios.
groupadd -g 9000 nagios
groupadd -g 9001 nagcmd
Installation et configuration de Nagios sous Dubian 2013
6
useradd -u 9000 -g nagios -G nagcmd -d /usr/local/nagios -c
"Nagios Admin" nagios
Avant de pouvoir compiler Nagios le plus complètement possible, il faut installer
quelques librairies de développement. Les en-têtes du noyau sont facultatifs :
apt-get install libperl-dev libgd2-xpm-dev libltdl3-dev linux-
headers-`uname -r`
Pour la version 3 de Nagios, ajouter la librairie libglib2
apt-get install libglib2.0-dev
Ensuite compilation de Nagios, des plugins, de NRPE et NSCA.
wget
http://prdownloads.sourceforge.net/sourceforge/nagios/nagios-
3.3.1.tar.gz
tar -xzf nagios-3.3.1.tar.gz
cd nagios-3.3.1
./configure --prefix=/usr/local/nagios --with-nagios-user=nagios
--with-nagios-group=nagios --with-command-user=nagios --with-
command-group=nagcmd --enable-event-broker --enable-nanosleep --
enable-embedded-perl --with-perlcache
make all
make install
make install-init
make install-commandmode
make install-config
make install-webconf
Création du fichier d’utilisateur
htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadmin
chown nagios:nagcmd /usr/local/nagios/etc/htpasswd.users
Ajouter l’utilisateur apache au groupe nagcmd pour pouvoir exécuter les commandes
externes de Nagios depuis l’interface (ex : nagcmd:x:9001:www-data)
adduser www-data nagcmd
/etc/init.d/apache2 restart
Pour que Nagios démarre automatiquement au boot de la machine
Installation et configuration de Nagios sous Dubian 2013
7
chmod +x /etc/init.d/nagios
update-rc.d nagios defaults
Vous n’avez plus qu’à démarrer Nagios
/etc/init.d/nagios start
Installation de Nagios-Plugins
Librairies complémentaires
apt-get install libgnutls-dev libmysqlclient15-dev libssl-dev
libsnmp-perl libkrb5-dev libldap2-dev libsnmp-dev libnet-snmp-
perl gawk libwrap0-dev libmcrypt-dev fping snmp gettext smbclient
dnsutils
Compilation
get
http://prdownloads.sourceforge.net/sourceforge/nagiosplug/nagios-
plugins-1.4.15.tar.gz
tar -xzf nagios-plugins-1.4.15.tar.gz
cd nagios-plugins-1.4.15/
./configure --with-nagios-user=nagios --with-nagios-group=nagios
--enable-libtap --enable-extra-opts --enable-perl-modules
make
make install
Installation et configuration de Nagios sous Dubian 2013
8
Configuration
La configuration de Nagios se fait par l’intermédiaire de fichiers de configuration que
nous allons passer en revue. Il en existe plusieurs autres, mais les fichiers décrits ci-
dessous suffisent à faire fonctionner ce logiciel.
Le répertoire /etc/nagios3/
Les principaux fichiers de configuration de Nagios sont dans le répertoire :
/etc/nagios3/
On y trouve les fichiers et les répertoires suivants :
htpasswd.users : contient les noms des utilisateurs Nios avec leur mots de passe.
localhost_nagios2.cfg : contient la configuration et les services surveillés sur la machine
locale.
commands.cfg : contient les commandes.
microsoft.cfg : contient les commandes et quelques configurations pour les machines
Windows.
printer1.cfg : définit les imprimantes (ou du moins certaines).
wwwX.iscream.net.cfg : définit certains sites web avec les services correspondants et
surveillés.
nagios.cfg : définit certains paramètres de Nagios.
conf.d : un répertoire qui contient certains fichiers de configuration.
Le répertoire /etc/nagios3/conf.d
Dans le répertoire /etc/nagios3/ conf.d on trouve les fichiers de configuration suivants :
contacts.cfg : fichier qui contient les informations relatives aux personnes que Nagios
contacte en cas d’alerte. Un exemple de contact est le suivant :
define contact{
contact_name Surname
alias Michel Belanger
Installation et configuration de Nagios sous Dubian 2013
9
host_notifications_enabled 1
service_notifications_enabled 1
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-service-by-email
host_notification_commands notify-host-by-email
email [email protected]
can_submit_commands 1
}
generic-host_nagios2.cfg : contient les informations sur les appareils ou groupe
d’appareils ou de sites web surveillés (ordinateurs, serveurs, imprimantes, etc.) Un
exemple de configuration est le suivant :
define host{
name generic-host ;
notifications_enabled 1 ;
flap_detection_enabled 1 ;
failure_prediction_enabled 1 ;
process_perf_data 1 ;
retain_status_information 1 ;
retain_nonstatus_information 1 ; Retain non-status
information across program restarts
check_command check-host-alive
max_check_attempts 10
notification_interval 10
notification_period 24x7
notification_options d,u,r
contact_groups
admins,admins_primary
register 0 ;
Installation et configuration de Nagios sous Dubian 2013
10
}
timeperiods_nagios2.cfg : définit les périodes pendant lesquelles les alertes sont
déclenchées. Ce fichier est utilisé par d’autres fichiers de configuration
# The complement of workhours
define timeperiod{
timeperiod_name nonworkhours
alias Non-Work Hours
sunday 00:00-24:00
monday 00:00-07:00,17:00-24:00
tuesday 00:00-07:00,17:00-24:00
wednesday 00:00-07:00,17:00-24:00
thursday 00:00-07:00,17:00-24:00
friday 00:00-07:00,17:00-24:00
saturday 00:00-24:00
}
hostgroups_nagios2.cfg : contient les groupes d’appareils surveillés. Un exemple est le
suivant :
define hostgroup {
hostgroup_name ping-servers
alias Pingable servers
members web.superb.com,superb-gateway,
delta,eta,alpha,mu,sigma,iota,backup
}
generic-service_nagios2.cfg : contient les services surveillés et qui sont communs à
plusieurs machines, ainsi que l’information pour envoyer une alerte à la bonne personne
en cas de problème majeur.
define service{
use internal-service ;
Installation et configuration de Nagios sous Dubian 2013
11
hostgroup_name nrpe_base,linux_servers
service_description Total Processes
check_command
check_nrpe_1arg!check_total_procs
}
define serviceescalation{
hostgroup_name nrpe_base,linux_servers
service_description Total Processes
first_notification 2
last_notification 10
notification_interval 10
contact_groups admins,admins_secondary
}
services_nagios2.cfg : contient les informations sur les services à surveiller.
define service{
use internal-service
; Name of service template to use
hostgroup_name nrpe_base
service_description Cron Job
check_command
check_nrpe_1arg!check_procs_cron
}
define serviceescalation{
hostgroup_name nrpe_base
service_description Cron Job
first_notification 2
last_notification 10
notification_interval 10
Installation et configuration de Nagios sous Dubian 2013
12
contact_groups admins,admins_secondary
}
Le répertoire /etc/nagios3/conf.d/hosts
Le répertoire /etc/nagios3/conf.d/hosts contient des fichiers de configuration pour la
surveillance de certains paramètres spécifiques à chaque machine. Un exemple de fichier
de configuration de la machine alpha et qui est dans le fichier alpha.cfg est le suivant :
define host{
use generic-host ;
host_name alpha
alias alpha.nvisolutions.com
address 158.173.114.156
notes_url
http://192.168.50.208/munin/nvi.local/delta.nvisolutions.com.html
parents iweb-gateway
}
define hostescalation{
host_name alpha
first_notification 2
last_notification 10
notification_interval 10
contact_groups admins,admins_secondary
}
Parmi les services surveillés sur cette machine, nous trouvons :
define service {
host_name alpha
service_description HTTP
check_command check_http
Installation et configuration de Nagios sous Dubian 2013
13
use generic-service
notification_interval 0 ; set > 0 if you want
to be renotified
notes_url http://dev.entreprise.com/server-status
}
define service{
use generic-service ;
host_name alpha
service_description Disk Space MD0
check_command check_nrpe_1arg!check_md0
}
Pour surveiller un site web, la configuration du fichier www.iscreamtat.net.cfg
commence par :
define host {
host_name www1.iscreamtat.net
alias www17 Hosting
address 124.124.254.161
use generic-host
parents entreprise-gateway
}
define hostescalation{
host_name www17.iscreamtat.net
first_notification 2
last_notification 10
notification_interval 10
contact_groups admins,admins_secondary
}
Installation et configuration de Nagios sous Dubian 2013
14
Supervision
Après l’installation et configuration du logiciel Nagios, vient le moment de la
surveillance. Dans ce qui suit, nous donnons les principaux serveurs et sites supervisés.
Les serveurs supervisés et leurs sites
Les principaux serveurs supervisés sont les suivants:
1. Les serveurs externes
alpha
Sur ce serveur il y a les sites suivants
www.ashanging.com
delta
Sur ce serveur il y a les sites suivants
demo.cloudcms.ca
shop.imagimage.com
www.dentomaxillofacial.com
www.dljtelecom.com
ww.domodimonti.com
www.eacom.ca
www.ernest.ca
www.fontainesante.com
www.lochmarch.com
www.nvisolutions.com
www.outrankers.com
www.paradisegardenlighting.com
eta
Sur ce serveur il y a les sites suivants
www.can-marc.ca
iota
Sur ce serveur il y a les sites suivants
www.silanis.com
mu
Installation et configuration de Nagios sous Dubian 2013
15
sigma
2. Les serveurs internes
bakcup
dev
dev_new
exchange
lynx
nvi-transfert
Les sites supervisés
En plus des sites surveillés sur les serveurs pr.cités, il existe un certains nombre de sites
qui se trouve sur d’autres serveurs et qui doivent être surveillés. Ces sites sont les
suivants.
ppc_besthealthmag.ca
ppc_divertissement.trouvetout.ca
ppc_elle.trouvetout.ca
ppc_famille.trouvetout.ca
ppc_famille.trouvetout.ca
ppc_maison.trouvetout.ca
ppc_ourcanada.ca
ppc_rd.ca
ppc_readersdigest.ca
ppc_selection.ca
web.superb.com
web.superb.com
www17.iscream.net
www24.iscream.net
Les imprimantes supervisées
printer2
printer3
seoscan1
seoscan2
sherweb
Installation et configuration de Nagios sous Dubian 2013
16
Les passerelles supervisées
iweb-gateway
nvi-gateway
superb-gateway
Les paramètres supervisés
Les paramètres surveillés sur chaque matériel ou logiciel, dépendent de celui-ci. La
vérification de tous ces paramètres se fait par intervalle de temps de 5 minutes.
Les serveurs
Sur les serveurs, nous surveillons les paramètres suivants :
Cron Job : vérifie les tâches Cron sur le serveur;
Current Load : vérifie la charge sur le processeur;
Current Users : vérifie le nombre total d’utilisateurs simultanés;
Date and Time : vérifie la synchronisation avec un serveur de temps;
Disque Space MDX : indique l’espace occupé sur le disque MDX;
FTP : indique les paramètres du serveur ftp;
HTTP : indique les paramètres du serveur http;
Mail Queue : indique la queue du service de messagerie;
MySQL : surveille le taux des requêtes sur le serveur MySQL;
Ping : surveille la connexion avec le serveur;
RAID : vérifie le bon fonctionnement des disques RAID;
SMTP : vérifie le temps de réponse du serveur NMTP;
SSH : vérifie le bon fonctionnement du serveur SSH;
Swap_Memory : vérifie le taux d’utilisation de la mémoire SWAP;
Total_Processes : vérifie le nombre total de processus sur le serveur;
Zombie_Processes : vérifie la présence de processus fantôme;
certificate www.ashanging.com: vérifie la validité du certificat;
www.ashanging.com: vérifie ???;
Memory_Linux : surveille la RAM sur les serveurs Linux;
Memory : surveille la RAM sur les serveurs Windows;
IMAP : vérifie le bon fonctionnement d’IMAP sur Windows 2000;
IMAPS : vérifie le bon fonctionnement d’IMAPS sur Windows 2000;
POP : vérifie le bon fonctionnement POP sur Windows 2000;
POPS : vérifie le bon fonctionnement POPS sur Windows 2000;
Installation et configuration de Nagios sous Dubian 2013
17
Share Transfert : vérifie la taille du disque de transfert sur nvi-Transfert;
Jabber : vérifie le bon fonctionnement du serveur Jabber;
Uptime : vérifie ???;
Les imprimantes
Sur les imprimantes, nous surveillons les paramètres suivants :
ping printer : indique que l’imprimante est toujours en ligne;
printer model : prouve que l’imprimante est toujours en ligne;
printer page count : indique le nombre de pages imprimée;
printer toner : indique le pourcentage d’ancre dans l’imprimante.
Les sites
Pour ce qui est sites supervisés, le chargement correct et complet de la page est vérifié
par Nagios pour s’assurer que la page est correctement et complètement chargée par les
clients potentiels. Nagios vérifie à la même occasion, le temps de réponse des sites.
Installation et configuration de Nagios sous Dubian 2013
18
Le client NRPE de Nagios
Introduction
L’agent NRPE (Nagios Remote Process Executor : exécuteur distant de processus
Nagios) est un petit programme qui lance des plugins à distance. Ce sont des binaires ou
des scripts qui permettent de faire des sondes sur la machine surveillée et d’envoyer les
résultats de la songe à Nagios. NRPE est un agent déployé sur des machines de type
UNIX/Linux. Il permet donc à Nagios d’exécuter des processus sur la machine distante et
de récolter le résultat.
« Nagios lance comme plug-in, sur son serveur, l’exécutable check_nrpe. Celui-ci
envoie une requête de supervision à l’agent NRPE. Elle correspond à une entrée dans la
configuration de l’agent. Cette entrée contient un script à lancer, avec ses arguments. Le
démon lance le plug-in et retourne le résultat à check_nrpe. Ce résultat est composé du
code retour du plug-in et des lignes de sortie, comme n’importe quelle sonde Nagios.
L’exécutable check_nrpe transmet tout simplement ces informations à Nagios.
Nous pouvons également noter que la communication entre check_nrpe et le démon
NRPE se fait à travers un flux SSL. Il n’y a donc pas de risque qu’un pirate récupère des
données sensibles. Le diagramme suivant résume ce fonctionnement.» (Source)
Installation et désinstallation
NRPE s’installe avec la commande suivante sous Debian :
sudo apt-get install nagios-nrpe-plugin
Le service se lance comme suit :
service nagios-nrpe-server stop | start | restart | reload
Installation et configuration de Nagios sous Dubian 2013
19
On peut désinstaller le pacquage NRPE avec la commande suivante :
sudo apt-get --purge remove nagios-nrpe-plugin
Configuration
On commence par configurer et lancer le processus NRPE » Ensuite on donne la
configuration des plugins.
Configuration générale
NRPE se configure facilement. Pour cela il faut configurer les paramètres suivants.
Éditer le fichier /etc/nagios/nrpe.cfg pour modifier la ligne suivante:
allowed_hosts = adresse IP de votre serveur Nagios
A partir de là, Nagios devrait communiquer avec NRPE. Pour le vérifier, utilisez la
commande suivante sur le serveur Nagios.
./usr/lib/nagios/plugins/check_nrpe -H Adresse_IP_du_serveur_NRPE
NRPE v2.7
Si la version de NRPE s’affiche, c’est qu’il y a communication. Il ne reste plus qu’à
configurer les paramètres et les services à surveiller.
Pour vérifier si un plugin répond, disons check_load, on utilise la commande suivante le
serveur NRPE
./usr/lib/nagios/plugins/check_nrpe –c ’check_load’
Et pour vérifier le même plugin sur le serveur Nagios, il faut ajouter l’adresse IP du
serveur NRPE.
./usr/lib/nagios/plugins/check_nrpe -H Adresse_IP_du_serveur_NRPE –c ’check_load’
Configuration des plugins
Maintenant vient le tour de la configuration des plugins. Choisissons un plugin, disons
check_load. check_load se trouve dans le répertoire : /usr/lib/nagios/plugins. Afin que
NRPE lance ce plugin, il faut ajouter la ligne suivante au fichier /etc/nagios/nrpe.cfg sur
le serveur NRPE:
command[check_load]=/usr/lib/nagios/plugins/check_load -w 15,10,5 -c 30,25,20
Installation et configuration de Nagios sous Dubian 2013
20
Les valeurs numériques dépendent du niveau de la surveillance désirée.
Ensuite, il faut ajouter la ligne suivante au fichier de configuration
/etc/nagios3/conf.d/services_nagios2.cfg du serveur Nagios :
define service {
hostgroup_name linux_servers
service_description Load
check_command check_nrpe!check_load
use internal-service
}
Pour les alertes, il faut ajouter les lignes suivantes dans le même fichier.
define serviceescalation {
hostgroup_name linux_servers
service_description Load
first_notification 2
last_notification 10
notification_interval 10
contact_groups admins
}
Installation et configuration de Nagios sous Dubian 2013
21
Annexes
Supervision : ce que valent les outils open source
Par : Renaud Édouard-Baraud.
Outils personnalisables, couverture fonctionnelle étendue... Les logiciels de supervision
'open source' partent à l'assaut des grands comptes.
Sur le plan fonctionnel, les grands outils de supervision de BMC, CA, HP, ou encore
IBM conservent une légère avance sur les solutions open source les plus performantes.
Ce n'est plus le cas pour les versions bridées, que ces mêmes éditeurs destinent aux PME.
C'est ce qui ressort de l'étude comparative menée en fin d'année dernière par Uperto, une
entité de la SSII Devoteam.
Pas étonnant que, depuis un an, les sociétés de services en logiciels libres (SSLL) soient
de plus en plus sollicitées. Elles interviennent principalement dans deux cas de figure.
Dans le premier, l'entreprise n'a pas encore d'outil de supervision, et elle se sert de l'open
source pour s'habituer à cette discipline et déterminer les indicateurs à surveiller. Dans
l'autre, elle remplace une suite propriétaire qui n'était utilisée que pour des besoins
simples : ping, gestion des alertes SNMP (Simple Network Management Protocol)...
L'open source est alors idéal pour trois fois moins cher, à en croire la SSLL Linagora.
Les motivations des entreprises sont toutefois multiples. Ainsi, les sociétés du secteur
privé, qui externalisent des pans entiers de leur informatique, essaient de garder un ?"il
sur la qualité de leurs services. Selon Linagora, le spécialiste du mobilier urbain JC
Decaux a franchi le pas pour cette raison. En outre, les sociétés de services notent que les
utilisateurs de Tivoli, d'IBM, ou Patrol, de BMC, se plaignent de n'exploiter qu'une très
faible partie des capacités de ces outils propriétaires. Ils disposent d'une palanquée
d'indicateurs, mais ceux-ci seraient inutilisables.
' Ces produits sont relativement complexes à paramétrer, affirme Patrick Benichou,
directeur général de la SSLL Open Wide. Ne serait-ce que pour désactiver les fonctions
inutiles. ' Les entreprises vont donc s'orienter vers les logiciels libres, qui exigent de
mettre la main à la pâte, mais correspondent exactement à leurs besoins. Selon Linagora,
la multinationale Lafarge s'est retrouvée dans cette configuration avant d'installer Nagios.
Une communauté Nagios dynamique
Cette solution est au catalogue de la plupart des sociétés de services. Pourtant, elle affiche
de nombreuses limites : incompatibilité avec l'administration de l'environnement
Windows, architecture bâtie sur des technologies Web vieillissantes... Mais c'est la plus
installée et la plus stable. Elle a d'emblée été conçue pour être complétée par des
programmes additionnels (plug in). Et comme la communauté est importante, ceux-ci
Installation et configuration de Nagios sous Dubian 2013
22
abondent. Ainsi, pour pallier ses faiblesses natives, certains développeurs parisiens ont
mis en place Oreon.
' Au départ, elle ne constituait qu'une interface de configuration puissante, explique
Romain Le Merlus, directeur des projets chez Merethis. Nous l'avons assortie, par la
suite, de la gestion automatique des graphes, de mécanismes de contrôle d'accès, de
snapshots SNMP des équipements, d'une cartographie poussée, et du reporting avec
mesure de niveau de service. ' Les entreprises peu sensibilisées à la philosophie Lego
peuvent se tourner vers son successeur potentiel, Zabbix. Une solution qu'Uperto classe,
sur le plan fonctionnel, entre les grands frameworks et leurs versions bridées.
Elle n'est cependant pas exempte de défauts : elle s'avère complexe à configurer, et doit
encore prouver ses capacités à monter en puissance. Parmi les autres concurrents, figurent
Zenoss, défavorisé toutefois par son moteur Zope, dont les performances laisseraient à
désirer, Groundwork Open Source, bâti sur le moteur de Nagios, auquel on aurait ajouté
des connecteurs XML, ou encore Hyperic.
Ces trois derniers produits, ainsi que Zabbix ont l'avantage d'être distribués par des
structures commerciales. Un atout de taille pour les entreprises, qui, dans un premier
temps, préfèrent s'adresser à une société identifiée plutôt qu'à une communauté sans
porte-parole. Groundwork offre ainsi support par téléphone, messagerie électronique, et
portail, avec un temps de réponse garanti en fonction de la sévérité du problème.
Idem chez Zabbix, qui propose même à ses clients ayant choisi l'option Platinum de
revoir à date fixe l'intégralité de leur environnement. Avantage de cette formule : les
solutions vendues sont généralement packagées pour répondre à tous les besoins, évitant
de cette manière à l'utilisateur d'aller rechercher des additifs sur Sourceforge.
Néanmoins, comme très peu d'éditeurs sont directement présents en France, il faudra s'en
remettre aux sociétés de services. Lesquelles peuvent assurer le support avec des niveaux
de service précis, mais pour deux ou trois solutions au plus. Cela en attendant que les
grands de l'administration de systèmes se jettent aussi dans le bain. IBM prépare son
offensive avec Cosmos. CA propose la base de données libre Ingres pour stocker les
informations de configuration des éléments d'un système d'information. BMC et HP,
quant à eux, sont absents du marché.
Le panorama ne serait pas complet si l'on ne parlait pas du prix. En comprenant
recensement des appareils à superviser, définition des indicateurs, installation de la
console, des greffons, mise en place des scénarios, formation, support et maintenance, ' il
faut compter entre 75 000 et 100 000 euros pour un projet de supervision, sur un panel
de 200 serveurs ', dit Michel Maudet, directeur général adjoint de Linagora.
(Source)
Installation et configuration de Nagios sous Dubian 2013
23
Supervision : Nagios ouvre la voie à l'open source
Par : Annabelle Bouard
Grâce à sa souplesse et à son faible coût, le logiciel Nagios s'impose de plus en plus face
aux plates-formes d'administration propriétaires.
À côté des grandes plates-formes d'administration telles que HP OpenView ou Tivoli
d'IBM, que de nombreuses entreprises n'ont pas les moyens de se payer, le monde du
logiciel libre offre quantité d'outils de supervision. Leur couverture fonctionnelle est
certes moins étendue, mais ils répondent aux besoins de la plupart des petites et
moyennes structures. Nagios, logiciel libre de supervision, est très apprécié par les
entreprises. Pérenne ?" il a été développé en 1999 ?", il est soutenu par une communauté
très active.
Le besoin : surveiller son réseau sans trop dépenser
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
fonctionnement, d'autres veulent également des alarmes en cas de problème, des mesures
de performances ou un historique pour l'aide à la décision, voire l'ensemble.
Ces fonctions visent la plupart du temps le suivi de l'infrastructure propre à l'entreprise,
mais peuvent aussi avoir pour but de vérifier la qualité du service fourni par un
prestataire de connectivité ou d'infogérance. C'était le cas de la compagnie aérienne
Régional, qui utilise Nagios depuis deux ans. ' Auparavant, un tel outil n'était pas
indispensable. Puis, avec la multiplication des équipements informatiques, des fonctions
de remontée d'alertes s'imposaient ', explique Olivier Thebaud, responsable systèmes et
réseaux de Régional.
La société souhaitait superviser les matériels d'interconnexion et la disponibilité des
serveurs de ses sites centraux, ainsi que les routeurs de sa trentaine de sites distants. ' Les
routeurs d'accès appartiennent à nos opérateurs, France Télécom ou la Sita, qui en
assurent la supervision et la maintenance. Nous souhaitons avoir une visibilité sur leur
fonctionnement et recevoir des alertes, même si nous n'intervenons pas ', explique Olivier
Thebaud.
Les prestataires de services proposent généralement leurs propres outils de suivi.
L'hébergeur Claranet utilise Nagios, MRTG (Multi Router Traffic Grapher), Net-SNMP
ainsi que de nombreux scripts créés en interne pour aller plus loin dans la supervision. En
complément, la société a développé il y a trois ans Clarawatch, une interface qui visait
d'abord la supervision de ses propres systèmes et réseaux. Elle l'a ensuite également
exploitée pour le suivi des systèmes des clients.
Installation et configuration de Nagios sous Dubian 2013
24
Ces derniers consultent via une interface web des graphiques d'historiques de
disponibilité, d'usage, etc. Le spécialiste de l'infogérance et de l'hébergement Aliadis, de
son côté, a d'abord utilisé Nagios, avant de déployer il y a environ un an son propre
logiciel, Alinoé. Ce dernier fournit à ses clients une visibilité sur ses plates-formes, en
exploitant les fonctions d'ordonnancement de Nagios (lire encadré). Intrinsec, société du
Groupe Neurones spécialisée dans la sécurité, a suivi une démarche similaire, mais a fini
par éliminer le c?"ur Nagios de son outil de supervision RTMS (Real Time Monitoring
System), proposé aux clients sous forme de service.
' RTMS enrichissait Nagios d'une nouvelle interface graphique pour aller plus loin dans
la visualisation des états et le paramétrage de la supervision. Puis nous avons ajouté la
gestion de tickets d'incidents pour notre centre d'assistance. Ensuite, nous avons
redéveloppé la plupart des plug-in pour intégrer des outils de représentation graphique.
Nagios n'étant plus réduit qu'à ses fonctions d'ordonnancement, nous avons fini aussi par
les redévelopper ', explique Thomas Soupault, chef de projet chez Intrinsec. La société
supervise les équipements de plus de 200 clients, et doit gérer de fréquentes évolutions du
parc et du paramétrage de la supevision. ' Nagios était trop limité par rapport à l'ampleur
de nos besoins. Ceci étant, la plupart des entreprises qui l'utilisent administrent 50 à 1
000 machines sans difficulté majeure ', remarque Thomas Soupault.
Le choix : l'évolutivité est un critère clé
Pleinement satisfaites des outils de supervision libres, certaines sociétés n'ont pas jugé
utile d'envisager d'autres solutions alternatives. Claranet en utilise depuis 1998. ' Le
logiciel libre est stable, robuste et dépourvu de problèmes d'interopérabilité. Le code
source est disponible, nous le consultons fréquemment, et il nous arrive de remonter des
bugs aux développeurs ', souligne Erwan Lerasle, responsable de l'exploitation clients
chez Claranet.
Jusqu'à il y a environ trois ans, le Parc d'expositions de Paris-Nord-Villepinte utilisait HP
Top Tools ?" un outil de supervision fonctionnant avec Windows que HP a arrêté de faire
évoluer fin 2002, et dont l'assistance sera interrompue fin 2007. ' Cet outil fourni avec les
commutateurs HP n'était pas du tout évolutif. Il ne permettait pas de redéfinir des
fonctions, et était très gourmand en ressources réseau ', souligne Jacques Guigui,
directeur technique délégué. Pour le choix du nouvel outil, la société a fait confiance à
son intégrateur Adelux, qui a proposé Nagios.
De son côté, l'hébergeur Aliadis avait examiné OpenNMS et Sentinix du côté des
logiciels libres, ainsi que Big Brother, qui existe aussi en version ' commerciale ', et,
parmi les solutions des éditeurs, Tivoli (IBM) et HP OpenView. Ces dernières ont été
écartées en raison de leur coût, de la dépendance vis-à-vis de l'éditeur pour toute
évolution et de l'important chantier que représente leur déploiement.
Installation et configuration de Nagios sous Dubian 2013
25
L'utilisation du logiciel Big Brother a été jugée trop lourde. Celui-ci était également trop
gourmand en ressources, tout comme OpenNMS, un logiciel écrit en Java. Quant à
Sentinix, il ne semblait pas pérenne à juste titre puisque son assistance technique est
aujourd'hui arrêtée ?" et, étant donné qu'il était basé sur Nagios, Aliadis préférait utiliser
directement ce dernier. La société Régional, pour sa part, a choisi Nagios après avoir été
convaincue par la démonstration d'une entreprise utilisatrice présentée sur le site officiel
du projet, www.nagios.org.
De l'avis général, les solutions propriétaires sont trop coûteuses, d'autant que tout ajout
fonctionnel se paye. ' Nagios est le couteau suisse de la supervision réseau. Il ne fait pas
tout en standard, mais est capable de tout faire. C'est avant tout un ordonnanceur de
scripts de supervision ', explique Thomas Soupault.
Une cinquantaine de plug-in sont livrés en standard et on peut facilement en créer de
nouveaux, par exemple de nouvelles alarmes par le biais de scripts Shell ou Perl. Et si la
société qui en crée un le met à disposition de la communauté, tout le monde peut en
profiter. ' J'ai, par exemple, écrit un script en Perl qui effectue une requête sur un point
d'échanges, et génère un graphique en fonction de la configuration du routeur. L'un de
mes scripts a été téléchargé 200 fois par mois ', affirme Erwan Lerasle.
La mise en œuvre : un travail en amont indispensable
Le déploiement de Nagios est très rapide, y compris en l'absence d'expérience dans le
domaine du logiciel libre. ' Tout est bien documenté, même pour quelqu'un qui débute sur
Unix. Pas besoin de certifications, il faut simplement s'armer de courage pour lire les
informations. Nous avons vu quelqu'un sans expérience l'utiliser en trois jours ', indique
Erwan Lerasle.
Comme avec tout logiciel de supervision, il ne faut pas négliger le travail préparatoire. '
Ce n'est pas la mise en place du logiciel en lui-même qui prend le plus de temps, mais la
compréhension des besoins ', note Thomas Soupault. Il faut établir la liste des machines
et tous les paramètres de supervision, comme les services à surveiller (HTTP, SMTP,
etc.) et les paramètres des alertes associées, avec une éventuelle variabilité des
traitements selon, entre autres critères, l'heure et le jour de la semaine.
' Cela permet, par exemple, de suspendre les contrôles sur une machine donnée lorsqu'on
l'arrête pour effectuer des sauvegardes, afin d'éviter les alarmes intempestives ', indique
Jacques Guigui. Selon le système d'exploitation de la machine à surveiller, un logiciel
client sera éventuellement nécessaire. ' Nous avons dû en installer un avec Windows pour
suivre l'utilisation de l'espace disque ', affirme Olivier Thebaud. Des scripts d'installation
posent des questions simples ?" du type ' Souhaitez-vous surveiller les ports Web ?
Oui/non '?" pour générer un fichier de configuration.
Installation et configuration de Nagios sous Dubian 2013
26
Cependant, Nagios ne comporte pas de fonctions de découverte évoluée. Pour combler
cette lacune, Paris-Nord-Villepinte utilise des petits logiciels libres comme NetWhistler,
qui construit une carte réseau, avec une vérification permanente du plan d'adressage IP.
L'utilisation : un même outil surveille le PABX et les données
Après réalisation d'une maquette, Régional a déployé Nagios pour superviser aussi bien
les plates-formes matérielles (espace disque, mémoire, taux d'occupation du processeur,
etc.) que certaines applications telles que les bases de données et les matériels réseau. La
compagnie aérienne a dû faire face à une petite difficulté liée au serveur Web Apache sur
lequel s'appuie Nagios.
Certaines autorisations d'accès par défaut bloquaient l'exécution de certains scripts liés
aux alertes. La société Régional a trouvé la solution dans un forum de discussion. ' Mais
il s'agissait d'un problème vraiment mineur comparé à la facilité globale d'installation du
logiciel ', relativise Olivier Thebaud.
À Paris-Nord-Villepinte, Nagios supervise 310 équipements, ' une centaine de
commutateurs, une vingtaine de PABX IP, une trentaine de serveurs et environ 150
équipements techniques tels que des barrières de parking ou des automates
programmables. L'ensemble représente environ 600 services surveillés, de la simple
vérification de la connexion par un ping au suivi de l'espace disque et de la charge CPU,
en passant par les services SMTP, DNS, SSH, NetBIOS, Java ou d'autres services utilisés
par des applications vitales. Nous en rajoutons en permanence ', précise Jacques Guigui.
Les limites : savoir intégrer des outils complémentaires
Nagios ne sait gérer que trois états, lesquels couvrent un fonctionnement normal, un
avertissement et un état critique. ' On ne peut rajouter d'état car c'est un élément trop
profondément ancré dans le système ', regrette Thomas Soupault. Il ne fournit pas de
suivi de la charge réseau. ' Nous allons donc chercher les informations SNMP sur nos
commutateurs HP, et les exploitons par des graphiques RRDtool, que nous visualisons
dans l'interface Nagios ', explique Jacques Guigui.
D'autres outils libres sont susceptibles de compléter Nagios. Cacti, par exemple,
automatise les requêtes et stocke les informations dans une base de données pour les
exploiter plus finement. Régional l'utilise. ' Alors que Nagios sert à l'exploitation
journalière, Cacti nous fournit une vision à long terme, indique Olivier Thebaud, par
exemple, l'évolution de la bande passante utilisée par les équipements réseau pour
constater des problèmes éventuels de saturation et anticiper les besoins d'augmentation
de débit sur les lignes. ' Régional complète aussi son infrastructure de supervision par le
biais de Ntop, un outil transformant un simple PC en sonde réseau.
Installation et configuration de Nagios sous Dubian 2013
27
' Nous analysons ainsi les problèmes du réseau, pour un investissement très faible ',
explique Olivier Thebaud. La société surveille ainsi les liens de son réseau étendu. Cela
lui a permis à plusieurs occasions de trouver la source à l'origine d'une infection virale.
(Source)
Installation et configuration de Nagios sous Dubian 2013
28
Bibliographie
1. Nagios (Site official)
2. Nagios (document)
3. Les outils de supervision libres
4. Alixen déploie le logiciel open source de supervision Zabbix
5. Mise en place d’un système de supervision Open source
6. Mise en œuvre d’une solution de supervision
7. Le futur des logiciels de supervision
8. Solutions de supervision système et réseau
9. Les outils d’administration et de supervision réseau (document)