Installation de Centreon

Cet article est la suite de l’article sur Nagios. C’est la dernière étape pour la mise en place de notre serveur de monitoring.

L’installation de Centreon se fait en 2 parties. Il faut d’abord installer les NDOutils pour enregistrer les informations envoyées par Nagios en db. Puis, il faut installer Centreon lui-même.

NDOutils

Il faut commencer par installer les NDOutils avant d’installer Centreon.

On commence par installer le serveur MySQL ainsi que les bibliothèques MySQL :

apt-get install mysql-server
apt-get install libmysqlclient15-dev

On peut les récupérer à l’adresse suivante : http://www.nagios.org/download/addons ou via la commande suivante :

wget http://prdownloads.sourceforge.net/sourceforge/nagios/ndoutils-1.4b8.tar.gz
# On extrait l'archive et on change de répertoire
tar xvf ./ndoutils-1.4b8.tar.gz
cd ./ndoutils-1.4b8

On lance le ./configure en spécifiant quel type de db on va utiliser (ici mysql)

./configure --prefix=/usr/local/nagios/ --enable-mysql --disable-pgsql --with-mysql-lib=/usr/lib/mysql
# On enchaîne avec make
make

Bug avec l’outil NDOutils sur Debian : http://forum.centreon.com/f10/no-host-in-monitoring-home-views-t8428/page2.html

apt-get install subversion
cd /tmp/
svn co http://svn.centreon.com/trunk/Patch-NDOutils/
cd ./Patch-NDOutils/
chmod u+x ./configure
./configure --prefix=/usr/local/nagios/ --enable-mysql --disable-pgsql –-with-mysql-lib=/usr/lib/mysql
make
/etc/init.d/nagios stop
cp /tmp/Patch-NDOutils/src/ndomod-3x.o /usr/local/nagios/bin/ndomod.o
cp /tmp/Patch-NDOutils/src/ndo2db-3x /usr/local/nagios/bin/ndo2db
chown -R nagios:nagios /usr/local/nagios/bin/
chmod -R 774 /usr/local/nagios/bin/
/etc/init.d/nagios start

Mise en place de la db pour les NDOutils :

On crée la base de données ndo, qui contiendra toutes les infos.

mysqladmin -uroot -p create ndo

Une fois la base créée, il faut lancer le script pour créer la structure (pensez à bien vous mettre dans le répertoire db, sinon ça ne marche pas).

cd ./db
./installdb -u user -p mdp -h localhost -d ndo

Vous devriez avoir le message suivant qui s’affiche :

DBD::mysql::db do failed: Table 'nagios.nagios_dbversion' doesn't exist at ./installdb line 51.
** Creating tables for version 1.4b8
     Using mysql.sql for installation...
** Updating table nagios_dbversion
Done!

L’erreur n’empêche pas de continuer, on revient au répertoire supérieur ( cd .. )

On copie le module compilé de NDOutils dans le répertoire de nagios ainsi que le fichier de conf :

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

Ensuite on édite le fichier nagios.cfg pour que nagios prenne en compte le nouveau module :

vi /usr/local/nagios/etc/nagios.cfg

Il faut rajouter cette ligne dans la partie BROKER MODULE :

broker_module=/usr/local/nagios/bin/ndomod.o config_file=/usr/local/nagios/etc/ndomod.cfg

Tant que vous êtes dans le fichier nagios.cfg, il faut vérfier que la ligne suivante soit présente :

event_broker_options=-1

Cette ligne permet à nagios d’envoyer des infos à des modules.

Mise en place du daemon ndo2db, attention, il y’a une version pour nagios 2 et une version pour nagios 3, on met aussi en place son fichier de conf :

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

On modifie /usr/local/nagios/etc/ndo2db.cfg pour mettre en place les bons paramètres (base de données, utilisateur, mot de passe …)

Et on lance le tout avec la commande suivante, cela permet de vérifier que pour l’instant nous n’avons pas d’erreur :

/usr/local/nagios/bin/ndo2db -c /usr/local/nagios/etc/ndo2db.cfg

Malheureusement, NDOutils ne se lance pas automatiquement au démarrage. Je vous conseille donc de récupérer le script init à l’adresse suivante : http://www.nicolargo.com/blogdata/ndo2db .

wget --user-agent="Mozilla/5.0 (X11;U; Linux i686; en-GB; rv:1.9.1) Gecko/20090624 Ubuntu/9.04 (jaunty) Firefox/3.5" http://www.nicolargo.com/blogdata/ndo2db

Avant de l’installer, vérfier que ces 2 lignes correspondent bien à votre configuration :

NdoUser=nagios
NdoGroup=nagiosgrp

Il faut y transformer en :

NdoUser=nagios
NdoGroup=nagios

Ensuite, on met en place le fichier ndo2db dans /etc/init.d/ et on lui ajoute les bons droits.

