HOWTO Install Nagios3, Centreon 2.0 et NDOUtils sur Gentoo

Bien le bonjour à tous,
Voici un petit howto permettant d’installer Nagios 3, NDOUtils (sert à écrire les informations event + status récoltés par Nagios en base de données mysql) et Centreon.

Installation des pré-requis :

RRDTOOL (Utilisé pour créer les graphiques avec Centreon)
echo « net-analyzer/rrdtool rrdcgi perl » >> /etc/portage/package.use
emerge -av rrdtool

Net-SNMP
echo « net-analyzer/net-snmp diskio lm_sensors perl python ssl » >> /etc/portage/package.use
emerge -av net-snmp

lm_sensors ajoute de nouveau capteurs matériel.

Apache2
echo « www-servers/apache debug ldap threads » >> /etc/portage/package.use
emerge -av apache

PHP
echo « dev-lang/php mysqli kerberos ldap snmp posix gd truetype xml nls zip » >> /etc/portage/package.use
emerge -av php

MySQL
emerge -av mysql
emerge –config =dev-db/mysql-[version]

Paquets PEAR
echo « dev-php/PEAR-MDB2 mysql » >> /etc/portage/package.use
emerge -av PEAR-PEAR
emerge -av dev-php/PEAR-Auth_SASL
emerge -av dev-php/PEAR-Date
emerge -av dev-php/PEAR-DB
emerge -av dev-php/PEAR-DB_DataObject
emerge -av dev-php/PEAR-DB_DataObject_FormBuilder
emerge -av dev-php/PEAR-HTML_Common
emerge -av dev-php/PEAR-HTML_Common2 (si php5)
emerge -av dev-php/PEAR-HTML_QuickForm
emerge -av dev-php/PEAR-HTML_QuickForm_advmultiselect
emerge -av dev-php/PEAR-HTML_Table
emerge -av dev-php/PEAR-I18N
emerge -av dev-php/PEAR-Image_Canvas
emerge -av dev-php/PEAR-Image_Color
emerge -av dev-php/PEAR-Image_Color2 (si php5)
emerge -av dev-php/PEAR-Image_Graph
emerge -av dev-php/PEAR-Image_GraphViz
emerge -av dev-php/PEAR-Mail_Mime
emerge -av dev-php/PEAR-MDB2
emerge -av dev-php/PEAR-Net_Ping
emerge -av dev-php/PEAR-Net_Traceroute
emerge -av dev-php/PEAR-Numbers_Roman
emerge -av dev-php/PEAR-Validate

PEAR-XML-RPC n’est pas à installer car figure dans le paquet PEAR-PEAR

GD
echo « media-libs/gd jpeg png truetype »>> /etc/portage/package.use
emerge -av media-libs/gd

SUDO
emerge -av app-admin/sudo

Modules Perl
echo « dev-perl/GD jpeg png truetype »>> /etc/portage/package.use
emerge -av Config-IniFiles
emerge -av Crypt-DES
emerge -av Digest-HMAC
emerge -av Digest-SHA1
emerge -av GD
emerge -av IO-Socket-INET6
emerge -av Socket6

Pour l’internationnalisation, il faut installer :
emerge -av gettext

Si vous souhaitez faire de la gestion de Traps SNMP, il faut installer snmptt
echo « net-analyzer/snmptt mysql » >> /etc/portage/package.use
emerge -av net-analyzer/snmptt

Voici un lien qui explique comment les mettre en place :
Gestion des Traps SNMP

Installation de Nagios :

Voici une brève explication du fonctionnement de nagios
Serveur Nagios -> Client passif
Les commandes de vérification partent du serveur nagios vers les clients passifs, exemples; ping, ssh, telnet portX etc ….
Serveur Nagios -> Client actif (NRPE)
Les commandes de vérification sont toujours à l’initiative du serveur nagios vers les clients, mais cette fois-ci il y a exécution d’un script sur le client. Ce procédé implique l’utilisation de nrpe (nagios remote process execution). exemples; check_disk, check_users, check_load etc … .
Client NCSA -> Serveur Nagios
Ici l’exécution est à l’initiative du client vers le serveur nagios. On parle alors de ncsa (nagios client …) . Cette méthode est utilisée pour des opérations de vérification relativement lourdes -> check_updates par exemple
Voici un petit schéma explicant le fonctionnement de nagios et de ses agents (nrpe + ncsa)

agent-nagios1

Préparation de nagios-plugins :

echo « net-analyzer/nagios-plugins ssl mysql snmp nagios-dns nagios-ntp nagios-ping nagios-ssh »>> /etc/portage/package.use

