Geek Help Me ! Tutoriels, Dossiers, News...

  Accueil Tutoriels Systèmes Linux [SYSTEMES] Tuto installer Nagios-Centreon sous Ubuntu
Bookmark and Share
[SYSTEMES] Tuto installer Nagios-Centreon sous Ubuntu
Note des utilisateurs: / 41
MauvaisTrès bien 
Écrit par GueuTzillA   
Mardi, 22 Décembre 2009 03:08

CentreonVoici un tuto qui vous permettra d’installer un serveur de supervision SNMP, WMI et autres pour votre parc et votre/vos réseaux basé sur le couple Open Source Nagios - Centreon.

Ce tuto est réalisé sous Ubuntu 9.10 server sur une installation clean d’ubuntu avec Nagios 3.2.0 et Centreon 2.1.3.

Tous à vos claviers... C'est partit

1] Installation des prés requis:

Pour ma part je vais installer les prés requis en root et je switcherai sur l’utilisateur nagios après donc si vous n’êtes pas en root, penser a bien rajouter "sudo" devant les commandes ;o)

Package divers:

apt-get install sudo mailx lsb-release ou apt-get install sudo mailx lsb-release postfix

Attention cette dernière installe postfix pour l’envoi de mail et un prompt vous demandera d’interagir lors de l’installation de postfix)

Config postfix

Compiler:
apt-get install build-essential

Server Web (apache) et PHP5:

apt-get install apache2 apache2-mpm-prefork
apt-get install php5 php5-mysql
apt-get install php-pear php5-ldap php5-snmp php5-gd

MySQL:

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

Pendant l’installation de mysql, vous avez un prompt qui vous demande de saisir le mot de passe du server mysql. Dans le tuto nous mettrons nagios. Ensuite un deuxième prompt apparait, revalider votre mot de passe.

Mysql Prompt

RRDTool:

apt-get install rrdtool librrds-perl

Perl:

apt-get install libconfig-inifiles-perl libcrypt-des-perl libdigest-hmac-perl libdigest-sha1-perl libgd-gd2-perl

SNMP:

apt-get install snmp snmpd libnet-snmp-perl libsnmp-perl

Les librairies GD:

apt-get install libgd2-xpm libgd2-xpm-dev libpng12-dev
Et enfin 2 paquets qui nous servirons pour la suite :
apt-get install dnsutils fping

Pour les personnes qui veulent tout, tout de suite:

apt-get install sudo mailx lsb-release postfix build-essential apache2 apache2-mpm-prefork php5 php5-mysql php-pear php5-ldap php5-snmp php5-gd mysql-server-5.0 libmysqlclient15-dev 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 libgd2-xpm libgd2-xpm-dev libpng12-dev dnsutils fping

Je vous conseil vivement d’installer également un serveur SSH si ce n’est pas déjà fait:

apt-get install openssh-server

2] Création du compte et ajout des droits:

Il nous faut à présent créer un utilisateur nagios car il est préférable de ne pas utiliser le compte root pour l’installation mais plutôt ce compte qui exécutera les plugins et autre scripts ce qui nous permettra de voir s’il y a des problèmes de droits ou autre.
En effet la majeure partie des problèmes rencontrés viennent du fait que les personnes utilisent le compte root pour faire leur install et du coup cela occasionne bon nombre de complication lié aux droits.

Création du compte user et des groupes pour une bonne utilisations de Nagios:

Si vous êtes connecté en root tapé les commandes suivantes

/usr/sbin/useradd -m nagios
passwd nagios
Enter new UNIX password: nagios
Retype new UNIX password: nagios

psswd: Password updated successfully
/usr/sbin/groupadd nagcmd
/usr/sbin/usermod -G nagios,nagcmd nagios
/usr/sbin/usermod -G nagios,nagcmd www-data

Pour le passwd vous pouvez bien évidement prendre le password de votre choix dans le tuto nous prendront "nagios".

Si vous n’êtes pas connecter en root:

sudo /usr/sbin/useradd -m nagios
sudo passwd nagios
sudo /usr/sbin/groupadd nagcmd
sudo /usr/sbin/usermod -G nagios,nagcmd nagios
sudo /usr/sbin/usermod -G nagios,nagcmd www-data

Add user

Voilà donc pour résumé, nous créons un compte utilisateur, un groupe nagcmd pour exécuter les commandes du poller Nagios et un groupe nagios pour les droits. Le compte utilisateur nagios est ajouter à ces 3 groupes (nagmcd, nagios, nagcmd).

A présent, je vous conseil de vous déloguer et de vous connecter avec le compte nagios créer juste avant puis tester la commande sudo ifconfig pour vérifier que vous pouvez utiliser sudo correctement.

