Vous êtes sur la page 1sur 39

DOCUMENTATION D’EXPLOITATION

Installer / Configurer NAGIOS &


CENTREON
Installation -
DEBIAN
p. 1

INFORMATIONS / REVISIONS

Date Auteur Version Changements


07/02/2014 Francis Viallet 1.0 Version initiale

DIFFUSION – AUDIENCE

Ce document s’adresse au Directeur informatique ainsi qu’aux équipes d’administration du réseau.

FVT
p. 2

SOMMAIRE

SOMMAIRE 2

I) PREREQUIS 3

1.1 CONFIGURATION 3

II) INSTALLATION DES DEPENDANCES : 4

III) NAGIOS 7

3.1 PREREQUIS 7
3.2 TELECHARGEMENT ET EXTRACTION DES SOURCES DE NAGIOS : 8
3.3 COMPILATION DES SOURCES ET INSTALLATION DE NAGIOS 10
3.4 DEMARRAGE NAGIOS 12
3.5 TEST CONNEXION NAGIOS 14
3.6 INSTALLATION PLUGINS NAGIOS 16

IV) NDOUTILS 18

4.1 TELECHARGEMENT ET EXTRACTION NDOUTILS 18


4.2 COMPILATION, INSTALLATION ET DEMARRAGE DE NDOUTILS 20

V) INSTALLATION DE CENTREON 22

5.1 TELECHARGEMENT DE CENTREON 22


5.2 INSTALLATION DE CENTREON 23
5.3 FINALISATION DE L’INSTALLATION CENTREON 32
5.4PREMIERE UTILISATION, MANIPULATION 37

FVT
p. 3

I) Prérequis

1.1 Configuration

Vous devez avoir configuré votre adressage IP en statique, et si souhaité avoir ajouté votre machine
Linux au domaine.

FVT
p. 4

II) Installation des dépendances :


Afin de permettre une exécution correcte de nagios et centreon, nous devons installer tous les
logiciels, qui sont nécessaires aux scripts d’installation ou aux programmes Nagios et Centreon ainsi
que leurs sous programmes (par exemple on installe MySQL pour stocker les bases et réglages de
Centreon, PHP et apache pour l’interface web, les noyaux linux et les compilateurs nécessaires pour
l’installation, etc.)

Malheureusement, Centreon n’est pas compatible avec la dernière version de PHP, installée par
défaut.

Nous allons donc utiliser celle de la version de debian précédente, en ajoutant les sources de cette
version (squeeze) dans notre liste de sources puis en créant un fichier de préférences indiquant d’aller
piocher dans ces dépôts pour les paquet PHP.

 On va donc ajouter notre source dans /etc/apt/sources.list :

vi /etc/apt/source.list

-On ajoute le dernier paragraphe (on commente pour indiquer ce que l’on a fait puis on
rajoute les sources de squeeze.)

#Squeeze source, for PHP oldstable packages to make Centron compatible


#Configuration pour indiquer d'aller chercher PHP uniquement dans cette source faite ici :
#/etc/apt/preferences.d/preferences
deb http://ftp.fr.debian.org/debian/ squeeze main non-free
deb-src http://ftp.fr.debian.org/debian/ squeeze main non-free

FVT
p. 5

 On va alors maintenant éditer ou ajouter le fichier de préférences


/etc/apt/preferences.d/preferences :

vi /etc/apt/preferences.d/preferences

-On rajoute notre configuration pour aller chercher PHP prioritairement dans les sources de
squeeze (on n’oublie pas les commentaires pour ceux qui regardent après)

#Configuration pour aller chercher les paquets PHP dans le dépots squeeze et les autres dans
#les dépots de la version utilisée (wheezy)

Package: php5*
Pin: release a=oldstable
Pin-Priority: 700

Package: libapache2-mod-php5
Pin: release a=oldstable
Pin-Priority: 700

Package: php-pear
Pin: release a=oldstable
Pin-Priority: 700

Package: *
Pin: release a=stable
Pin-Priority: 600

FVT
p. 6

 On met à jour notre liste de sources et paquets ainsi que la prise en compte de la
configuration du gestionnaire de paquet apt :

apt-get update

 On peut maintenant lancer le téléchargement et l’installation des paquets :

