Installation et configuration de Nagios / Centreon

Nagios est un outil de supervision qui, par l’intermédiaire de plugin, permet de monitorer des ressources serveurs, ainsi que d’effectuer des mesures de différents types. Centreon est une surcouche graphique qui permet de configurer Nagios (hosts,services, etc…) et de restituer les alarmes de manière beaucoup plus pratique (vue différentes, etc…).

Dans cette procédure, nous installerons “NAGIOS 3” à partir des paquets Debian et nous installerons “CENTREON 2” à partir des sources fournis sur le site http://www.centreon.com

Pré-requis à l’installation

On part du principe que l’installation d’une Débian de base a déja été éffectué.

Il faut, dans un premier temps, installer les packages Débian suivant :

# aptitude install sudo lsb-release apache2 php5 php-pear php5-mysql php5-ldap php5-snmp php5-gd mysql-server-5.0 rrdtool librrds-perl libconfig-inifiles-perl libcrypt-des-perl libdigest-hmac-perl libdigest-sha1-perl libgd-gd2-perl snmp snmpd libnet-snmp-perl libsnmp-perl
Attention, le mot de passe MySQL est demandé.

Installation de Nagios

# aptitude install nagios3 nagios-nrpe-plugin ndoutils-nagios3-mysql
Lorsque l’on vous demande de configurer la base de données pour ndoutils-mysql avec dbconfig-common, répondez NON, le script d’installation de Centreon va s’en occuper.

Il faut maintenant ajouter l’utilisateur Apache (www-data) dans le groupe de Nagios (nagios) en éxécutant la commande suivante :

# usermod -G nagios -a www-data

Sauvegarde et droits du répertoire de Nagios

Nous allons maintenant sauvegarder le répertoire de configuration d’origine de Nagios et lui mettre les bons droits, car Centreon va utiliser sa propre structure pour les fichiers de configuration Nagios :

# mv /etc/nagios3 /etc/nagios3.orig # mkdir /etc/nagios3 # cp -Rt /etc/nagios3 /etc/nagios3.orig/nagios.cfg /etc/nagios3.orig/apache2.conf /etc/nagios3.orig/stylesheets/ # chown nagios:www-data /etc/nagios3 # chmod ug+w /etc/nagios3

Installation de Centréon

Nous allons maintenant télécharger le package de Centréon : (la version la plus récente à la date du 27/12/2010 est la 2.1.10)

# cd /tmp # wget http://download.centreon.com/centreon/centreon-2.1.10.tar.gz

Nous allons maintenant décompresser le package de Centréon :

# tar xzf centreon-2.1.10.tar.gz # cd centreon-2.1.10 # ./install.sh -i

Nous allons maintenant répondre aux questions du script d’installation :