Nous allons donc maintenant commencer l’installation…

3] Installation de Nagios:

Sur certains tuto, c'est à ce moment que les comptes nagios et autres groupes sont créés. Pour ma part, j’ai préférer les créer avant et me connecter avec mon compte nagios pour la suite.

Placer vous dans un répertoire de travail le répertoire home par exemple:

cd /home/nagios/

Puis créer un répertoire download et placer vous dans ce répertoire:

mkdir download
cd download

Une fois dans ce répertoire, taper:

wget http://prdownloads.sourceforge.net/sourceforge/nagios/nagios-3.2.0.tar.gz

Download nagios

Puis décompresser l’archive de nagios:

tar xvzf nagios-3.2.0.tar.gz

Une fois décompressé, nous allons installer le programme:

cd nagios-3.2.0/

./configure --prefix=/usr/local/nagios --with-command-group=nagcmd --enable-nanosleep --enable-event-broker

C’est partit…

Nagios config


Puis, éffectuer les commandes suivantes:

make all
sudo make install
sudo make install-init
sudo make install-commandmode
sudo make install-config

Nagios make

Voilà, Nagios est installer, nous allons maintenant installer le plugin Nagios…

Replacer vous dans le répertoire download avec un "cd .."

Puis télécharger "nagios-plugins-1.4.14.tar.gz" :

wget http://prdownloads.sourceforge.net/sourceforge/nagiosplug/nagios-plugins-1.4.14.tar.gz

Décompresser le puis placer vous dans le répertoire:

tar xvzf nagios-plugins-1.4.14.tar.gz
cd nagios-plugins-1.4.14/

Ensuite configurer le:

./configure --with-nagios-user=nagios --with-nagios-group=nagios --with-openssl=/usr/bin/openssl
make
sudo make install

Make plugin

Voilà Nagios et son plugin sont installés.

Configurons maintenant l’accès Web de Nagios:

Créer le htaccess: (nous prendrons nagios dans le tuto)

htpasswd -c /usr/local/nagios/etc/htpasswd.users nagios
New password:nagios
Re-type new password:nagios

Adding password for user nagios

Editer le fichier httpd.conf comme suis:

sudo pico /etc/apache2/httpd.conf

ScriptAlias /nagios/cgi-bin /usr/local/nagios/sbin
<Directory "/usr/local/nagios/sbin">
Options ExecCGI
AllowOverride None
Order allow,deny
Allow from all
AuthName "Nagios Access"
AuthType Basic
AuthUserFile /usr/local/nagios/etc/htpasswd.users
Require valid-user
</Directory>
Alias /nagios /usr/local/nagios/share
<Directory "/usr/local/nagios/share">
Options None
AllowOverride None
Order allow,deny
Allow from all
AuthName "Nagios Access"
AuthType Basic
AuthUserFile /usr/local/nagios/etc/htpasswd.users
Require valid-user
</Directory>

Puis redémarrer le serveur apache:

sudo service apache2 restart

Voilà si vous tapez http://IP_DU_SERVER/nagios un prompt doit apparaitre. Saisissez donc le login et pass saisi lors de la création du htaccess (nagios, nagios pour le tuto) et vous devriez avoir ceci:

Nagios WEB

4] Installation NDO partie 1:

Passons maintenant à NDO.

replacer vous dans le répertoire download puis télécharger NDOutils :

cd ..
wget
http://prdownloads.sourceforge.net/sourceforge/nagios/ndoutils-1.4b9.tar.gz

Puis décompresser l’archive pour procéder à une installation manuelle:

tar xvzf ndoutils-1.4b9.tar.gz
cd ndoutils-1.4b9


Configurer NDO:

./configure --prefix=/usr/local/nagios/ --enable-mysql --disable-pgsql \
--with-ndo2db-user=nagios --with-ndo2db-group=nagios
make


Et enfin, procéder à l’installation:

sudo cp ./src/ndomod-3x.o /usr/local/nagios/bin/ndomod.o
sudo cp ./src/ndo2db-3x /usr/local/nagios/bin/ndo2db
sudo cp ./config/ndo2db.cfg-sample /usr/local/nagios/etc/ndo2db.cfg
sudo cp ./config/ndomod.cfg-sample /usr/local/nagios/etc/ndomod.cfg
sudo chmod 775 /usr/local/nagios/bin/ndo*
sudo chown nagios:nagios /usr/local/nagios/bin/ndo*


Créer ensuite un deamon ndo2db:

sudo pico /etc/init.d/ndo2db

Puis coller le script ci-dessous.