apt-get install apache2 php5 php5-mysql php-pear php5-ldap php5-snmp php5-gd mysql-
server-5.5 libmysqlclient-dev rrdtool librrds-perl libconfig-inifiles-perl snmpd libnet-snmp-
perl libgd2-xpm libgd2-xpm-dev libpng12-dev debconf-utils libglib2.0-dev make build-
essential libgnutls-dev libssl-dev libsnmp-perl libkrb5-dev libldap2-dev libsnmp-dev gawk
libmcrypt-dev fping gettext libwrap0-dev snmp smbclient dnsutils daemon sudo ntp nmap
saidar traceroute curl libltdl3-dev wget libgetargs-long-perl libgd-tools libapache2-mod-
gnutls

 On choisit un mot de passe super-utilisateur MySQL (System2008) lorsque demandé :

 On vérifie la version de PHP avec dpkg :

dpkg -l | grep php

On voit bien que les paquets ont été pris dans Squeeze et non Wheezy et qu’ils sont bien en
5.3 et non 5.4

dpkg : outil de gestion des paquets et dépackageur

apt : outil de gestion des sources et installateur de paquets

| dpkg : | permet de rediriger la sortie vers la commande suivante, grep va retourner les lignes
contenant la chaine de caractères précisée ensuite.

FVT
p. 7

III) NAGIOS

3.1 Prérequis

 On va préalablement créer un utilisateur nagios puis lui affecter un mot de passe


(System2008) (cet utilisateur sera celui qui lancera les processus nagios, il aura tous les droits
sur les fichiers de nagios mais pas sur le système) :

/usr/sbin/useradd -m -s /bin/bash nagios

passwd nagios

 On créé les groupes nagios et nagcmd puis on leur attribue des utilisateurs