Press "Enter" to read the Centreon License, then type "y" to accept it. Do you want to install : Centreon Web Front [y/n], default to [n]: y Do you want to install : Centreon CentCore [y/n], default to [n]: y Do you want to install : Centreon Nagios Plugins [y/n], default to [n]: y Do you want to install : Centreon Snmp Traps process [y/n], default to [n]: y Where is your Centreon directory? default to [/usr/local/centreon]: /opt/centreon Do you want me to create this directory ? [/opt/centreon] [y/n], default to [n]: y Where is your Centreon log directory default to [/usr/local/centreon/log]: /opt/centreon/log Do you want me to create this directory ? [/opt/centreon/log] [y/n], default to [n]: y Where is your Centreon etc directory default to [/etc/centreon]: /etc/centreon Do you want me to create this directory ? [/etc/centreon] [y/n], default to [n]: y Where is your Centreon generation_files directory? default to [/usr/local/centreon]: /opt/centreon Where is your Centreon variable library directory? default to [/var/lib/centreon]: /var/lib/centreon Do you want me to create this directory ? [/var/lib/centreon] [y/n], default to [n]: y Where is your CentPlugins Traps binary default to [/usr/local/centreon/bin]: /opt/centreon/bin Do you want me to create this directory ? [/opt/centreon/bin] [y/n], default to [n]: y Where is the RRD perl module installed [RRDs.pm] default to [/usr/lib/perl5/RRDs.pm]: /usr/lib/perl5/RRDs.pm Where is PEAR [PEAR.php] default to [/usr/share/php/PEAR.php]: /usr/share/php/PEAR.php Where is installed Nagios ? default to [/usr/local/nagios]: /usr/lib/cgi-bin/nagios3 Where is your nagios config directory default to [/usr/local/nagios/etc]: /etc/nagios3 Where is your Nagios var directory ? default to [/usr/local/nagios/var]: /var/lib/nagios3 Where is your Nagios plugins (libexec) directory ? default to [/usr/local/nagios/libexec]: /usr/lib/nagios/plugins Where is your Nagios image directory ? default to [/usr/local/nagios/share/images/logos]: /usr/share/nagios/htdocs/images/logos Where is your NDO ndomod binary ? default to [/usr/sbin/ndomod.o]: /usr/lib/ndoutils/ndomod-mysql-3x.o Where is sudo configuration file default to [/etc/sudoers]: /etc/sudoers Do you want me to configure your sudo ? (WARNING) [y/n], default to [n]: y Do you want to add Centreon Apache sub configuration file ? [y/n], default to [n]: y Do you want to reload your Apache ? [y/n], default to [n]: y Do you want me to install/upgrade your PEAR modules [y/n], default to [y]: y Where is your Centreon Run Dir directory? default to [/var/run/centreon]: /var/run/centreon Do you want me to create this directory ? [/var/run/centreon] [y/n], default to [n]: y Where is your CentStorage binary directory default to [/usr/local/centreon/bin]: /opt/centreon/bin Where is your CentStorage RRD directory default to [/var/lib/centreon]: /var/lib/centreon Do you want me to install CentStorage init script ? [y/n], default to [n]: y Do you want me to install CentStorage run level ? [y/n], default to [n]: y Where is your CentCore binary directory default to [/usr/local/centreon/bin]: /opt/centreon/bin Do you want me to install CentCore init script ? [y/n], default to [n]: y Do you want me to install CentCore run level ? [y/n], default to [n]: y Where is your CentPlugins lib directory default to [/var/lib/centreon/centplugins]: /var/lib/centreon/centplugins Do you want me to create this directory ? [/var/lib/centreon/centplugins] [y/n], default to [n]: y Where is your SNMP configuration directory default to [/etc/snmp]: /etc/snmp Where is your SNMPTT binaries directory default to [/usr/local/centreon/bin/]: /opt/centreon/bin/

On continue l’installation de Centréon via l’interface Web

Nous allons ouvrir un navigateur à l’adresse “http://yourserverip/centreon/”.

Remplacer ”<yourserverip>” avec l’adresse IP du serveur Centréon.

Suivez les instructions d’installation suivantes :

– Cliquez sur Start

– Cochez “I Accept” et cliquez sur “Next”

– Assurez-vous que “Nagios Version” à bien la valeur à “3.x” puis cliquez sur Next

– Dans l’écran suivant, assurez-vous que tous les composants ont le statut “OK” puis cliquez sur Next

– Si tous les composants sont OK, cliquez de nouveau sur Next

– Remplissez les infos concernant la Base de données comme suit :

Root Password for MySQL: Le mot de passe root que vous avez entré pendant l'installation de MySQL
Centreon Database Name: centreon
Centstorage Database Name: centstorage
NDO Database Name: centstatus
Database Password: your_password
Confirm it: your_password
MySQL Client version (Password Haching Changes): >=4.1 - PASSWORD()

– Cliquez sur Next une fois tous les champs renseignés.

– Cliquez sur Next afin de valider la vérification de la base de données

– Renseignez les informations de l’utilisateur admin (il faut absolument renseigner une adresse e-mail car sinon l’export vers Nagios risque de générer une erreur) – puis cliquez sur Next

– Cliquez sur NO pour “Enable LDAP Authentification ?” puis cliquez sur Next

– Vérifiez que tous les composants sont OK, puis cliquez sur Next

– Vérifiez que tous les composants sont OK, puis cliquez sur Next afin de valider l’installation de la base de données.

– Cliquez maintenant sur “Click here to complete your install” afin de terminer l’installation.

Vous devriez maintenant voir la page d’authentification de CENTREON :

Configuration de NDOUtils

A partir de la version 2.1 de Centreon, la base de donnée NDO est configuré à partir de l’installation de Centreon. Nous n’avons pas à le configurer manuellement. Nous avons seulement besoin d’activer NDO dans le fichier ”/etc/default/ndoutils”.

# vi /etc/default/ndoutils

Changez la ligne :

"ENABLE_NDOUTILS=0"

par :

"ENABLE_NDOUTILS=1"

Finalisation de la configuration de Centreon