#!/bin/sh
# 
#
# chkconfig: 345 99 01
# description: Nagios to mysql
#
# Author : Gaëtan Lucas
# Realase : 07/02/08
# Version : 0.1 b
# File : ndo2db
# Description: Starts and stops the Ndo2db daemon
#              used to provide network services status in a database.
#

status_ndo ()
{
if ps -p $NdoPID > /dev/null 2>&1; then
return 0
else
return 1
fi
return 1
}
printstatus_ndo()
{
if status_ndo $1 $2; then
echo "ndo (pid $NdoPID) is running..."
else
echo "ndo is not running"
fi
}
killproc_ndo ()
{
echo "kill $2 $NdoPID"
kill $2 $NdoPID
}
pid_ndo ()
{
if test ! -f $NdoRunFile; then
echo "No lock file found in $NdoRunFile"
echo -n "         checking runing process..."
NdoPID=`ps h -C ndo2db -o pid`
if [ -z "$NdoPID" ]; then
echo "     No ndo2db process found"
exit 1
else
echo "     found process pid: $NdoPID"
echo -n "         reinit $NdoRunFile ..."
touch $NdoRunFile
chown $NdoUser:$NdoGroup $NdoRunFile
echo "$NdoPID" > $NdoRunFile
echo "     done"
fi
fi
NdoPID=`head $NdoRunFile`
}
# Source function library
# Solaris doesn't have an rc.d directory, so do a test first
if [ -f /etc/rc.d/init.d/functions ]; then
. /etc/rc.d/init.d/functions
elif [ -f /etc/init.d/functions ]; then
. /etc/init.d/functions
fi
prefix=/usr/local/nagios
exec_prefix=${prefix}
NdoBin=${exec_prefix}/bin/ndo2db
NdoCfgFile=${prefix}/etc/ndo2db.cfg
NdoRunFile=${prefix}/var/ndo2db.run
NdoLockDir=/var/lock/subsys
NdoLockFile=ndo2db.lock
NdoUser=nagios
NdoGroup=nagios

# Check that ndo exists.
if [ ! -f $NdoBin ]; then
echo "Executable file $NdoBin not found.  Exiting."
exit 1
fi
# Check that ndo.cfg exists.
if [ ! -f $NdoCfgFile ]; then
echo "Configuration file $NdoCfgFile not found.  Exiting."
exit 1
fi

# See how we were called.
case "$1" in
start)
echo -n "Starting ndo:"
touch $NdoRunFile
chown $NdoUser:$NdoGroup $NdoRunFile
$NdoBin -c $NdoCfgFile
if [ -d $NdoLockDir ]; then
touch $NdoLockDir/$NdoLockFile;
fi
ps h -C ndo2db -o pid > $NdoRunFile
if [ $? -eq 0 ]; then
echo " done."
exit 0
else
echo " failed."
$0 stop
exit 1
fi
;;
stop)
echo -n "Stopping ndo: "
pid_ndo
killproc_ndo
# now we have to wait for ndo to exit and remove its
# own NdoRunFile, otherwise a following "start" could
# happen, and then the exiting ndo will remove the
# new NdoRunFile, allowing multiple ndo daemons
# to (sooner or later) run
#echo -n 'Waiting for ndo to exit .'
for i in 1 2 3 4 5 6 7 8 9 10 ; do
if status_ndo > /dev/null; then
echo -n '.'
sleep 1
else
break
fi
done
if status_ndo > /dev/null; then
echo 
echo 'Warning - ndo did not exit in a timely manner'
else
echo 'done.'
fi
rm -f $NdoRunFile $NdoLockDir/$NdoLockFile
;;
status)
pid_ndo
printstatus_ndo ndo
;;
restart)
$0 stop
$0 start
;;
*)
echo "Usage: ndo {start|stop|restart|status}"
exit 1
;;
esac

# End of this script

Faite CTRL + X puis entrée pour enregistrer les changements puis Y (ou O) pour valider.

Ajouter ensuite le daemon au démarrage:

sudo update-rc.d ndo2db defaults
sudo chmod +x /etc/init.d/ndo2db

Voilà le daemon ndo2db est maintenant près.


5] Installations de Centreon:

Placer vous dans le répertoire de téléchargement créé plus haut puis télécharger Centreon:

cd /home/nagios/download/
wget
http://download.centreon.com/centreon/centreon-2.1.3.tar.gz

Décompresser Centreon:

tar xvzf centreon-2.1.3.tar.gz
cd centreon-2.1.3/

Définissez un chemin pour les binaires de nagios, ndomod, etc…

export PATH="$PATH:/usr/local/nagios/bin/"

Puis lancer l’installation de Centreon:

sudo ./install.sh -i

Descendez tout en bas du contrat de licence puis accepté en cliquant "Y".