(nagios aux deux et www-data qui est l'utilisateur apache uniquement à nagcmd)

(nagios sera le groupe utilisant les fichiers nagios et dont les utilisateurs auront les droits sur
les fichiers nagios, nagcmd servira pour les commandes d’installation de nagios) :

/usr/sbin/groupadd nagios # (il existe déjà, créé avec l’user nagios)

/usr/sbin/groupadd nagcmd

/usr/sbin/usermod -G nagios nagios

/usr/sbin/usermod -a -G nagcmd nagios

/usr/sbin/usermod -a -G nagcmd www-data

(L’option –a permet de rajouter l'utilisateur au groupe sans l'enlever des groupes auxquels il
est déjà affecté (ce que fait -G sans -a))

 on vérifie avec cat /etc/group | grep nagios (à droite les utilisateurs à gauche les groupes)

FVT
p. 8

3.2 TELECHARGEMENT et EXTRACTION des SOURCES de NAGIOS :

 On se rend (à l’aide d’un navigateur web), pour récupérer le lien de l’installateur, à l’adresse :

http://www.nagios.org/download

 On prend nagios core ; on clique sur download sous la version DIY ; puis « skip to download »

 On prend ensuite la « latest stable release » de nagios 3,

En effet celui-ci est entièrement supporté par centreon et Debian et est bien plus stable que la
version 4, encore trop jeune (<12mois) (et quelques bugs un peu gênants sur debian):

Pour cela on clique droit sur le lien puis « copier l’adresse du lien »

 On a alors dans le presse-papiers :

http://prdownloads.sourceforge.net/sourceforge/nagios/nagios-3.5.1.tar.gz

FVT
p. 9

 On retourne ensuite dans notre terminal sur notre Debian puis on se met dans /tmp/

cd /tmp/

 et on fait un wget du lien obtenu précédemment :

wget lelienàtéléchargerdansledossieroùonest

 Après quelques résolutions de noms et redirections l'archive est enregistrée dans /tmp/

 on voit avec un ls que le fichier est bien enregistré sous le nom nagios-xxxx.tar.gz

 on l'extrait avec tar -xzf ;

 on vérifie avec un ls ;

 on peut supprimer l'archive avec rm -rf ;

 on se place dans le dossier produit par l'extraction :

FVT
p. 10

3.3 COMPILATION des sources et INSTALLATION de NAGIOS

REMARQUE : On est donc toujours dans notre dossier extrait contenant les fichiers sources (codes
sources, etc.) de nagios que nous avons téléchargé et extrait précédemment : /tmp/nagios-xxxx/

 On lance le script de préinstallation (il va configurer la compilation et l'installation)

./configure --with-command-group=nagcmd

 On se fait une petite capture d'écran de la fin (peut être utile plus tard) :

REMARQUE :

On peut voir que tous les fichiers de nagios seront situés dans des sous répertoires de /usr/local/

Alors que l'installation par apt-get install nagios-x installera les différents composants de nagios dans
les différents répertoires systèmes suivant leur fonction.

L’avantage d’utiliser apt-get pour installer nagios et centreon est que cela limitera les différents
problèmes d’intégration, notamment les problèmes avec NDOutils.

(Le fait que tous les fichiers soient dans /usr/local/ nous facilitera la tâche, notamment pour l’Install de
centreon)

FVT
p. 11

 On compile toutes les sources avec make all

 On installe nagios avec make install

 On installe le script de lancement (init.d) de nagios avec make install-init

 On configure les permissions de nagios avec make install-commandmode

 On créé des fichiers exemples (les templates) de nagios avec make install-config

(Ces templates sont dans /usr/local/nagios/etc/ pour les activer ou désactiver manuellement -
si on le souhaite- il faudra modifier le fichier de config nagios :
/usr/local/nagios/etc/nagios.cfg)

 On installe l'interface web de nagios avec make install-webconf

 puis on reboot le serveur web apache avec service apache2 restart

FVT
p. 12

3.4 DEMARRAGE NAGIOS

 On vérifie la configuration avec :

/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg

 On ajoute le script de lancement de nagios au démarrage :

update-rc.d nagios defaults

 Si on obtient l’erreur suivante : « missing LSB tags and overrides » (pourrais compromettre le
démarrage automatique de nagios et toute commande du type service nagios …),

-On modifie le script de démarrage ainsi :

vi /etc/init.d/nagios

- Puis on rajoute au début du fichier (dessous #!/bin/sh)

### BEGIN INIT INFO

# Provides: nagios

# Required-Start: $remote_fs $syslog

# Required-Stop: $remote_fs $syslog

# Default-Start: 2 3 4 5

# Default-Stop: 0 1 6

# Short-Description: Start daemon at boot time

# Description: Enable service provided by daemon.

### END INIT INFO

-On enregistre

FVT
p. 13

-On re-ajoute nagios au lancement au démarrage de debian avec

update-rc.d nagios defaults

C’est un succès cette fois-ci.

 On démarre Nagios avec

service nagios start

FVT
p. 14

3.5 Test Connexion NAGIOS

On lance un navigateur web sur une machine dans le même sous réseau que notre debian avec nagios
lancé puis on entre l’IP de notre serveur nagios suivi de /nagios

user : nagiosadmin password : System2008

(SI INTERNAL ERROR VOIR APRES CAPTURES ECRAN)

FVT
p. 15

 SI PROBLEME avec APACHE 500 ERROR vérifiez que toutes les dépendances sont installées

-Si Oui, créez le fichier d'authentification utilisateur nagios (nagiosadmin) et attribuez lui le
MDP (System2008) avec :

htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadmin

-Puis redémarrez apache et nagios :

service apache2 restart

service nagios restart

-Si cela ne résout pas l'erreur vérifiez les logs apache :

cat /var/log/apache2/error.log

FVT
p. 16

3.6 Téléchargement, Compilation et Installation des PLUGINS NAGIOS

On remarque que dans Hosts > LocalHost ou un hôte supervisé > view status detail les checks
retournent des erreurs.

En effet, les plugins de Nagios (les services) qui effectuent ces checks ne sont pas installés, nous allons
donc le faire :

 On fait pareil que pour nagios core pour télécharger et décompresser les plugins dispos sur le
site de nagios dans « downloads » (Attention à être dans /tmp/)

-On récupère donc le lien de l’archive des plugins

-Puis on télécharge les plugins avec wget, on les extraits avec tar et on se rend dans le dossier
décompressé :

 On lance alors la pré-config avec :

./configure --with-nagios-user=nagios --with-nagios-group=nagios

 On lance ensuite la compilation avec make all

 Puis l'installation avec make install

FVT
p. 17

 On relance nagios avec service nagios restart

 On retourne sur l’interface web, puis petit à petit, en fonction de la planification des checks,
les services repassent au vert :

FVT
p. 18

IV) NDOUTILS
NDOutils permet la synchronisation entre Nagios et Centreon, la remontée d’informations sur les
hôtes monitorés par Nagios dans l’interface de Centreon :

4.1 Téléchargement et extraction NDOUTILS

 On le récupère (le lien) sur le site de centreon car la version de Nagios est boguée :

http://svn.centreon.com/trunk/Patch-NDOutils/

 On fait pareil que pour Nagios pour télécharger NDOutils (Attention à être dans /tmp/)

wget -r -np http://svn.centreon.com/trunk/Patch-NDOutils/

(-r permet de télécharger récursivement et -np de ne pas télécharger les parents mais juste ce
qui est après /Patch-NDOutils/)

 On navigue jusque dans le dossier téléchargé du site « Patch-… » :

 On donne les droits en exécution à tout le monde avec chmod -R 777 ./

 On lance la préconfig :

./configure --prefix=/usr/local/nagios --enable-mysql --disable-pgsql --with-ndo2db-


user=nagios --with-ndo2db-group=nagios --with-mysql-lib=/usr/lib64/mysql/

FVT
p. 19

 On vérifie et on se garde un petit screenshot de la configuration :

FVT
p. 20

4.2 Compilation, Installation et Démarrage de NDOUTILS

 On lance la compilation des sources avec make all

 Il n’y a pas de script d’installation ( pas possible de faire un « make install » par exemple), nous
devons terminer l'installation à la main (On copie les fichiers NDOutils puis les fichiers de
configuration et on donne les droits en exécution à nagios et on le rend propriétaire) :

cp ./src/ndomod-3x.o /usr/local/nagios/bin/ndomod.o

cp ./src/ndo2db-3x /usr/local/nagios/bin/ndo2db

cp ./config/ndo2db.cfg-sample /usr/local/nagios/etc/ndo2db.cfg

cp ./config/ndomod.cfg-sample /usr/local/nagios/etc/ndomod.cfg

chmod 774 /usr/local/nagios/bin/ndo*

chmod 774 /usr/local/nagios/etc/ndo*

chown nagios:nagios /usr/local/nagios/bin/ndo*

chown nagios:nagios /usr/local/nagios/etc/ndo*

FVT
p. 21

 On donne les droits en exécution au script de lancement de NDOutils (daemon-init), puis on le


copie (en le renommant ndo2db) dans le dossier avec les autres scripts de lancement de
debian, et on l’ajoute au démarrage :

chmod +x daemon-init

cp daemon-init /etc/init.d/ndo2db

update-rc.d ndo2db defaults

 On démarre NDOutils :

service ndo2db start

FVT
p. 22

V) INSTALLATION DE CENTREON
5.1 Téléchargement de CENTREON

 On va maintenant télécharger centreon de la même manière que nagios :