Explication des flags USE possible pour nagios-plugins :
ssl : Ajoute le support pour les connections SSL
samba : Ajoute le support pour SAMBA (Partage Windows et partage d’imprimante)
mysql : Ajoute le support pour les bases de données mysql
postgres : Ajoute le support pour les bases de données postgresql
ldap : Ajoute le support pour le LDAP (Lightweight Directory Access Protocol)
snmp : Ajoute le support pour le SNMP (Simple Network Management Protocol) si il est accessible
nagios-dns : Installe les dépendances pour le monitoring DNS
nagios-ntp : Installe les dépendances pour le monitoring NTP
nagios-ping : Installe les dépendances pour le monitoring PING
nagios-ssh : Installe les dépendances pour le monitoring SSH
nagios-game : Installe les dépendances pour le monitoring games-util/qstat
ups : Installe les dépendances pour le monitoring de Network-UPS (sys-power/nut)
ipv6 : Ajoute le support pour IPv6
radius : Ajoute le support pour l’authentification RADIUS

Notez que nagios-ping va rajouter le paquet : net-analyzer/fping

emerge -av net-analyzer/nagios-plugins

Préparation de nagios-core :

echo « net-analyzer/nagios-core apache2 web perl vim-syntax » >> /etc/portage/package.use
Explication des flags USE possible pour nagios-core :
apache2 : Ajoute le support d’Apache2
perl : Ajoute le support de perl
vim-syntax : Ajoute les informations nagios dans la syntaxe vim (permet la colorisation syntaxique)

Notez que vim-syntax va rajouter plusieurs paquets. (app-vim/nagios-syntax)

emerge -av net-analyzer/nagios-core

Installation de nagios :

emerge -av net-analyzer/nagios

These are the packages that would be merged, in order:

Calculating dependencies… done!
[ebuild N ] net-analyzer/nagios-imagepack-1.0-r100 1,628 kB [0]
[ebuild N ] net-analyzer/fping-2.4_beta2-r2 60 kB [0]
[ebuild N ] dev-perl/Net-SNMP-5.2.0 82 kB [0]
[ebuild N ] app-vim/nagios-syntax-20050105 2 kB [0]
[ebuild N ] net-analyzer/nagios-core-3.0.6 USE= »apache2 perl vim-syntax web -debug -lighttpd » 2,672 kB [0]
[ebuild U ] net-analyzer/nagios-plugins-1.4.13-r1 [1.4.10-r1] USE= »ipv6 ldap mysql* nagios-dns* nagios-ntp* nagios-ping* nagios-ssh* snmp* ssl -nagios-game -postgres* -radius -samba -ups » 2,227 kB [?=>0]
[ebuild N ] net-analyzer/nagios-3.0.6 0 kB [0]

Total: 7 packages (1 upgrade, 6 new), Size of downloads: 6,668 kB
Portage tree and overlays:
[0] /usr/portage
[?] indicates that the source repository could not be determined

Would you like to merge these packages? [Yes/No] Yes

Nagios est désormais installé.

Un fichier a été créé /etc/apache2/modules.d/99_nagios3.conf
Pour activer Nagios dans Apache il faut modifier le fichier /etc/conf.d/apache2

Vous pouvez accéder à l’interface web de nagios via cette adresse : http://localhost/nagios/

Nagios impose une authentification pour avoir accès aux différents cgi dont son interface web se sert. Nous devons donc mettre en place cette authentification. Il s’agit dans un premier temps d’éditer le fichier /etc/nagios/cgi.cfg puis de créer un fichier .htaccess autorisant un utilisateur.
Valider que dans le fichier cgi.cfg que vous avez les informations ci-dessous :(c’est le cas dans la conf de gentoo, mais on ne sait jamais)
authorized_for_system_information=nagiosadmin
authorized_for_configuration_information=nagiosadmin
authorized_for_system_commands=nagiosadmin
authorized_for_all_services=nagiosadmin
authorized_for_all_hosts=nagiosadmin
authorized_for_all_service_commands=nagiosadmin
authorized_for_all_host_commands=nagiosadmin

Puis créer un fichier .htaccess avec ces informations :
AuthName « Nagios Access »
AuthType Basic
AuthUserFile /etc/nagios/auth.users
Require valid-user

Placer ce fichier dans les répertoires /usr/share/nagios/htdocs et /usr/lib/nagios/cgi-bin
Puis lancer cette commande pour créer le fichier htpasswd2
htpasswd2 -c /etc/nagios/auth.users nagiosadmin