Répondez "Y" à toutes les questions posées lors du process d’installation :

Install Centreon

Et valider les chemins par défaut lors de l’installation.

Arriver au moment où il vous est proposé:

Where is your NDO ndomod binary ?
default to [/usr/sbin/ndomod.o]
>

Entrer le chemin du fichier que nous avons utilisé lors de l’installation NDO:

Where is your NDO ndomod binary ?
default to [/usr/sbin/ndomod.o]
> /usr/local/nagios/bin/ndomod.o

Path NDO

Puis continuer en acceptant les chemins par défaut et en mettant "Y" à chaques questions.

Lorsque l’installer vous demande de mettre à jour les librairies PEAR, taper "Y" et valider.
Ceci va lancer les mises à jour des modules pear:

PEAR Update

Continuer en validant les chemins par défaut et en mettant "Y" à chaques questions.

Voilà Centreon est installé. Il ne rester plus qu’à faire un reload du serveur apache.

sudo service apache2 reload

Centreon Fin

Nous allons maintenant finaliser l’installation de Centreon par le WEB ;o)

Ouvrer votre navigateur préférer et lancer l’url suivante: http://IP_DU_SERVEUR/centreon

Dans le tuto : http://192.168.17.129/centreon

Acceuil Centreon

Cliquer sur "start" :

Cochez accepter les termes puis next.

Laissez la configuration de l’environnement par défaut puis next.

Environnement config

Vérifier que tout est ok puis next:

Vérif conf PEAR PHP

Configuration de la base de données:
Les mots de passes suivant s’applique si vous avez suivi le tuto avec les mots de pass "nagios".

Root password for MySQL : nagios
Centreon database name : centreon
Centstorage database name : centstorage
NDO database name : centstatus
Database password : nagios
Confirm it : nagios
Database location : (ne rien mettre)
Centreon web interface location : (ne rien mettre)
MySQL client version : 4.1 - PASSWORD


Puis next

DB Conf

Vérifier que tout est ok puis next

DB Verif

Configuration de l’interface:

Administrator login for centreon : admin
Administrator password : geekhelpme
Confirm password : geekhelpme
First name : you
Last name : geek
Administrator email : Cette adresse email est protégée contre les robots des spammeurs, vous devez activer Javascript pour la voir.

Puis next

User interface

LDAP Authentification:

Enable LDAP Authentification : NO

Important mettez bien NO ici !!! Vous pourrez éventuellement le configurer ultérieurement.

LDAP

Vérifier ensuite que tout les fichiers de conf soit OK:

Centreon conf

Vérifier que la création de database est ok:

DB create

Et enfin accéder à centreon ;o)

Cliquer sur "Click here to complete your install"

End install

Afin de vérifier le compte créer lors du setup, logguer vous ;o)

Login : admin
Password : geekhelpme

Loggin Logged

Voilà nous allons passer aux configurations de bases post installation.

Installation des LOCALE.

Revenez donc sous le shell :

sudo apt-get install gettext

Vérifier tout d’abord les locale de votre système:

locale

Locale

Pour ma part je suis donc en "fr_FR.UTF-8"

Créer les répertoires des locales:

sudo mkdir /usr/local/centreon/www/locale/fr_FR.UTF-8/
sudo mkdir /usr/local/centreon/www/locale/fr_FR.UTF-8/LC_MESSAGES/

placer vous dans le répertoire de download et télécharger le language pack:

cd /home/nagios/download
wget http://download.centreon.com/index.php?id=119
Décompresser l’archive:

tar xvzf centreon-2.1-fr_FR-1.0.tgz
cd centreon-2.1-fr_FR-1.0/LC_MESSAGES/

[EDIT]
Si vous avez mis à jour ou installer la version 2.1.5 de Centreon, je vous recommande également de mettre à jour votre pack de langue avec le dernier pack FR qui corrige un problème d'encodage UTF8.

La manoeuvre reste presque identique:

cd /home/nagios/download
wget http://download.centreon.com/index.php?id=127

Décompresser l’archive:
tar xvzf centreon-2.1-fr_FR-1.1.tgz
cd centreon-2.1-fr_FR-1.1/LC_MESSAGES

Et voilà vous pouvez continuer ;o)
[FIN EDIT]

Copie du fichier de locale:

sudo cp messages.mo /usr/local/centreon/www/locale/fr_FR.UTF-8/LC_MESSAGES/messages.mo

Pour vérifier que la locale c’est bien installé, logguer vous sur centreon (http://IP_DU_SERVER/centreon) puis aller dans : Configuration -> Users , sélectionner votre utilisateur (admin) et vérifier que vous pouvez sélectionner fr_FR.UTF-8.

Locale

Ensuite reloader le server apache.

sudo service apache2 reload

Voilà centreon en fr ;o)