http://www.centreon.com/Content-Download/donwload-centreon-monitoring-tools

- On récupère le lien (pour Centreon on peut prendre la dernière version, dernière testée
fonctionnelle : 2.5.1) :

 On copie l’adresse du lien de la dernière version stable (clic droit sur le lien > copier l’adresse
du lien) puis on va s’en servir pour télécharger centreon dans notre debian avec wget puis
l’extraire :

On remarque que le fichier est sauvegardé sous « index.php ?id=… », Ce n’est pas grave on
pourra quand même l’extraire.

 On l’extrait avec tar –xzf

FVT
p. 23

5.2 Installation de CENTREON

 On va lancer le script d’installation, puis répondre à la série de questions concernant la


configuration de notre debian, nagios, les plugins, ndoutils, etc

./install.sh -i

Cela nécessite une bonne connaissance de l’arborescence de nagios en particulier.

Les captures d’écran et commentaire de la procédure vous renseignent donc :

FVT
p. 24

On accepte la licence GPL et on choisit les programmes centreon à installer (oui à tous)

On choisit les dossiers où vont être copiés les fichiers de centreon et on les créé (défauts
recommandés)

FVT
p. 25

On indique où sont situés les modules d’interprétation du langage PERL et des plugins PEAR
On indique ensuite le nom d’utilisateur et le groupe de centreon et on les créé (par défaut
recommandé)

FVT
p. 26

On indique ensuite la configuration des utilisateurs du moteur de monitoring (nagios) et du broker


(NDOutils)
Puis on va configurer sudo qui permettra à centreon de géré les droits des différents utilisateurs.
Et indiquer où se sites les fichier de démarrage de nagios, ainsi que le fichier binaire (exécutable) de
nagios, les emplacements des fichiers de configuration de nagios
Et aussi indiquer le dossier de configuration de NDOutils ainsi que son script de lancement

FVT
p. 27

On va ensuite lancer la configuration du serveur apache pour permettre l’affichage de la page web
d’administration de centreon et redémarrer apache

FVT
p. 28

On va ensuite installer les modules PERL manquants ou en mettre à jour

FVT
p. 29