– Ouvrir un navigateur à l’adresse : “http://yourserverip/centreon/”.

– Remplacer “yourserverip” avec l’adresse IP du serveur Centréon.

Une fois authentifié, allez dans : Configuration → Nagios → cgi (sur le coté). Cliquez sur le lien “CGI.cfg”.

Changez les paramètres pour les options suivantes :

- Physical HTML Path: /usr/share/nagios3/htdocs
- URL HTML Path     : /nagios3
- Nagios Process Check Command: /usr/lib/nagios/plugins/check_nagios /var/cache/nagios3/status.dat 5 '/usr/sbin/nagios3'

Cliquez sur “Save”.

Ensuite, allez dans : Configuration → Nagios → nagios.cfg (in sidebar), Cliquez sur le lien “Nagios CFG 1”, vous devez vous trouver dans la section “Files”.

Assurez-vous que vous avez bien les paramètres suivants :

- Log File              : /var/log/nagios3/nagios.log
- Downtime File         : /var/lib/nagios3/downtime.dat
- Comment File          : /var/lib/nagios3/comment.dat
- Temp File             : /var/cache/nagios3/nagios.tmp
- P1 File               : /usr/lib/nagios3/p1.pl
- Lock File             : /var/run/nagios3/nagios3.pid
- Object Cache File     : /var/cache/nagios3/objects.cache
- Status File           : /var/cache/nagios3/status.dat
- External Command File : /var/lib/nagios3/rw/nagios.cmd

Maintenant, cliquez sur l’onglet “Logs Options” :

Assurez-vous que vous avez les paramètres suivants :

- Log Archive Path     : /var/log/nagios3/archives/
- State Retention File : /var/lib/nagios3/retention.dat

cliquez sur “Save”.

Allez dans: Administration → Options → CentStorage (sur le coté)

Assurez-vous que vous avez les paramètres suivants :

- Nagios current log file to parse: /var/log/nagios3/nagios.log

Press Save

Maintenant, il ne nous reste plus qu’à appliquer ces modifications dans Nagios

Allez dans : Configuration → Nagios

Séléctionnez les options suivantes comme ci-dessous :

- Generate Configuration Files
- Include Comments
- Run Nagios debug (-v)
- Move Export Files
- Restart Nagios
- Method: "External Command"

Cliquez sur “Export”

Ceci va relancer Nagios et appliquer tous les changements que vous avez effectué dans l’interface Web.

Vous devrez toujours effectuer ceci dés lors que vous ajoutez/modifiez des hotes, contacts, services, etc…

Si l’export de la configuration s’est bien passé, vous devriez voir ceci :

L’installation de Centreon est maintenant terminée.


Application des Corrections finales

CECI EST TRES IMPORTANT

Allez en mode console, puis…

Dans Debian / Ubuntu, l’utilisateur “nagios” à son shell parametré sur ”/bin/false”. A cause de ceci, les démons “centcore” et “centstorage” ne peuvent pas démarrer. La raison est que les démons utilises la commande “su -c” (commande qui nécessite une enveloppe réelle), donc il faut configurer un shell pour l’utilisateur “nagios”. Celui-ci doit être réglé sur ”/bin/sh” en éxécutant la commande suivante :

# usermod -s /bin/sh nagios

Il faut maintenant appliquez les autorisations de l’interface Web pour être en mesure d’envoyer des “Commandes externes”

– Effectuez les commandes suivantes pour modifier les permissions et ainsi rendre les modifications permanentes:

# invoke-rc.d nagios3 stop # dpkg-statoverride --update --add nagios www-data 2710 /var/lib/nagios3/rw # dpkg-statoverride --update --add nagios nagios 751 /var/lib/nagios3

Ajoutez un utilisateur dans HTACCESS pour l’utilisateur “nagios” :

# htpasswd -bc /etc/nagios3/htpasswd.users nagiosadmin webstg

Autorisez l’accès en “read_only” pour SNMP :

# echo "rocommunity public" > /etc/snmp/snmpd.conf

Si vous préferez autoriser seulement l’accès en SNMP pour “localhost”, vous devez appliquer ceci :

# echo "rocommunity public 127.0.0.1" > /etc/snmp/snmpd.conf

Maintenant, vous pouvez redémarrer le serveur avec la commande suivante :

# sync;sync;init 6

Voila, après le redémarrage, vous avez un environnement Nagios / Centreon completement opérationnel.

Leave a Reply

Your email address will not be published. Required fields are marked *