Donner ensuite les droits sur les répertoires nagios:

sudo chown -R nagios:nagios /usr/local/nagios
sudo chmod -R 775 /usr/local/nagios
sudo chown -R nagios:www-data /usr/local/nagios/etc
sudo chmod -R 775 /usr/local/nagios/etc
sudo chown -R nagios:www-data /usr/local/nagios/share
sudo chmod -R 775 /usr/local/nagios/share

Et centreon:

sudo chown -R nagios:nagios /usr/local/centreon
sudo chmod -R 775 /usr/local/centreon
sudo chown -R nagios:www-data /usr/local/centreon/cron
sudo chmod -R 775 /usr/local/centreon/cron
sudo chown -R nagios:www-data /usr/local/centreon/doc
sudo chmod -R 775 /usr/local/centreon/doc
sudo chown -R www-data:nagios /usr/local/centreon/log
sudo chmod -R 775 /usr/local/centreon/log
sudo chown -R www-data:www-data /usr/local/centreon/www
sudo chmod -R 775 /usr/local/centreon/www
sudo chown -R www-data:www-data /usr/local/centreon/GPL_LIB
sudo chmod -R 775 /usr/local/centreon/GPL_LIB

6] Installation NDO partie 2:

Nous allons maintenant finaliser la configuration NDO.

Création de la base de donnée ndo:

mysql -u root -pnagios
CREATE DATABASE `ndo` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
exit

Create NDO

mysql -u root -pnagios ndo < /home/nagios/download/centreon-2.1.3/www/install/createNDODB.sql

Puis donné les droits à l’utilisateur sur la base:

mysql -u root -pnagios
GRANT ALL PRIVILEGES ON `ndo` . * TO
'centreon'@'localhost' IDENTIFIED BY 'nagios';
flush privileges;
exit

Vérifier ensuite la présence du fichier ndo2db.cfg puis éditer le:

ls -l /usr/local/nagios/etc/
sudo pico /usr/local/nagios/etc/ndo2db.cfg

Puis éditer comme suis:

#####################################################################
# NDO2DB DAEMON CONFIG FILE
#
# Last Modified: 01-02-2009
#####################################################################

 

# LOCK FILE
# This is the lockfile that NDO2DB will use to store its PID number
# in when it is running in daemon mode.

lock_file=/usr/local/nagios/var/ndo2db.lock

 

# USER/GROUP PRIVILIGES
# These options determine the user/group that the daemon should run as.
# You can specify a number (uid/gid) or a name for either option.

ndo2db_user=nagios
ndo2db_group=nagios

 

# SOCKET TYPE
# This option determines what type of socket the daemon will create
# an accept connections from.
# Value:
#   unix = Unix domain socket (default)
#   tcp  = TCP socket

socket_type=unix
#socket_type=tcp

 

# SOCKET NAME
# This option determines the name and path of the UNIX domain
# socket that the daemon will create and accept connections from.
# This option is only valid if the socket type specified above
# is "unix".

socket_name=/usr/local/nagios/var/ndo.sock

 

# TCP PORT
# This option determines what port the daemon will listen for
# connections on.  This option is only vlaid if the socket type
# specified above is "tcp".

tcp_port=5668

 

# ENCRYPTION
# This option determines if the ndo2db daemon will accept SSL to encrypt the
# network traffic between module and ndo2db daemon.
# Both sides have to enable this feature which depends on SSL Libraries
# like openssl or kerberos
# This option is only valid if the output type
# option specified above is "tcpsocket".
#
# A value of '1' will enable this feature

use_ssl=0

 

# DATABASE SERVER TYPE
# This option determines what type of DB server the daemon should
# connect to.
# Values:
#       mysql = MySQL
#       pgsql = PostgreSQL

db_servertype=mysql

 

# DATABASE HOST
# This option specifies what host the DB server is running on.

db_host=localhost

 

# DATABASE PORT
# This option specifies the port that the DB server is running on.
# Values:
#       3306 = Default MySQL port
#       5432 = Default PostgreSQL port

db_port=3306

 

# DATABASE NAME
# This option specifies the name of the database that should be used.

db_name=nagios

 

# DATABASE TABLE PREFIX
# Determines the prefix (if any) that should be prepended to table names.
# If you modify the table prefix, you'll need to modify the SQL script for
# creating the database!

db_prefix=nagios_

 

# DATABASE USERNAME/PASSWORD
# This is the username/password that will be used to authenticate to the DB.
# The user needs at least SELECT, INSERT, UPDATE, and DELETE privileges on
# the database.

db_user=centreon
db_pass=nagios
db_name=ndo