On indique où les fichiers de centreon doivent être installés (par défaut recommandé)

On installe ensuite le service CentStorage pour les bases de données de centreon et on l’ajoute au
démarrage avec ses niveaux de priorités

FVT
p. 30

On indique où sont situés les binaires de centreon et on lance l’installation du noyau de centreon,
ainsi que le script au démarrage et ses niveaux de priorités

On installe les plugins (on choisit leur dossier, etc.)

FVT
p. 31

On renseigne ensuite l’emplacement du programme snmp (utile pour les checks)

L’INSTALLATION DE CENTREON EST MAINTENANT TERMINEE, il ne reste plus qu’à finir la


configuration via l’interface web.

FVT
p. 32

5.3 Finalisation de l’installation CENTREON

 On se connecte sur l’interface web à travers un navigateur internet d’une machine dans le
même sous-réseau, en tapant dans la barre d’adresse l’IP de notre serveur ou est installé
centreon, suivi de /centreon.

 On arrive sur l’interface de configuration de centreon

 Toutes les dépendances sont OK

FVT
p. 33

 On va configurer l’accès de centreon à nagios en lui indiquant les répertoires ou sont situés
différents composants requis :

Nagios directory : /usr/local/nagios/

Nagiostats binary : /usr/local/nagios/bin/nagiostats

Nagios image directory : /usr/local/nagios/share/images/

 On va maintenant configurer l’accès au broker utilisé (NDOutils) :

Ndomod binary (ndomod.o) : /usr/local/nagios/bin/ndomod.o

 On va entrer les informations du compte de connexion (admin) de centreon :

Ici je rentre administrateur de partout pour le test (notamment en mot de passe, mais vous pouvez en
choisir un autre)

FVT
p. 34

 Ici, Centreon demande le mot de passe super-utilisateur de MySQL (saisi lors de l’installation
des dépendances (System2008), voir capture d’écran).

Ceci lui permettra de créer sa Base de Données « centreon » avec pour nom d’utilisateur
centreon et mot de passe choisi : System2008

 Ici centreon nous demande de modifier le fichier de configuration de MySQL afin d’y ajouter la
ligne « innodb_file_per_table=1», sous la section « [mysqld] ».

-On va donc éditer le fichier /etc/mysql/my.cnf :

vi /etc/mysql/my.cnf

-Puis se rendre dans cette section [mysqld]

FVT
p. 35

-Aller jusqu’à * InnoDB et rajouter la ligne « innodb_file_per_table=1» de cette façon


(n’oubliez pas d’enregistrer) :

-On redémarre MySQL :

-On retourne sur l’interface web de centreon puis on clique sur « refresh »

Centreon va maintenant créer et configurer sa Data Base

 L’installation et Configuration de Centreon est enfin terminée, on peut cliquer sur finish :

FVT
p. 36

 On doit alors se loguer sur l’interface web avec les identifiants du compte admin choisis à
l’étape « 5 – Admin Information » :

 On arrive ensuite sur la page d’accueil de l’interface web de centreon :

 Retour dans notre terminal, on lance les services Centreon fraîchement configurés puis le
snmp :

service centcore start

service centstorage start

service snmptt start

service snmpd start

 on reboot

reboot

FVT
p. 37

5.4 Première utilisation, MANIPULATION

On va maintenant lancer la première synchronisation entre nagios et centreon via NDOutils

 Pour cela, une fois connecté à l’interface web de centreon, se rendre dans :

Configuration > Monitoring Engines > Generate

On sélectionne les 3 premières lignes pour créer, vérifier et exporter dans nagios les fichiers
de configuration (hosts.cfg, nagios.cfg…), sans redémarrer nagios.

 Puis on clique sur export pour lancer les opérations d’exportation

 On redémarre ensuite le plugin NDOutils avec service ndo2db restart

FVT
p. 38

 Puis on retourne dans notre interface web pour redémarrer nagios à partir de centreon :

 Nos hôtes apparaissent ensuite (seulement notre serveur centreon pour le moment) :

 Pour rajouter un hôte on va dans Config > hôtes > Add

Puis une fois ajouté à centreon on va l’exporter dans nagios avec :

Configuration > Monitoring Engines > Generate

Puis on peut cocher toutes les cases et cliquer sur export

REMARQUE : Il peut y avoir un petit temps d’attente avant que les hôtes soient ajoutés à la vue
« hosts » dans Monitoring > Hosts > Hosts

FVT

Vous aimerez peut-être aussi