Si vous ne faites pas cela vous aurez ce message d’erreur pour consulter les services dans nagios :
It appears as though you do not have permission information for any of the services you requested…

Installation de NRPE (Nagios Remote Plugin Executor) :

NRPE est le plugin qui permet de superviser vos serveurs GNU/Linux, BSD ou Mac OS X sous Nagios

echo « net-analyzer/nagios-nrpe ssl command-args » >> /etc/portage/package.use

Explication des flags USE possible pour nagios-plugins :
ssl : Ajoute le support pour les connections SSL
command-args : Permet au client de spécifier des arguments auxx commandes

emerge -av net-analyzer/nagios-nrpe

Schema précisant le fonctionnement de NRPE :

nrpe

Installation de NSCA (Nagios Service Check Acceptor) :

emerge -av net-analyzer/nagios-nsca

Schema précisant le fonctionnement de NSCA :

nsca

Installation de NDOUtils (Nagios Data Output Utils)
NDOUtils permet de stocker les status et les évenements de nagios dans une base de données MySQL permettant l’utilisation de ces données par Centreon.

emerge -av net-analyzer/ndoutils

Schema précisant le fonctionnement de NDOUtils :

ndoutils

Faire un lien symbolique, car dans le questionnaire suivant il demande où sont situé les plugins :
ln -s /usr/lib/nagios/plugins/* /usr/nagios/libexec/.

Maintenant que Nagios est installé, nous allons passer à l’installation de Centreon.

Fonctionnement de Centreon :

Tout d’abord, voici un petit schéma récupéré sur le site de centreon expliquant le fonctionnement de Centreon 2 et son système de collecte des données.

Système de collecte des données de Centreon 2.0 :

centreon_data_gathering

Les pollers Nagios insère via le composant NDOUtils les données récoltées en base de données Mysql.
ODS pour OpenData Storage, est utilisé pour les graphes RRD.
Ensuite Centreon récupère les informations Mysql et RRD pour son interface utilisateur.

Passons aux choses sérieures…

Installation Centreon :
Télécharger la dernière version de Centreon 2.0, sur le site de centreon
La version 2.0 en version finale est sortie le 16 décembre 😉 Quel beau cadeau de noël 😉

Pour installer Centreon :
Copier l’archive téléchargé dans /usr/src
Décompactez là, vous allez avoir un répertoire /usr/src/centreon-2.0
Ensuite vous avez plusieurs possibilité d’installation :
L’installation standard
Soit l’installation via un template propre à votre distribution que vous pourrez trouver dans :
/usr/src/centreon-2.0/tmpl/vardistrib/
Mais ce dernier point ne nous intéresse pas car il n’y a pas de template pour la gentoo pour l’instant.
Nous allons nous mettre dans le répertoire /usr/src/centreon-2.0
Puis lancer :
./install.sh -i -v
Le -v pour verbose
Voici ce que vous obtenez :
#####################################################################
# #
# Centreon (www.centreon.com) #
# Thanks for using Centreon #
# #
# v2.0 #
# #
# infos@oreon-project.org #
# #
# Make sure you have installed and configured #
# sudo – sed – php – apache – rrdtool – mysql #
# #
#####################################################################
————————————————————————
Checking all needed binaries
————————————————————————
rm OK
cp OK
mv OK
/bin/chmod OK
/bin/chown OK
echo OK
more OK
mkdir OK
find OK
/bin/grep OK
/bin/cat OK
/usr/bin/sed OK

You will now read Centreon Licence.
Press enter to continue.

Bien sur vous devez accepter la licence GPL 😉

Do you accept GPL license ?
[y/n], default to [n]:
> y

————————————————————————
Please choose what you want to install
————————————————————————

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

————————————————————————
Start CentWeb Installation
————————————————————————

Where is your Centreon directory?
default to [/usr/local/centreon]
> Appuyer sur Entrée pour valider

Do you want me to create this directory ? [/usr/local/centreon]
[y/n], default to [n]:
> y
Path /usr/local/centreon OK

Where is your Centreon log directory
default to [/usr/local/centreon/log]
> /var/log/centreon (Libre à vous de choisir où vous souhaitez inscrire les logs)

Do you want me to create this directory ? [/var/log/centreon]
[y/n], default to [n]:
> y
Path /var/log/centreon OK

Where is your Centreon etc directory
default to [/etc/centreon]
>

Do you want me to create this directory ? [/etc/centreon]
[y/n], default to [n]:
> y
Path /etc/centreon OK

Where is your Centreon generation_files directory?
default to [/usr/local/centreon]
>
Path /usr/local/centreon OK

Where is the RRD perl module installed [RRDs.pm]
default to [/usr/lib/perl5/RRDs.pm]
> /usr/lib/perl5/site_perl/5.8.8/i686-linux/RRDs.pm

Path /usr/lib/perl5/site_perl/5.8.8/i686-linux OK
/usr/bin/rrdtool OK
/bin/mail OK

Where is PEAR [PEAR.php]
default to [/usr/share/php/PEAR.php]
> Appuyer sur Entrée pour valider
Path /usr/share/php OK

Where is installed Nagios ?
default to [/usr/local/nagios]
> /usr/nagios

Where is your nagios config directory
default to [/usr/local/nagios/etc]
> /etc/nagios
Path /etc/nagios OK

Where is your Nagios var directory ?
default to [/usr/local/nagios/var]/etc/init.d/apache2 reload

> /var/nagios
Path /var/nagios OK

Where is your Nagios plugins (libexec) directory ?
default to [/usr/local/nagios/libexec]
> /usr/nagios/libexec
Path /usr/nagios/libexec OK
/usr/sbin/nagios OK

Where is your Nagios image directory ?
default to [/usr/local/nagios/share/images/logos]
> /usr/share/nagios/htdocs/images/logos
Path /usr/share/nagios/htdocs/images/logos OK
/usr/sbin/nagiostats OK
p1_file : /usr/sbin/p1.pl OK

Where is your cron.d directory ?
default to [/etc/cron.d]
> /etc/cron.hourly
Path /etc/cron.hourly OK
/usr/bin/php OK
/usr/bin/perl OK

Where is your CentPlugins Traps binary
default to [/usr/local/centreon/bin]
> Appuyer sur Entrée pour valider

Do you want me to create this directory ? [/usr/local/centreon/bin]
[y/n], default to [n]:
> y
Path /usr/local/centreon/bin OK
Finding Apache group : apache
Finding Apache user : apache
Finding Nagios user : nagios
Finding Nagios group : nagios

Where is your NDO ndomod binary ?
default to [/usr/sbin/ndomod.o]
> /usr/bin/ndomod-3x.o
/usr/bin/ndomod-3x.o OK
————————————————————————
Configure Sudo
————————————————————————

Where is sudo configuration file
default to [/etc/sudoers]
> Appuyer sur Entrée pour valider
/etc/sudoers OK
Nagios init script OK
Your sudo is not configured

Do you want me to configure your sudo ? (WARNING)
[y/n], default to [n]:
> y
Configuring Sudo OK
————————————————————————
Configure Apache server
————————————————————————

Finding Apache Centreon configuration file
‘/etc/apache2/conf.d/centreon.conf’ : OK

Do you want to update Centreon Apache sub configuration file ?
[y/n], default to [n]:
> y
Create ‘/etc/apache2/conf.d/centreon.conf’ OK
Configuring Apache OK

Do you want to reload your Apache ?
[y/n], default to [n]:
> y

Reloading Apache service OK
Preparing Centreon temporary files)
Change right on /var/log/centreon OK
Change right on /etc/centreon OK
Change right on /usr/share/nagios/htdocs/images/logos OK
Install nagios documentation OK
In process
Change macros for insertBaseConf.sql OK
Change macros for php files
Change macros for php files OK
Change right on /etc/nagios OK
Copy CentWeb in system directory
Install CentWeb (web front of centreon) OK
Install libraries OK
Change macros for centreon.cron OK
Install Centreon cron.d file OK
Change macros for archiveDayLog OK
Change macros for centAcl.php OK
Install cron directory OK
Pear Modules
Check PEAR modules
PEAR 1.5.0 NOK
DB 1.7.6 NOK
DB_DataObject 1.8.4 NOK
DB_DataObject_FormBuilder 1.0.0RC4 NOK
MDB2 2.0.0 NOK
Date 1.4.6 NOK
HTML_Common 1.2.2 NOK
HTML_QuickForm 3.2.5 NOK
HTML_QuickForm_advmultiselect 1.1.0 NOK
HTML_Table 1.6.1 NOK
Archive_Tar 1.1 NOK
Auth_SASL 1.0.1 NOK
Console_Getopt 1.2 NOK
Image_GraphViz 1.1.0 NOK
Net_SMTP 1.2.8 NOK
Net_Socket 1.0.1 NOK
Net_Traceroute 0.21 NOK
Net_Ping 2.4.1 NOK
Validate 0.6.2 NOK
XML_RPC 1.4.5 NOK
SOAP 0.10.1 NOK
Log 1.9.11 1.9.9 NOK

Do you want me to install/upgrade your PEAR modules
[y/n], default to [y]:
> y
Upgrading PEAR modules
Log 1.9.11 1.9.9 1.1OK3
Installing PEAR modules
PEAR 1.5.0 1.7.2 OK
DB 1.7.6 1.7.13 OK
DB_DataObject 1.8.4 1.8.8 OK
DB_DataObject_FormBuilder 1.0.0RC4 1.0.0RC7 OK
MDB2 2.0.0 2.4.1 OK
HTML_QuickForm_advmultiselect 1.1.0 1.4.1 OK
HTML_Table 1.6.1 1.8.2 OK
Auth_SASL 1.0.1 1.0.2 OK
Image_GraphViz 1.1.0 1.2.1 OK
Net_SMTP 1.2.8 1.3.1 OK
Net_Traceroute 0.21 0.21.1 OK
Net_Ping 2.4.1 2.4.3 OK
Validate 0.6.2 0.8.1 OK
XML_RPC 1.4.5 1.5.1 OK
SOAP 0.10.1 0.12.0 OK
Check PEAR modules
PEAR 1.5.0 1.7.2 OK
DB 1.7.6 1.7.13 OK
DB_DataObject 1.8.4 1.8.8 OK
DB_DataObject_FormBuilder 1.0.0RC4 1.0.0RC7 OK
MDB2 2.0.0 2.4.1 OK
Date 1.4.6 1.4.7 OK
HTML_Common 1.2.2 1.2.4 OK
HTML_QuickForm 3.2.5 3.2.10 OK
HTML_QuickForm_advmultiselect 1.1.0 1.4.1 OK
HTML_Table 1.6.1 1.8.2 OK
Archive_Tar 1.1 1.3.2 OK
Auth_SASL 1.0.1 1.0.2 OK
Console_Getopt 1.2 1.2.3 OK
Image_GraphViz 1.1.0 1.2.1 OK
Net_SMTP 1.2.8 1.3.1 OK
Net_Socket 1.0.1 1.0.9 OK
Net_Traceroute 0.21 0.21.1 OK
Net_Ping 2.4.1 2.4.3 OK
Validate 0.6.2 0.8.1 OK
XML_RPC 1.4.5 1.5.1 OK
SOAP 0.10.1 0.12.0 OK
Log 1.9.11 1.11.3 OK
All PEAR modules OK
————————————————————————
Centreon Post Install
————————————————————————

Create /usr/local/centreon/www/install/install.conf.php OK
Create /etc/centreon/instCentWeb.conf OK
————————————————————————
Start CentStorage Installation
————————————————————————

Where is your Centreon Run Dir directory?
default to [/var/run/centreon]
> Appuyer sur Entrée pour valider

Do you want me to create this directory ? [/var/run/centreon]
[y/n], default to [n]:
> y
Path /var/run/centreon OK

Where is your Centreon variable library directory?
default to [/var/lib/centreon]
> Appuyer sur Entrée pour valider

Do you want me to create this directory ? [/var/lib/centreon]
[y/n], default to [n]:
> y
Path /var/lib/centreon OK

Where is your CentStorage binary directory
default to [/usr/local/centreon/bin]
> Appuyer sur Entrée pour valider
Path /usr/local/centreon/bin OK

Where is your CentStorage RRD directory
default to [/var/lib/centreon]
> y
You select slash…

Where is your CentStorage RRD directory
default to [/var/lib/centreon]
> Appuyer sur Entrée pour valider
Path /var/lib/centreon OK
Finding Nagios group : nagios
Finding Nagios user : nagios
Preparing Centreon temporary files)
/tmp/centreon-setup exists, it will be moved…
install www/install/createTablesCentstorage.sql OK
Creating Centreon Directory ‘/var/lib/centreon/status’ OK
Creating Centreon Directory ‘/var/lib/centreon/metrics’ OK
Change macros for centstorage binary OK
Install CentStorage binary OK
Install library for centstorage OK
Change right : /var/run/centreon OK
Change macros for centstorage init script OK

Do you want me to install CentStorage init script ?
[y/n], default to [n]:
> y
CentStorage init script installed OK

Do you want me to install CentStorage run level ?
[y/n], default to [n]:
> Appuyer sur Entrée pour valider (On le fera après via rc-update)
CentStorage run level not installed PASSED
Change macros for logAnalyser OK
Install logAnalyser OK
Change macros for nagiosPerfTrace OK
Install nagiosPerfTrace OK
Change macros for centstorage.cron OK
Install CentStorage cron OK
Create /etc/centreon/instCentStorage.conf OK
————————————————————————
Start CentCore Installation
————————————————————————

Where is your CentCore binary directory
default to [/usr/local/centreon/bin]
>
Path /usr/local/centreon/bin OK
/usr/bin/ssh OK
/usr/bin/scp OK
Finding Nagios group : nagios
Finding Nagios user : nagios
Preparing Centreon temporary files)
/tmp/centreon-setup exists, it will be moved…
Change CentCore Macro OK
Copy CentCore in binary directory OK
Change right : /var/run/centreon OK
Change right : /var/lib/centreon OK
Replace CentCore init script Macro OK

Do you want me to install CentCore init script ?
[y/n], default to [n]:
> y
CentCore init script installed OK

Do you want me to install CentCore run level ?
[y/n], default to [n]:
>
CentCore run level not installed PASSED
Create /etc/centreon/instCentCore.conf OK
————————————————————————
Start CentPlugins Installation
————————————————————————

Where is your CentPlugins lib directory
default to [/var/lib/centreon/centplugins]
>

Do you want me to create this directory ? [/var/lib/centreon/centplugins]
[y/n], default to [n]:
> y
Path /var/lib/centreon/centplugins OK
Finding Nagios user : nagios
Finding Nagios group : nagios
Preparing Centreon temporary files)
/tmp/centreon-setup exists, it will be moved…
Change macros for CentPlugins OK
Installing the plugins OK
Change right on centreon.conf OK
CentPlugins is installed
————————————————————————
Start CentPlugins Traps Installation
————————————————————————
Where is your SNMP configuration directory
default to [/etc/snmp]
>
/etc/snmp OK

Where is your SNMPTT binaries directory
default to [/usr/local/centreon/bin/]
>
/usr/local/centreon/bin/ OK
Finding Nagios group : nagios
Finding Apache user : apache
Preparing Centreon temporary files)
/tmp/centreon-setup exists, it will be moved…
Change macros for CentPluginsTraps OK
Installing the plugins Trap binaries OK
Backup all your snmp files OK
Change macros for snmptrapd.conf OK
Change macros for snmptt.ini OK
Install : snmptrapd.conf OK
Install : snmp.conf OK
Install : snmptt.ini OK
Install : snmptt OK
Install : snmpttconvertmib OK
Create /etc/centreon/instCentPlugins.conf OK
######################################################################
# #
# Go to the URL : http://your-server/centreon/ #
# to finish the setup #
# #
# Report bugs at http://trac.centreon.com #
# #
# Thanks for using Centreon. #
# ———————– #
# Contact : infos@centreon.com #
# http://www.centreon.com #
# #
######################################################################

Voilà, les fichiers de Centreon sont installés.

Intégrer tous les services pour les prochains démarrage :
rc-update add apache2 default && /etc/init.d/apache2 start
rc-update add mysql default && /etc/init.d/mysql start
rc-update add nagios default && /etc/init.d/nagios start
rc-update add nrpe default && /etc/init.d/nrpe start
rc-update add nsca default && /etc/init.d/nsca start
rc-update add ndo2db default && /etc/init.d/ndo2db start
rc-update add centcore default && /etc/init.d/centcore start
rc-update add centstorage default && /etc/init.d/centcore start

Nous allons désormais sur l’interface web centreon :
Lancer cette commande :
chown -R nagios:apache /etc/nagios

Puis :
Etape 1 – Welcome :

welcome

Etape 2 – Licence :

licence

Etape 3 – Configuration :

configuration

Etape 4 – Vérification de la configuration :

verifying-configuration-ok

Etape 5 – Vérification de PEAR :

verifying-pear

Etape 6 – Configuration des bases de données :

database-configuration

Etape 7 – Database Verification :

verifying-database

Etape 8 – User Interface Configuration :

user-configuration

Etape 9 – LDAP Authentification :

ldap-authentification

Etape 10 – Centreon Configuration Files :

centreon-config-file

Etape 11 – Creating Database :

creating-database

Etape 12 – Post-Installation :

end-installation

Vous aurez une erreur NDO2DB ( Connection Error to NDO DataBase ! )
C’est normal car la base de données NDO permettant à Nagios de stocker ses statuts et événements en base de données n’a pas été créée.

Création de la base de données NDO :
Nous allons installer la base de données MySQL NDO. En plus du script de création de base de données NDO 1.4-b7, il y a la table « centreon_acl ». Veuillez exécuter ces commandes :
# mysql -u root -p
mysql> CREATE DATABASE `ndo` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
mysql> exit
# mysql -u root -p ndo < /usr/src/centreon-2.0/www/install/createNDODB.sql
# mysql -u root -p
mysql> GRANT SELECT , INSERT , UPDATE , DELETE ON `ndo` . * TO ‘centreon’@’localhost’;
mysql> exit

Paramétrer le mot de passe de l’utilisateur mysql ‘centreon’ pour se connecter à la base de données (DBNDOConnect.php)

# mysql -u root -p
mysql> use centreon;
mysql> update cfg_ndo2db set db_user = ‘centreon’;
mysql> update cfg_ndo2db set db_pass = ‘XXXXXXXX’;
mysql> exit;

Mise à jour des fichiers de configuration de NDO2DB :
Avec l’installation de NDOUtils sous linux, les fichiers de configuration se trouvent dans /etc/nagios/ndo2db.cfg
Par défaut ce fichier est paramétré pour fonctionner avec des sockets unix, hors centreon fonctionne en tcp, nous allons donc modifier ce fichier:

vi /etc/nagios/ndo2db.cfg
# SOCKET TYPE
socket_type=tcp
# DATABASE USERNAME/PASSWORD
db_user=centreon
db_pass= db_name=ndo

Il faut également modifier le fichier ndomod.cfg
output_type=tcpsocket
output=127.0.0.1 (Très important, ne pas mettre le fichier .sock étant donné que c’est un socket tcp)
buffer_file=/var/nagios/ndomod.tmp (N’a rien à voir avec les paramètres de bdd, mais c’est à changer quand même)

Pour voir la connection Nagios-NDO fonctionne bien, vous pouvez lancer cette commande :
tail -f /var/nagios/nagios.log | grep ndomod
Et vous devez obtenir :
ndomod: Successfully connected to data sink

Et voilà 🙂 Vous avez normalement, un Nagios intégrant ces données dans NDO permettant à Centreon de les lire 😉
N’hésitez pas à me faire des retours si besoin 🙂

Pour mettre Centreon en Français :
Je vous conseille de consulter l’article sur le wiki
Les seuls spécificités pour gentoo sont dans les commandes d’installation :
emerge -av gettext
emerge -av dev-perl/Locale-gettext
Et le chown n’est pas à faire avec l’utilisateur « www-data », mais « apache »

Site Officiel de Centreon

J’ai utilisé ces sources pour réaliser ce howto :
Wiki Centreon
Da Gentoo-wiki (Le lien est out, je me suis servi du cache de google
Le Blog de Nicolargo Certes il est pour Ubuntu, mais assez complet 😉

Author: Pierre-Yves Dubreucq

Passioné par les logiciels libres depuis 2001, je suis responsable d'Odiso (hébergeur web spécialiste des infrastructures haute disponibilité e-commerce et en gestion de pics de trafic & webperf) je tiens ce blog depuis 9 ans avec beaucoup moins d'assiduité malheureusement qu'à ses débuts, car j'écris aussi sur MonSiteEstLent.com blog d'Odiso dédié à la webperf

Share This Post On

14 Comments

  1. Très bon, je ne connaissais pas 😀

    Post a Reply
  2. Bonjour,
    Merci beaucoup pour ce tuto. En revanche j’ai toujours un souci, à savoir, ce message d’erreur:

    DB Error : SELECT count(nagios_hoststatus.current_state) , nagios_hoststatus.current_state FROM nagios_hoststatus, nagios_objects WHERE nagios_objects.object_id = nagios_hoststatus.host_object_id AND nagios_objects.is_active = 1 AND nagios_objects.name1 NOT LIKE ‘Meta_Module’ AND nagios_objects.name1 NOT LIKE ‘qos_Module’ GROUP BY nagios_hoststatus.current_state ORDER by nagios_hoststatus.current_state [nativecode=1146 ** Table ‘centreon.nagios_hoststatus’ doesn’t exist]

    Fatal error: Call to undefined method DB_Error::fetchRow() in /usr/local/centreon/www/include/home/tacticalOverview/tacticalOverview.php on line 119

    Précédemment mon message d’erreur était : Connexion error to NDO DataBase!

    J’ai bien suivi le tuto pour résoudre cela, ce qui ma donné le message que j’ai mis au début de mon commentaire.
    Pouvez-vous m’aider s’il vous plait ? Je suis un peu perdu là.

    Merci d’avance.
    JM

    Post a Reply
  3. Bonjour,
    Pourrais-tu me dire comment tu obtiens ce message d’erreur ?
    J’ai regardé dans ma base et je n’ai pas non plus la table :
    centreon.nagios_hoststatus
    Par contre j’ai bien la table ndo.nagios_hoststatus
    N’y aurait-il pas un pb de configuration et de confusion entre ta base liée à centreon et la base propre à ndoutils qu’attaque centreon et nagios ?

    Post a Reply
  4. Dans centreon, dans la partie configuration, tu vas sur l’onglet centreon, puis ndo2db.cfg et là tu vas dans l’onglet base de données, et tu vas retrouver ta configuration de la base de données ndo, pour ma part c’est la base de données ndo et à mon avis toi tu as du mettre la base de données centreon à la place.
    Dans mon howto, au niveau de « Création de la base de données NDO » j’ai mis le nom de bdd comme étant ndo, il faut que tu mettes le nom de la base de données que tu as créé à cette endroit.
    Peux-tu nous faire un retour si c’est bien cela ?
    Merci d’avance et bonne install et désolé pour le temps de réponse.

    Post a Reply
  5. Bonjour a tous ,
    J’ai eu le même pb que celui énoncé par JM le 14 Janvier.
    J’ai pu résoudre ce Pb dans un premier temps par une réinstallation de Mysql , puis recréation de ma base ndo ( de nombreux liens peuvent être trouvé et l’explique bien).
    Entre temps ndo c’est vidée !!!!!
    Recréation et relance de mes services .

    Gti57
    Maintenant tout est bon.
    L’erreur a été trouvé grâce a un collègue qui ma conseillé d’installer phpmyadmin , ce qui ma permis tout de suite de voir que ndo était vide ;).

    Bonne chance en espérant que cela pourra vous aider

    Post a Reply
  6. Bonjour,

    Savez-vous pourquoi il faut choisir d’installer/upgrader les modules PEAR alors qu’on les a déjà installé avec emerge ?

    Merci d’avance.

    Post a Reply
  7. Bien le bonjour,
    Non je ne sais pas malheureusement…
    Peut-être que Pear dans les dépots Gentoo ne serait pas assez récent, ou alors il souhaite absolument la dernière version…
    Alors alors emerge installe les paquets Pear à un autre endroit que celui recherché…
    Si tu trouves pourquoi je suis prenneur… 😉
    Bonne journée

    Post a Reply
  8. Heula, merci buzz l’éclair, j’ai utilisée ton tuto sans m’apercevoir que j’étais sur ton blog, parfais en tout cas. comment va ? toujours pas de vacances dans les îles prévus ?

    Post a Reply
  9. Yeah Mr Renard
    Très bon, tout va bien de notre côté 🙂
    Nope pas de vacances de prévues malheureusement…
    Et vous comment va ?

    Post a Reply
  10. Voilà un retour rapide:

    ___________________________
    Que penses-tu de rajouter le useflag apache2 dans
    # echo « dev-lang/php apache2 mysqli kerberos ldap snmp posix gd truetype xml nls zip >> /etc/portage/package.use
    ___________________________
    Je crois qu’il y a une petite coquille ici:
    rc-update add centstorage default && /etc/init.d/centstorage start
    ___________________________
    Pour ceux qui n’ont pas configuré leur MySQL: /usr/bin/mysql_install_db
    et suivre les consignes
    ___________________________
    Enfin côté config. automatique de Apache, c’est pas encore çà
    mv /etc/apache2/conf.d/centreon.conf /etc/apache2/vhosts.d/
    et penser à ajouter  » -D PHP5″ dans les options d’apache:
    vi /etc/conf.d/apache2
    APACHE2_OPTS= »-D DEFAULT_VHOST -D INFO -D SSL -D SSL_DEFAULT_VHOST -D LANGUAGE -D PHP5″
    ___________________________

    Très bon howto, merci à toi !

    Post a Reply
  11. Ha oui j’oubliais, il faut aussi ajouter le useflag xmlwriter à dev-lang/php.

    dev-lang/php apache2 mysql mysqli kerberos ldap snmp posix gd truetype xml xmlwriter nls zip

    Post a Reply
  12. Bonjour, Je cherche à installer nagios sur gentoo et centeron et j’ai trouvé votre truc, mais je vois que ce n’est plus à jour, vous avez la mise à jour pour cela? merci beaucoup Utilisé traducteur google pour écrire ces lignes.Deshacer cambios

    Cordiale Saudos.

    =======================

    Hola, estoy buscando como instalar nagios y centeron en gentoo y encontre tu material, pero veo que esta desactualizado, tienes la actualizacion de este?

    Saudos cordiales.

    Traductor de google usado para escribir estas lineas.

    Post a Reply

Submit a Comment

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

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