## TABLE TRIMMING OPTIONS
# Several database tables containing Nagios event data can become quite large
# over time.  Most admins will want to trim these tables and keep only a
# certain amount of data in them.  The options below are used to specify the
# age (in MINUTES) that data should be allowd to remain in various tables
# before it is deleted.  Using a value of zero (0) for any value means that
# that particular table should NOT be automatically trimmed.

# Keep timed events for 24 hours
max_timedevents_age=1440

# Keep system commands for 1 week
max_systemcommands_age=10080

# Keep service checks for 1 week
max_servicechecks_age=10080

# Keep host checks for 1 week
max_hostchecks_age=10080

# Keep event handlers for 31 days
max_eventhandlers_age=44640

# Keep external commands for 31 days
max_externalcommands_age=44640

 


# DEBUG LEVEL
# This option determines how much (if any) debugging information will
# be written to the debug file.  OR values together to log multiple
# types of information.
# Values: -1 = Everything
#          0 = Nothing
#          1 = Process info
#          2 = SQL queries

debug_level=0

 

# DEBUG VERBOSITY
# This option determines how verbose the debug log out will be.
# Values: 0 = Brief output
#         1 = More detailed
#         2 = Very detailed

debug_verbosity=1

 

# DEBUG FILE
# This option determines where the daemon should write debugging information.

debug_file=/usr/local/nagios/var/ndo2db.debug

 

# MAX DEBUG FILE SIZE
# This option determines the maximum size (in bytes) of the debug file.  If
# the file grows larger than this size, it will be renamed with a .old
# extension.  If a file already exists with a .old extension it will
# automatically be deleted.  This helps ensure your disk space usage doesn't
# get out of control when debugging.

max_debug_file_size=1000000