cp ./ndo2db /etc/init.d/
chown root:root /etc/init.d/ndo2db 
chmod 755 /etc/init.d/ndo2db 
update-rc.d ndo2db defaults

On met aussi les bons droits aux binaires et fichiers de conf que nous venons de rajouter :

# Modification des droits sur les binaires
chown -R nagios:nagios /usr/local/nagios/bin/
chmod -R 774 /usr/local/nagios/bin/
# Modification des droits sur les fichiers de configuration
chown -R nagios:nagios /usr/local/nagios/etc/
chmod -R 774 /usr/local/nagios/etc/

Enfin, on lance ndo2db et on relance nagios :

/etc/init.d/ndo2db start
/etc/init.d/nagios restart

Centreon

On commence par installer toutes les dépendances nécessaires à Centreon. En fonction de votre distribution, certains paquets peuvent déjà être installés :

apt-get install sudo
apt-get install rrdtool librrds-perl
apt-get install libconfig-inifiles-perl libcrypt-des-perl libdigest-hmac-perl libdigest-sha1-perl libgd-gd2-perl
apt-get install snmp snmpd libnet-snmp-perl libsnmp-perl
apt-get install mailx
apt-get install php-pear
apt-get install php5 libapache2-mod-php5
apt-get install php5-gd php5-ldap php5-snmp php5-mysql
apt-get install libgd2-xpm libgd2-xpm-dev libpng12-dev

Il faut récupérer la version 2 pour nagios 3 sur le site de centreon : http://www.centreon.com/Centreon/download.html

Ou via la commande suivante :

wget http://download.centreon.com/index.php?id=105

On extrait l’archive et on va dans le répertoire de centreon :

tar xf ./centreon-2.0.2.tar.gz
cd ./centreon-2.0.2
# Puis on lance l'installation :
./install.sh -i

Répondez aux différentes questions (je vais pas détailler), prenez votre temps, et lisez bien ce qu’ils vous aient demandés.

Faites la maj des modules php-pear si nécessaires.

Mise à jour de la structure de la db ndo pour ajouter le support des ACL :
# Nous sommes toujours dans notre dossier centreon

cd ./www/install/
mysql -u root -p ndo < ./createNDODB.sql

Une fois l’installation finie, vous devez vous connecter à l’interface web pour finir la configuration :
http://votreip/centreon/

Une fois toute la configuration finie, vous devez vous logguer.
Et vous devriez avoir un message d’erreur sur la page d’accueil, ce message est normal. Il faut configurer Centreon pour qu’il se connecte à la db ndo.

Erreur Ndo

Il faut aller dans la partie configuration, centreon et choisir dans le menu de gauche ndo2db.cfg. Ensuite, on clique sur le poller principal, on modifie l’onglet General et Database. Dans l’onglet General, on modifie le Socket Type et le Socket Name. Et dans l’oglet Database, on modifie l’utilisateur et le mot de passe de connexion à la db ainsi que le nom de la db si besoin est.


Socket Type : unix
Socket Name : /usr/local/nagios/var/ndo.sock

ndo2db.cfg
ndo2db.cfg

Une fois sauvegardé, il faut modifier le fichier ndomod.cfg. Dans ce fichier, il faut modifier 3 lignes Interface Type, Output et Buffer File.


Interface Type : unixsocket
Output: /usr/local/nagios/var/ndo.sock
Buffer File : /usr/local/nagios/var/ndomod.tmp

ndomod.cfg

Et voilà, votre Centreon est opérationnel. Par contre, j’ai du le redémarrer après l’installation.

9 réflexions au sujet de “Installation de Centreon”

  1. penses a laisser une intro (genre un ligne)
    comme ca on s’embête pas a chercher ‘c’est quoi ca déjà?’ 🙂

    sinon j’essayerai de l’installer sur une vm a l’occaz 😉

    Répondre
  2. Je vais réfléchir à l’idée de l’intro.

    Mais sinon, j’ai vérifié ma procédure à coup de copier/coller et ça marche 😀

    Répondre
    • Bonjour,

      Je n’ai pas essayé d’installer Centreon avec Icinga. Pendant une période Centreon ne supportait pas Icinga, je ne sais pas si ça a changé.

  3. Plusieurs petites erreurs :
    – le fichier socket n’est pas ndo.lock mais plutot ndo.sock
    – si on utilise l’installation de l’article précedent sur Nagios, du coup la base de données de Centreon ‘centstorage’ devient ‘ndo’, et il faut le modifier dans Configuration / Centreon / ndo2db.cfg / database / Database name -> ndo

    Répondre
    • Merci,

      J’ai corrigé les ndo.lock en ndo.sock, sur mes captures d’écrans c’étaient correctes.

      Je rajouterais une capture d’écran pour la modification du nom de la base de données.

Répondre à Alexis Annuler la réponse

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.