Connecter vous ensuite sur centreon (http://IP_DU_SERVER/centreon)
Aller sur Configuration -> Nagios -> Nagios.cfg puis cliquer sur "Nagios CFG 1"

NDO Config

Ensuite vérifier sous l’onglet Données, les champs "Commande de lancement du module", "Option de lancement du module" et "Fichier de données de performance  de service" doivent etre configurer comme suis:

Commande de lancement du module :

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

Option de lancement du module :

-1

Fichier de données de performance de service :

/usr/local/nagios/var/service-perfdata

Puis cliquer sur "Sauvegarder"

Données


Ensuite sous Configuration -> Centreon -> ndo2db.cfg

NDO2db

Mettre dans "Nom de la socket" :

/usr/local/nagios/var/ndo.sock

Puis sous Configuration -> Centreon -> ndomod.cfg

ndomod

Compléter comme suis :

Type d’interface :
unixsocket

Status détailler :
/usr/local/nagios/var/ndo.sock

Fichier tampon :
/usr/local/nagios/var/ndomod.tmp

Puis sauvegarder (en haut a droite)

Tester maintenant de démarrer les services :

sudo service nagios start
sudo service ndo2db start

Aller ensuite sur Configuration -> Nagios

Cochez toute les options présentes puis exporter.

Export

Vérifier qu’il n’y ai pas d’erreur lors de l’export de la conf.

Export OK

Puis vérifier que le lien NDO s'établi correctement:

tail -f /usr/local/nagios/var/nagios.log | grep ndomod

Vous devriez avoir ceci:

[1261436831] ndomod: NDOMOD 1.4b9 (10-27-2009) Copyright (c) 2009 Nagios Core Development Team and Community Contributors
[1261436831] ndomod: Successfully connected to data sink.  0 queued items to flush.
[1261436831] Event broker module '/usr/local/nagios/bin/ndomod.o' initialized successfully.

Une foi que tout est ok, configurer les permissions cgi de Nagios.

Aller sur Configuration -> Nagios -> cgi

CGI

Editer CGI.cfg

Remplacer les users nagiosadmin par nagios

Puis remplacer dans "Méthode d'affichage par défaut de la carte des états" en" Circular (Marked Up)".

CGI conf

Puis sauvegarder.

Aller ensuite dans Configuration -> Nagios -> Ressources, puis éditer $USER2$ avec le nom de la communauté que vous avez paramétré sur vos hôtes.

SNMP

Configurer ensuite Centstorage :

Sous : Administration -> Options -> Centstorage
Editer comme le screenshot

centstorage

Puis aller sous Configuration -> Nagios

Cocher toutes les options, méthode " Redémarrer " puis exporter.

Voilà l’installation de base est à présent terminée.

Par défaut le serveur nagios est ajouter à Nagios/Centreon sous le nom centreon-server.

Nous allons maintenant configurer brièvement les services comme snmp par exemple.

Pour configurer snmp, éditer le fichier snmpd.conf :

sudo pico /etc/snmp/snmpd.conf

Localiser la ligne :

com2sec paranoid  default         public

Commenter la ligne avec # puis décommenter la ligne au dessous et éventuellement éditer la communauté :

#com2sec paranoid  default         public
com2sec readonly  default         geekhelpme
#com2sec readwrite default         private

Ensuite éditer le fichier snmpd

sudo pico /etc/init.d/snmpd

Trouver la ligne au début :

TRAPDRUN=no et TRAPDOPTS='-Lsd -p /var/run/snmptrapd.pid'

Puis modifier comme suis :

TRAPDRUN=yes
TRAPDOPTS='-On -LF d /usr/local/nagios/var/snmptrap.log -c /etc/snmp/snmptrapd.conf -p /var/run/snmpdtrapd.pid'

SNMPD

Editer ensuite le fichier /etc/default/snmpd

sudo pico /etc/default/snmpd

Configurer :

TRAPDRUN=yes
TRAPDOPTS='-On -LF d /usr/local/nagios/var/snmptrap.log -c /etc/snmp/snmptrapd.conf -p /var/run/snmpdtrapd.pid'

TRAPD

Puis CTRL + X, O (ou Y) puis entrer.

Enfin redémarrer le service snmpd:

sudo service snmpd restart

Vérifier la présence des 2 process snmp :
ps -aux | grep snmp

snmp     11540  0.1  0.4   9540  4160 ?        S    03:21   0:00 /usr/sbin/snmpd -Lsd -Lf /dev/null -u snmp -I -smux -p /var/run/snmpd.pid 127.0.0.1
root     11543  0.0  0.1   8796  1652 ?        Ss   03:21   0:00 /usr/sbin/snmptrapd -On -LF d /usr/local/nagios/var/snmptrap.log -c /etc/snmp/snmptrapd.conf -p /var/run/snmpdtrapd.pid
nagios   11576  0.0  0.0   3052   812 pts/0    S+   03:22   0:00 grep --color=auto snmp

Test manuel d’un plugin pour vérifier les droits:

La communauté SNMP ayant été modifier dans le tuto par le nom "geekhelpme" taper la ligne suivante (l'option -C correspond au nom de la communauté snmp):
NB: Si vous avez laisser la communauté par défaut qui est public, remplacer l'option "-C geekhelpme" par "-C public"

Aller dans /usr/local/nagios/libexec

./check_centreon_snmp_memory -H 127.0.0.1 -C geekhelpme -v 1 -w 80 -c 90

Et vous devriez avoir un retour du genre :

total memory used : 11%  ram used : 37%, swap used 0% | used=189804544o size=1643266048o

Si c’est le cas, les droits pour l’exécution des plugins avec le compte nagios sont ok


Ajouter un hôte sous centreon :

Aller sous Configuration -> Hôtes

Hotes

Vous retrouverez déjà ici le serveur local (Centreon-server ajouter lors de l’install)
Nous allons faire le test pour le même serveur.

Compléter les champs : Nom de l'hôte, alias, Adresse IP, nom de communauté SNMP et version.

Ensuite ajouter un modèle :

Cliquer sur le + devant Ajouter un modèle et choisissez generic-host puis cocher créer aussi les services lié:

Generic template

Dans notification ajouter les utilisateurs qui doivent recevoir les alertes et les heures ou le service doit etre checker (workour, 24/24, etc…)

Notification

Cliquer ensuite sur Relations puis ajouter l’hôte à un group d’hôtes (dans l’exemple Linux)

Relations

Sauvegarder puis allers sous : Configuration -> Nagios et cocher toute les cases puis exporter.

Vérifier qu’il n’y a pas d’erreur à l’export puis vérifier sur Nagios et Centreon que le nouvel hôte est bien la…

Nagios hote Hote centreon

Il est possible que vous ayez un bug d’affichage des hôtes sous centreon visiblement lié à la version de NDO.

Le problème est que les hôtes apparaissent correctement dans Nagios mais aucun n’apparait dans centreon !!!

Voici comment fixer le problème :

cd /home/nagios/download/
sudo apt-get install subversion
svn co
http://svn.centreon.com/trunk/Patch-NDOutils/
cd Patch-NDOutils/
./configure --prefix=/usr/local/nagios/ --enable-mysql --disable-pgsql --with-mysql-lib=/usr/lib/mysql
(vous pouvez avoir un problème de permissions non accordée pour le ./configure, si c’est le cas pas de souci un petit :sudo chmod 775 configure règlera votre problème)
make
sudo service nagios stop
sudo cp /home/nagios/download/Patch-NDOutils/src/ndomod-3x.o /usr/local/nagios/bin/ndomod.o
sudo cp /home/nagios/download/Patch-NDOutils/src/ndo2db* /usr/local/nagios/bin/
sudo service nagios start
sudo service ndo2db restart

Puis vérifié que vous avez bien quelque chose du genre :
tail -f /usr/local/nagios/var/nagios.log

[1261447270] ndomod: Successfully connected to data sink.  122 items lost, 5000 queued items to flush.
[1261447277] ndomod: Successfully flushed 5000 queued items to data sink.

Laisser nagios collecter les graph et admirer...

Hosts Graph Rapport

Vous pouvez maintenant commencer la configuration de vos hôtes et de vos plugins sérieusement.

[EDIT]
Après avoir appliqué le patch NDO, il est possible quela configuration du socket est changé en TCP.

Vérifiez sous : Configuration --> Centreon --> ndo2db.cfg --> Principal

Dans les champs:
Type de socket : Unix
Nom de la socket : /usr/local/nagios/var/ndo.sock

Et dans : Configuration --> Centreon --> ndomod.cfg --> Central-mod

Les champs:
Type d'interface : unixsocket
status détaillé : /usr/local/nagios/var/ndo.sock

Ensuite relancer les services centcore et centstorage

sudo service centcore restart
sudo service centstorage restart


Puis sous centreon, retournez dans : Configuration --> nagios

Cochez toutes les cases, méthode exporter puis redémarrer.

Et voilà ;o)

NOTE IMPORTANTE:

Entre la rédaction du tuto et la publication, une nouvelle version de Centreon est sortie la 2.1.4!!!

Voici les changements:

fix: extended information is loaded properly (for hosts and services)
fix: adds timestamp on host external commands
fix: remove special char in log output
fix: remove error when user create nagios.cfg file
fix: remove errors when laoding nagios.cfg file
enhancement: add auto deploy service attached to hosts templates on hosts when loading cfg files
fix: fix problem with str_replace and URL_notes and URL_actions #1288
fix: fix error with ACL and / and \
fix: problem to load LDAP contact
fix: nagiosPerfTrace => ssh port is now used
fix: problem with ACL in monitoring
enhancement : improve performance in treeview for graphs and logs
fix: enlarge all munti selet in configuration form
fix: improve ACL in monitoring
fix: security patch in ping tool (thanks J. Cayssol)
fix: security patch in traceroute tool (thanks J. Cayssol)
fix: security patch in ldap import (thanks J. Cayssol)

Suivez la procédure pour éfféctuer la mise à jour.

Loguer vous sur le shell via SSH ou sur la console avec le compte nagios.

Placer vous dans le répertoire download créé lors de la mise en place du tuto puis télécharger la dernière version.

cd /home/nagios/download
wget
http://download.centreon.com/index.php?id=4242

Update DL

Décompresser l’archive puis lancer le processus de mise à jour :

tar xvzf centreon-2.1.4.tar.gz
cd centreon-2.1.4/


Puis lancer le processus de mise à jour :

sudo bash install.sh -u "/etc/centreon"

Update

Comme lors de l’installation, répondez "Y" à toutes les questions et accepter les chemins par défaut.

Update


Voilà puis reloader le serveur apache.

sudo service apache2 reload

Update ok


Ensuite, ouvrez votre navigateur préférer et taper l’url d’accès à centreon (pour rappel dans le tuto http://192.168.17.129/centreon)

Vous arrivez donc à la mise à jour de la base de donnée et autre. Suivez donc les étapes.

1. Welcome to Centreon Upgrade Setup : cliquer sur " start "
2. Licence : cochez « I accept » puis cliquer sur next.
3. Verifying Configuration : Vérifier que tout est OK puis next.
4. Select Version : MySQL Scripts 2.1.3 to 2.1.4 puis next.

Update sql


5. Updating Centreon : Vérifier que tout est OK puis cliquer sur next.
6. Post-Installation : cliquer sur « Click here to complete install »

Vous arrivez maintenant sur la page de login.
Vérifier que la version est correct puis loguer vous ;o)

Update finish


Enjoy ^_^ Vous êtes maintenan à jour.

Sachez qu’il existe énormément de plugins sans compter ceux que vous pouvez développer vous même et que quasiment tout est customisable. Ce tuto est la pour la mise en place basique et je ferais surement une suite pour les configurations un peu plus approfondie ;o)

Plus d’info :

- Site web nagios
- Site Centreon
- Forum Centreon
- Wiki centreon

En espérant que ce tuto vous ai aidé ;o) N’hésitez pas a venir sur le forum si vous avez des questions ou des remarque à ajouter ;o)

Mise à jour le Mardi, 20 Avril 2010 15:54
 
web design - referencement