Nagios, autrefois appelé Netsaint, est l'ordonnanceur le plus répandu dans la supervision du monde libre. Mais il existe, depuis quelque temps, d'autres alternatives comme Inciga, Shinken et bien sûr Centreon-Engine.
Le but de cet article est de vous présenter une installation complète de Nagios avec son broker associé NDOutils et l’interface Centreon.
L'installation s'effectuera de préférence sur une machine virtuelle Debian 7 avec compilation des sources. Le dossier de base sera /usr/local mais rien ne vous empêche de choisir un autre dossier. Il est préférable d'avoir un accès au réseau Internet pour le téléchargement des paquets.
Nous utiliserons la version 3.5.1 de Nagios et la version 2.5.4 de Centreon.
Le but de cet article est de vous présenter une installation complète de Nagios avec son broker associé NDOutils et l’interface Centreon.
L'installation s'effectuera de préférence sur une machine virtuelle Debian 7 avec compilation des sources. Le dossier de base sera /usr/local mais rien ne vous empêche de choisir un autre dossier. Il est préférable d'avoir un accès au réseau Internet pour le téléchargement des paquets.
Nous utiliserons la version 3.5.1 de Nagios et la version 2.5.4 de Centreon.
1 Préparation de la VM
Attention l'interface Web de Centreon n'est pas compatible avec le PHP > 5.3. Veuillez lire cet article.
1.1 Mise à jour et ssh
Afin de travailler dans de bonnes conditions et d’utiliser les fonctions copier/coller de Putty ou d’une session Terminal, il est nécessaire d’installer un serveur ssh. Connecter vous en root sur le serveur Debian, et saisissez la commande suivante :
apt-get install ssh
Il se peut que l’installation échoue si l’installation de Debian est trop ancienne par rapport aux nouveaux patchs de sécurisation, dans ce cas saisissez les commandes suivantes afin de mettre le serveur Debian à jour :
apt-get update
apt-get upgrade
1.2 Configuration APT
Ce paragraphe s’adresse seulement à Debian Wheezy. Premièrement, il faut modifier les dépôts Debian pour récupérer les paquets PHP 5.3 de la version Squeeze. Editez le fichier /etc/apt/sources.list
deb http://ftp.fr.debian.org/debian/ wheezy main non-free
deb-src http://ftp.fr.debian.org/debian/ wheezy main non-free
deb http://security.debian.org/ wheezy/updates main non-free
deb-src http://security.debian.org/ wheezy/updates main non-free
deb http://ftp.fr.debian.org/debian/ squeeze main non-free
deb-src http://ftp.fr.debian.org/debian/ squeeze main non-free
deb http://security.debian.org/ squeeze/updates main non-free
deb-src http://security.debian.org/ squeeze/updates main non-free
Deuxièmement, rajouter un fichier de préférences pour apt qui choisira le dépôt en fonction des paquets recherchés. rajouter le fichier /etc/apt/preferences.d/preferences
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
Faites une mise à jour de l'inventaire des paquets.
apt-get update
1.3 Pré requis
Nous allons procéder à l’installation des différents paquets nécessaire à Nagios.
Voici les paquets pour l’installation de Nagios :
Voici les paquets pour l’installation de Nagios :
apt-get install lsb-release bsd-mailx snmp snmpd postfix apache2 build-essential php5 libgd2-xpm-dev libperl-dev ntp
Voici en détail l'installation de ces mêmes paquets.
1.3.a Détail de l'installation des paquets
Les paquets divers
Les compilateurs (nécessaire pour nagios)
Serveur Web et PHP5 (nécessaire pour activer l'interface cgi de nagios)
Perl (nécessaire pour nagios)
SNMP
Librairies GD (nécessaire pour nagios)
Serveur Messagerie
Ne pas saisir de configuration.
Serveur NTP
Ensuite editer la configuration
Ajouter les serveurs ntp de votre choix le cas échéant
Redémarrer le serveur
apt-get install bsd-mailx lsb-release
Les compilateurs (nécessaire pour nagios)
apt-get install build-essential
Serveur Web et PHP5 (nécessaire pour activer l'interface cgi de nagios)
apt-get install apache2 php5
Perl (nécessaire pour nagios)
apt-get install libperl-dev
SNMP
apt-get install snmp snmpd
Librairies GD (nécessaire pour nagios)
apt-get install libgd2-xpm-dev
Serveur Messagerie
apt-get install postfix
Ne pas saisir de configuration.
Serveur NTP
apt-get install ntp
Ensuite editer la configuration
vi /etc/ntp.conf
Ajouter les serveurs ntp de votre choix le cas échéant
server 0.fr.pool.ntp.org
server 1.fr.pool.ntp.org
server 2.fr.pool.ntp.org
Redémarrer le serveur
/etc/init.d/ntp restart
1.4 Préparation des utilisateurs et groupes
Création des groupes nagios
groupadd -g 6000 nagios
groupadd -g 6001 nagcmd
Le groupe nagcmd servira pour les commandes externes.
Création de l'utilisateur nagios
Création de l'utilisateur nagios
useradd -u 6000 -g nagios -G nagcmd -d /usr/local/nagios -c "Nagios Admin" nagios
Ajout du goupe pour apache
/usr/sbin/usermod -G nagios,nagcmd www-data
2 Installation de Nagios
2.1 Compilation
2.1.a Récupération des sources Nagios 3.4.1
cd /usr/local/src/
wget http://prdownloads.sourceforge.net/sourceforge/nagios/nagios-3.4.1.tar.gz
2.1.b Décompression du fichier
tar -xzf nagios-3.4.1.tar.gz
cd nagios
2.1.c Application du patch pour Centreon-Broker
Une anomalie a été détectée par l'équipe Centreon lorsqu'on utilise Nagios conjointement avec Centreon-broker. Si vous installez celui-ci, appliquez le patch comme ci-dessous.
Se positionnez dans le dossier /usr/local/src/nagios/base.
Se positionnez dans le dossier /usr/local/src/nagios/base.
cd /usr/local/src/nagios/base
Créez le fichier centreon_check.patch et insérez les lignes suivantes :
--- checks.c 2013-09-03 07:35:24.955966983 +0200
+++ checks2.c 2013-09-03 07:39:09.601851965 +0200
@@ -1608,12 +1608,15 @@
broker_service_check(NEBTYPE_SERVICECHECK_PROCESSED, NEBFLAG_NONE, NEBATTR_NONE, temp_service, temp_service->check_type, queued_check_result->start_time, queued_check_result->finish_time, NULL, temp_service->latency, temp_service->execution_time, service_check_timeout, queued_check_result->early_timeout, queued_check_result->return_code, NULL, NULL);
#endif
- /* set the checked flag */
- temp_service->has_been_checked = TRUE;
-
- /* update the current service status log */
- update_service_status(temp_service, FALSE);
-
+ if(!(reschedule_check==TRUE
+ && temp_service->should_be_scheduled==TRUE
+ && temp_service->has_been_checked==TRUE)
+ || temp_service->checks_enabled==FALSE){
+ /* set the checked flag */
+ temp_service->has_been_checked=TRUE;
+ /* update the current service status log */
+ update_service_status(temp_service,FALSE);
+ }
/* check to see if the service and/or associate host is flapping */
if(flapping_check_done == FALSE) {
check_for_service_flapping(temp_service, TRUE, TRUE);
appliquez le patch
patch -p0 < centreon_check.patch
Nagios est prêt pour la compilation.
Le fichier est modifié comme le montre le résultat suivant :
patching file checks.c
2.1.d Configuration, compilation et installation
cd /usr/local/src/nagios
./configure --prefix=/usr/local/nagios --with-nagios-user=nagios --with-nagios-group=nagios --with-command-user=nagios --with-command-group=nagcmd --enable-event-broker --enable-nanosleep --enable-embedded-perl --with-perlcache
make all
make install
make install-init
make install-commandmode
make install-config
2.2 Configuration
Démarrage de Nagios automatique
Ajoutez au début du fichier /etc/init.d/nagios ces lignes ci-dessous
Ajoutez au début du fichier /etc/init.d/nagios ces lignes ci-dessous
### BEGIN INIT INFO
# Provides: nagios
# Required-Start:
# Required-Stop:
# X-Stop-After:
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: nagios
# Description: Supervision Nagios
### END INIT INFO
Lancez la commande
update-rc.d nagios defaults
3 Installation des Plugins pour Nagios
Les plugins, appelés aussi sondes, sont des programmes exécutables obligatoires pour faire fonctionner notre supervision. Les plugins ne sont pas installés par défaut. Il faut les télécharger et faire leur installation. Depuis quelques temps, Les plugins de base peuvent être récupérer sur deux sites différents, le site de nagios-plugins.org et le site monitoring-plugins.org. D'autres plugins, principalement en Perl, seront fournis avec Centreon.
L'installation de ces plugins est déclinée en deux parties : la première est pour l'installation de Nagios et la deuxième pour l'installation de Centreon-Engine.
L'installation de ces plugins est déclinée en deux parties : la première est pour l'installation de Nagios et la deuxième pour l'installation de Centreon-Engine.
3.1 Pré requis
Tout d'abord, installons les paquets nécessaires au fonctionnement des plugins.
Pour Debian Squeeze
Pour Debian Squeeze
apt-get install libgnutls-dev libssl-dev libkrb5-dev libldap2-dev libsnmp-dev gawk libwrap0-dev libmcrypt-dev smbclient fping gettext dnsutils libmysqlclient15-dev
Pour Debian Wheeze
apt-get install libgnutls-dev libssl-dev libkrb5-dev libldap2-dev libsnmp-dev gawk libwrap0-dev libmcrypt-dev smbclient fping gettext dnsutils libmysqlclient-dev
Configuration de Samba Workgroup : COMMUN, ne pas utiliser les paramètres Wins
Récupération des plugins sur le site de nagios-plugins.org
cd /usr/local/src
wget http://nagios-plugins.org/download/nagios-plugins-2.0.3.tar.gz
Décompression
tar -xzf nagios-plugins-2.0.3.tar.gz
cd nagios-plugins-2.0.3
ou sur le site de monitoring-plugins.org
cd /usr/local/src
wget --no-check-certificate https://www.monitoring-plugins.org/download/monitoring-plugins-2.1.1.tar.gz
Décompression
tar -xzf monitoring-plugins-2.1.1.tar.gz
cd monitoring-plugins-2.1.1
3.2 Compilation et installation
./configure --with-nagios-user=nagios --with-nagios-group=nagios --prefix=/usr/local/nagios/ --enable-perl-modules --with-openssl=/usr/bin/openssl
make
make install
La compilation peut échouer sur Debian Wheezy avec les messages d'erreurs suivants.
Validate.xs: In function ‘get_type’:
Validate.xs:208:5: error: duplicate case value
Validate.xs:205:5: error: previously used here
make[3]: *** [Validate.o] Erreur 1
make[3]: quittant le répertoire « /usr/local/src/nagios-plugins-1.4.16/perlmods/Params-Validate-0.88 »
Can't run make at ../tools/build_perl_modules line 69.
make[2]: *** [all-local] Erreur 2
make[2]: quittant le répertoire « /usr/local/src/nagios-plugins-1.4.16/perlmods »
make[1]: *** [all-recursive] Erreur 1
make[1]: quittant le répertoire « /usr/local/src/nagios-plugins-1.4.16 »
make: *** [all] Erreur 2
Pour résoudre ce problème, se positionnez dans le dossier suivant
cd perlmods/Params-Validate-0.88
Lancez la commande suivante
perl Makefile.PL --pm
retournez au dossier précédent et compilez
cd -
make
La compilation se fait sans problème.
4 Installation du broker NDOutils pour Nagios
Maintenant, il est temps de passer à l'installation du broker qui nous permettra d'obtenir les données de performances.
Il est possible d'utiliser un broker alternatif MK livestatus ce qui nous permettra de réaliser une configuration lite avec Thruk.
Il est possible d'utiliser un broker alternatif MK livestatus ce qui nous permettra de réaliser une configuration lite avec Thruk.
4.1 Compilation et installation
Nous utiliserons la dernière version 1.5.2 patchée par l’équipe de Centreon.
Télechargement du paquet
Télechargement du paquet
cd /usr/local/src
wget http://downloads.sourceforge.net/project/nagios/ndoutils-1.x/ndoutils-1.5.2/ndoutils-1.5.2.tar.gz
Décompressez NDOutils et allez dans le répertoire
tar -xzf ndoutils-1.5.2.tar.gz
cd ndoutils-1.5.2
Désormais, le patch créé par l’équipe de Centreon n’est plus disponible sur leur site.
Optionnel mais fortement conseillé, l'optimisation de NDOutils par l’équipe de Centreon
Télécharger le patch
Télécharger le patch
wget http://svn.centreon.com/trunk/ndoutils-patch/ndoutils1.5.2_light.patch
Appliquer le patch
patch -p1 -N < ndoutils1.5.2_light.patch
résultat de la commande
patching file Changelog
patching file include/common.h
patching file src/ndo2db.c
patching file src/ndomod.c
Compilation et installation
Lancez la préparation à la compilation de NDOutils
Lancez la préparation à la compilation de NDOutils
./configure --prefix=/usr/local/nagios/ --enable-mysql --disable-pgsql --with-mysql-lib=/usr/lib/mysql/
Vous devriez avoir ce résultat
*** Configuration summary for ndoutils 1.5.2 06-08-2012 ***:
General Options:
-------------------------
NDO2DB user: nagios
NDO2DB group: nagios
Review the options above for accuracy. If they look okay,
type 'make' to compile the NDO utilities.
Compilez NDOutils.
make
Après avoir compilé les binaires et librairies, il faut maintenant les installer. Ici nous allons les installer dans les répertoires de Nagios. Les fichiers de configuration seront copiés aussi.
cp /usr/local/src/ndoutils-1.5.2/src/ndomod-*.o /usr/local/nagios/bin/
cp /usr/local/src/ndoutils-1.5.2/src/ndo2db* /usr/local/nagios/bin/
cp /usr/local/src/ndoutils-1.5.2/config/ndo2db.cfg-sample /usr/local/nagios/etc/ndo2db.cfg
cp /usr/local/src/ndoutils-1.5.2/config/ndomod.cfg-sample /usr/local/nagios/etc/ndomod.cfg
chmod 774 /usr/local/nagios/bin/ndo*
chown nagios:nagios /usr/local/nagios/bin/ndo*
chmod 774 /usr/local/nagios/etc/ndomod.cfg
chown nagios:nagios /usr/local/nagios/etc/ndomod.cfg
4.2 Configuration
4.2.1 Modification du fichier de configuration de Nagios
Modifier les deux lignes dans le fichier /usr/local/nagios/etc/nagios.cfg
broker_module=/usr/local/nagios/bin/ndomod-3x.o config_file=/usr/local/nagios/etc/ndomod.cfg
event_broker_options=-1
4.2.2 Installation du script de démarrage
Je vous propose deux solutions. La première est de modifier directement le fichier de démarrage /etc/init.d/nagios pour inclure le lancement de ndo2db au démarrage de nagios, rajouter les lignes suivantes en rouge :
...
su - $NagiosUser -c "touch $NagiosVarDir/nagios.log $NagiosRetentionFile"
su - $NagiosUser -c "/usr/local/nagios/bin/ndo2db-3x -c /usr/local/nagios/etc/ndo2db.cfg"
rm -f $NagiosCommandFile
...
pid_nagios
killproc_nagios nagios
skill ndo2db-3x
Redémarrage de Nagios
service nagios restart
La seconde est de rajouter le fichier ndo2db dans le dossier /etc/init.d et de le configurer comme ci-dessous. Attention, l'installation de mysql est un pré-requi.
chmod +x /etc/init.d/ndo2db
update-rc.d ndo2db defaults
Démarrage du broker NDOutil
service ndo2db restart
Il faut utiliser la seconde solution si vous installer Centreon >= 2.4.x
4.3 Vérification du fonctionnement de NDOUtils
Pour vérifier le fonctionnement de NDOUtils, vous aurez préalablement installé le module Web cgi de Nagios.
4.3.1 1er cas, sans ndo2db
MySQL n'est pas installé, le service ndo2db n'est donc pas démarré. Vérifiez les Event Log dans la page Web de Nagios
Il faut lire les messages du bas vers le haut. Le process Nagios démarre. Ensuite NDOMOD démarre. La zone bleue indique que le module Event Broker fonctionne sans problème. La zone rouge affiche des messages d'erreur car le service ndo2db n'est pas démarré et par conséquent le module ndomod n'arrive pas à se connecter au flux TCP.
L’article est terminé. Rendez-vous sur l’article de Centreon.
Il faut lire les messages du bas vers le haut. Le process Nagios démarre. Ensuite NDOMOD démarre. La zone bleue indique que le module Event Broker fonctionne sans problème. La zone rouge affiche des messages d'erreur car le service ndo2db n'est pas démarré et par conséquent le module ndomod n'arrive pas à se connecter au flux TCP.
L’article est terminé. Rendez-vous sur l’article de Centreon.
4.3.2 2ème cas, avec ndo2db
Vérifiez les Event Log dans la page Web de Nagios
Il faut lire les messages du bas vers le haut. Le process Nagios démarre. Ensuite NDOMOD démarre. La zone bleue indique que le module Event Broker fonctionne sans problème. La zone rouge affiche des messages d'erreur mais c'est normal, la base n’est pas configurée.
L’article est terminé. Rendez-vous sur l’article de Centreon.
Il faut lire les messages du bas vers le haut. Le process Nagios démarre. Ensuite NDOMOD démarre. La zone bleue indique que le module Event Broker fonctionne sans problème. La zone rouge affiche des messages d'erreur mais c'est normal, la base n’est pas configurée.
L’article est terminé. Rendez-vous sur l’article de Centreon.
5 Installation du protocole SNMP
5.1 Paramétrages
Pour le fonctionnement du SNMP, modifiez le fichier /etc/snmp/snmpd.conf
agentAddress udp:localhost:161
rocommunity public localhost
iquerySecName internalUser
trapsink localhost public
Pour éviter d’avoir un deamon snmpd trop bavard, (réduction des logs), et pour recevoir les traps modifier le fichier /etc/default/snmpd
# snmpd options (use syslog, close stdin/out/err).
SNMPDOPTS='-LS4d -Lf /dev/null -u snmp -g snmp -I -smux -p /var/run/snmpd.pid'
.....
TRAPDRUN=yes
.....
# snmptrapd options (use syslog).
TRAPDOPTS='-On -Lsd -p /var/run/snmptrapd.pid'
5.2 Installation des mibs
5.2.a Modification du dépôt Debian
Modifiez le fichier /etc/apt/sources.list. Rajoutez non-free sur les dépôts.
deb http://ftp.fr.debian.org/debian/ squeeze main non-free
deb-src http://ftp.fr.debian.org/debian/ squeeze main non-free
Faites une mise à jour
apt-get update
5.2.b Ajout des mibs
Il vous reste à rajouter les mibs
apt-get install snmp-mibs-downloader
5.2.c Modification de la configuration SNMP
Créez un lien symbolique
ln -s /usr/share/mibs/ /usr/share/snmp/mibs
Modifiez le fichier /etc/default/snmpd
export MIBDIRS=/usr/share/snmp/mibs
export MIBS=ALL
Commentez la ligne du fichier /etc/snmp/snmp.conf
#mibs ALL
Redémarrez le service SNMP
service snmpd restart
5.2.d Vérification du fonctionnement
Pour vérifier le fonctionnement, saisir la ligne suivante
snmpwalk -c public -v 2c localhost
Vous devez obtenir une très longue liste d'OID SNMP. Seul bémol, les OID de type HrSWInstalled (.1.3.6.1.2.1.25.6) ne sont pas pris en compte. C'est gênant pour certains plugins fournis par Centreon. Je n'ai pas trouvé la solution pour pallier ce problème.
Lors des manipulations ultérieures avec Centreon-Clapi ou des visualisations de logs, des erreurs se rapportant au MIBS polluent les résultats. Par exemple, lors d'une commande de Centreon-Clapi, voici le résultat.
./centreon -u admin -p password -o nagioscfg -a show
No log handling enabled - turning on stderr logging
Unlinked OID in IPATM-IPMC-MIB: marsMIB ::= { mib-2 57 }
Undefined identifier: mib-2 near line 18 of /usr/share/mibs/ietf/IPATM-IPMC-MIB
Bad operator (INTEGER): At line 73 in /usr/share/mibs/ietf/SNMPv2-PDU
Undefined OBJECT-GROUP (diffServMIBMultiFieldClfrGroup): At line 2195 in /usr/share/mibs/ietf/IPSEC-SPD-MIB
Undefined OBJECT-GROUP (diffServMultiFieldClfrNextFree): At line 2157 in /usr/share/mibs/ietf/IPSEC-SPD-MIB
Undefined OBJECT-GROUP (diffServMIBMultiFieldClfrGroup): At line 2062 in /usr/share/mibs/ietf/IPSEC-SPD-MIB
Expected "::=" (RFC5644): At line 493 in /usr/share/mibs/iana/IANA-IPPM-METRICS-REGISTRY-MIB
Expected "{" (EOF): At line 651 in /usr/share/mibs/iana/IANA-IPPM-METRICS-REGISTRY-MIB
Bad object identifier: At line 651 in /usr/share/mibs/iana/IANA-IPPM-METRICS-REGISTRY-MIB
Bad parse of OBJECT-IDENTITY: At line 651 in /usr/share/mibs/iana/IANA-IPPM-METRICS-REGISTRY-MIB
nagios id;nagios name;instance;nagios comment
1;Nagios CFG 1;Central;Default Nagios.cfg
La seule solution, actuellement, que j'ai trouvée est d'éliminer les MIBS posant problème soit en déplaçant, soit en les supprimant.
mv /usr/share/mibs/ietf/IPATM-IPMC-MIB /root
mv /usr/share/mibs/ietf/SNMPv2-PDU /root
mv /usr/share/mibs/ietf/IPSEC-SPD-MIB /root
mv /usr/share/mibs/iana/IANA-IPPM-METRICS-REGISTRY-MIB /root
6 Installation de Centreon
Nous utiliserons la dernière version de Centreon 2.5.4. Centreon nous permettra de configurer facilement notre supervision grâce à son interface Web. Centreon permet de récupérer les données de performances fournies par le broker ndoutils et ensuite de les afficher sous forme de graphes.
6.1 Pré Requis
Pour Debian Squeeze, il faut installer des paquets supplémentaires
apt-get install sudo tofrodos bsd-mailx lsb-release mysql-server libmysqlclient15-dev apache2 apache2-mpm-prefork php5 php5-mysql php-pear php5-ldap php5-snmp php5-gd 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 php5-sqlite
Ou pour Debian Wheeze, il faut installer des paquets supplémentaires
apt-get install sudo tofrodos bsd-mailx lsb-release mysql-server libmysqlclient-dev apache2 apache2-mpm-prefork php5 php5-mysql php-pear php5-ldap php5-snmp php5-gd rrdtool librrds-perl libconfig-inifiles-perl libcrypt-des-perl libdigest-hmac-perl libdigest-sha-perl libgd-gd2-perl snmp snmpd libnet-snmp-perl libsnmp-perl php5-sqlite
Optionnellement, on peut ajouter phpmyadmin pour visualiser aisément les bases de données.
apt-get install phpmyadmin
6.2 Installation en ligne de commande
Téléchargez le binaire dans le dossier /usr/local/src et décompressez-le.
cd /usr/local/src
wget https://s3-eu-west-1.amazonaws.com/centreon-download/public/centreon/centreon-2.5.4.tar.gz
tar xzf centreon-2.5.4.tar.gz
cd centreon-2.5.4
Lancez la ligne de commande ci-dessous pour débuter l'installation.
/install.sh -i
Au lancement du script, le programme confirme si toutes les dépendances sont satisfaites.
############################################################################### # # # Centreon (www.centreon.com) # # Thanks for using Centreon # # # # v2.5.3 # # # # infos@centreon.com # # # # 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 /bin/sed OK You will now read Centreon Licence. Press enter to continue.
Ensuite, vous devez accepter la licence d'utilisateur de Centreon (licence GPL Version 2) pour continuer. Si vous refusez cette licence, vous abandonnez l'installation.
This General Public License does not permit incorporating your program into proprietary programs. If your program is a subroutine library, you may consider it more useful to permit linking proprietary applications with the library. If this is what you want to do, use the GNU Library General Public License instead of this License. Do you accept GPL license ? [y/n], default to [n]: > y
Le module d'installation va alors vous si vous souhaitez installer les modules: l'interface Web Centreon, Centcore, les plugins Centreon et les Traps handler Centreon. Nous utiliserons tous les modules. L'intérêt d'installer CentCore maintenant réside dans le fait qu'il sera plus facile d'évoluer vers une installation distribuée.
------------------------------------------------------------------------ Please choose what do 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
Le script d'installation va maintenant procéder à l'installation des différents modules.
Commençons par Centreon Web, l'interface de centreon.
Commençons par Centreon Web, l'interface de centreon.
------------------------------------------------------------------------ Start CentWeb Installation ------------------------------------------------------------------------ Where is your Centreon directory? default to [/usr/local/centreon] >
Ici, on nous demande où installer centreon. Tapez "entrée" pour prendre le chemin par défaut. Sinon saisir un autre chemin. Si le répertoire que vous avez saisi n'existe pas, il vous sera demandé de valider votre choix pour créer le répertoire.
Where is your Centreon directory? default to [/usr/local/centreon] > Do you want me to create this directory ? [/usr/local/centreon] [y/n], default to [n]: > y Path /usr/local/centreon OK
Ici on nous demande le répertoire de stockage des journaux/logs de centreon.
Where is your Centreon log directory default to [/usr/local/centreon/log/] > Do you want me to create this directory ? [/usr/local/centreon/log/] [y/n], default to [n]: > y Path /usr/local/centreon/log/ OK
Très important : L'emplacement des fichiers de configuration de centreon. Attention si cet endroit venait à changer par la suite, vous seriez obligé de relancer l'installation de centreon, certains fichiers devant être regénérés. Saisir les valeurs par défaut et répondre y pour la création des dossiers.
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 binaries directory default to [/usr/local/centreon/bin] > Do you want me to create this directory ? [/usr/local/centreon/bin] [y/n], default to [n]: > y Path /usr/local/centreon/bin OK Where is your Centreon data informations directory default to [/usr/local/centreon/data] > Do you want me to create this directory ? [/usr/local/centreon/data] [y/n], default to [n]: > y Path /usr/local/centreon/data OK Where is your Centreon variable library directory? default to [/var/lib/centreon] > Path /var/lib/centreon OK /usr/bin/rrdtool OK /usr/bin/mail OK /usr/bin/php OK Where is PEAR [PEAR.php] default to [/usr/share/php/PEAR.php] > Path /usr/share/php OK /usr/bin/perl OK Finding Apache user : www-data Finding Apache group : www-data
Utilisation d'un groupe centreon et d'un utilisateur centreon, validez entrée par défaut et répondre y pour leur création.
What is the Centreon group ? [centreon] default to [centreon] > Do you want me to create this group ? [centreon] [y/n], default to [n]: > y What is the Centreon user ? [centreon] default to [centreon] > Do you want me to create this user ? [centreon] [y/n], default to [n]: > y
Choisissez le moteur nagios et le broker ndo. Indiquez le chemin des plugins.
What is the Monitoring engine user ? > nagios What is the Broker user ? (optional) > nagios What is the Monitoring engine log directory ? > /usr/local/nagios/var Where is your monitoring plugins (libexec) directory ? default to [/usr/lib/nagios/plugins] > /usr/local/nagios/libexec Path /usr/local/nagios/libexec OK Add group centreon to user www-data OK Add group centreon to user nagios OK Add group nagios to user www-data OK Add group nagios to user centreon OK
Configuration des commandes utilisées par Sudo. Saisir les chemins comme indiqué ci-dessous.
------------------------------------------------------------------------ Configure Sudo ------------------------------------------------------------------------ Where is sudo configuration file default to [/etc/sudoers] > /etc/sudoers OK What is the Monitoring engine init.d script ? > /etc/init.d/nagios What is the Monitoring engine binary ? > /usr/local/nagios/bin/nagios What is the Monitoring engine configuration directory ? > /usr/local/nagios/etc Where is the configuration directory for broker module ? > /usr/local/nagios/etc Where is the init script for broker module daemon ? > /etc/init.d/ndo2db Your sudo is not configured Do you want me to configure your sudo ? (WARNING) [y/n], default to [n]: > y Configuring Sudo OK
Configuration du serveur Web
------------------------------------------------------------------------ Configure Apache server ------------------------------------------------------------------------ Do you want to add 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 /usr/local/centreon/log OK Change right on /etc/centreon OK Change macros for insertBaseConf.sql OK Change macros for sql update files OK Change macros for php files OK Change macros for perl binary OK Change right on /usr/local/nagios/etc OK Add group nagios to user www-data OK Add group nagios to user nagios OK Add group centreon to user nagios OK Copy CentWeb in system directory Install CentWeb (web front of centreon) OK Change right for install directory Change right for install directory OK Install libraries OK Write right to Smarty Cache OK Copying libinstall OK Change macros for centreon.cron OK Install Centreon cron.d file OK Change macros for centAcl.php OK Change macros for downtimeManager.php OK Install cron directory OK Change right for eventReportBuilder OK Change right for dashboardBuilder OK Change macros for centreon.logrotate OK Install Centreon logrotate.d file OK Prepare centFillTrapDB OK Install centFillTrapDB OK Prepare centreon_trap_send OK Install centreon_trap_send OK Prepare centreon_check_perfdata OK Install centreon_check_perfdata OK Prepare centreonSyncPlugins OK Install centreonSyncPlugins OK Prepare centreonSyncArchives OK Install centreonSyncArchives OK Install generateSqlLite OK Install changeRrdDsName.pl OK Prepare export-mysql-indexes OK Install export-mysql-indexes OK Prepare import-mysql-indexes OK Install import-mysql-indexes OK Centreon Web Perl lib installed OK ------------------------------------------------------------------------ Pear Modules ------------------------------------------------------------------------ Check PEAR modules PEAR 1.4.9 1.9.1 OK 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 1.3.7 OK Auth_SASL 1.0.1 NOK Console_Getopt 1.2 1.2.3 OK 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 NOK Archive_Zip 0.1.2 NOK Do you want me to install/upgrade your PEAR modules [y/n], default to [y]: > y
Le script d'installation n'a pas trouvé les modules Perl à jour, répondre y pour les mettre à jour automatiquement. Dans le cadre d'un serveur qui n'aurait pas accès à Internet, vous pouvez auparavant mettre à jour les paquets Pear par une méthode manuelle indiquée sur mon blog.
Upgrading PEAR modules Installing PEAR modules DB 1.7.6 1.8.2 OK DB_DataObject 1.8.4 1.11.3 OK DB_DataObject_FormBuilder 1.0.0RC4 1.0.2 OK MDB2 2.0.0 2.4.1 OK HTML_QuickForm_advmultiselect 1.1.0 1.5.1 OK HTML_Table 1.6.1 1.8.3 OK Auth_SASL 1.0.1 1.0.6 OK Net_SMTP 1.2.8 1.6.2 OK Net_Traceroute 0.21 0.21.3 OK Net_Ping 2.4.1 2.4.5 OK Validate 0.6.2 0.8.5 OK XML_RPC 1.4.5 1.5.5 OK SOAP 0.10.1 0.13.0 OK Log 1.9.11 1.12.8 OK Archive_Zip 0.1.2 0.1.2 OK Check PEAR modules PEAR 1.4.9 1.9.5 OK DB 1.7.6 1.8.2 OK DB_DataObject 1.8.4 1.11.3 OK DB_DataObject_FormBuilder 1.0.0RC4 1.0.2 OK MDB2 2.0.0 2.4.1 OK Date 1.4.6 1.4.7 OK HTML_Common 1.2.2 1.2.5 OK HTML_QuickForm 3.2.5 3.2.14 OK HTML_QuickForm_advmultiselect 1.1.0 1.5.1 OK HTML_Table 1.6.1 1.8.3 OK Archive_Tar 1.1 1.3.7 OK Auth_SASL 1.0.1 1.0.6 OK Console_Getopt 1.2 1.2.3 OK Net_SMTP 1.2.8 1.6.2 OK Net_Socket 1.0.1 1.0.14 OK Net_Traceroute 0.21 0.21.3 OK Net_Ping 2.4.1 2.4.5 OK Validate 0.6.2 0.8.5 OK XML_RPC 1.4.5 1.5.5 OK SOAP 0.10.1 0.13.0 OK Log 1.9.11 1.12.8 OK Archive_Zip 0.1.2 0.1.2 OK All PEAR modules OK ------------------------------------------------------------------------ Centreon Post Install ------------------------------------------------------------------------ Create /usr/local/centreon/www/install/install.conf.php OK Create /etc/centreon/instCentWeb.conf OK
Pear étant à jour, nous continuons avec l'installation de CentStorage. Répondre y à l'installation de CentStorage
------------------------------------------------------------------------ Start CentStorage Installation ------------------------------------------------------------------------ Where is your Centreon Run Dir directory? default to [/var/run/centreon] > 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 CentStorage binary directory default to [/usr/local/centreon/bin] > Path /usr/local/centreon/bin OK Where is your CentStorage RRD directory default to [/var/lib/centreon] > Path /var/lib/centreon OK 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 Install CentStorage binary OK Change right : /var/run/centreon OK Change macros for centstorage init script OK Replace Centstorage default script Macro OK Do you want me to install CentStorage init script ? [y/n], default to [n]: > y CentStorage init script installed OK CentStorage default script installed OK Do you want me to install CentStorage run level ? [y/n], default to [n]: > y update-rc.d: using dependency based boot sequencing CentStorage Perl lib installed OK Install logAnalyser OK Install logAnalyserBroker OK Install nagiosPerfTrace OK Change macros for centstorage.cron OK Install CentStorage cron OK Change macros for centstorage.logrotate OK Install Centreon Storage logrotate.d file OK Create /etc/centreon/instCentStorage.conf OK
Installation du module CentCore.
------------------------------------------------------------------------ Start CentCore Installation ------------------------------------------------------------------------ Where is your CentCore binary directory default to [/usr/local/centreon/bin] > Path /usr/local/centreon/bin OK Preparing Centreon temporary files /tmp/centreon-setup exists, it will be moved... Copy CentCore in binary directory OK Change right : /var/run/centreon OK Change right : /var/lib/centreon OK Change macros for centcore.logrotate OK Install Centreon Core logrotate.d file OK Replace CentCore init script Macro OK Replace CentCore default script Macro OK Do you want me to install CentCore init script ? [y/n], default to [n]: > y CentCore init script installed OK CentCore default script installed OK Do you want me to install CentCore run level ? [y/n], default to [n]: > y update-rc.d: using dependency based boot sequencing CentCore Perl lib installed OK Create /etc/centreon/instCentCore.conf OK
Installation des plugins pour les Traps SNMP, répondre y pour la création des dossiers.
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 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 CentreonTrapd binaries directory default to [/usr/local/centreon/bin] > /usr/local/centreon/bin OK Finding Apache user : www-data Preparing Centreon temporary files /tmp/centreon-setup exists, it will be moved... Change macros for snmptrapd.conf OK Replace CentreonTrapd init script Macro OK Replace CentreonTrapd default script Macro OK Do you want me to install CentreonTrapd init script ? [y/n], default to [n]: > y CentreonTrapd init script installed OK CentreonTrapd default script installed OK Do you want me to install CentreonTrapd run level ? [y/n], default to [n]: > y update-rc.d: using dependency based boot sequencing trapd Perl lib installed OK Install : snmptrapd.conf OK Install : centreontrapdforward OK Install : centreontrapd OK Create /etc/centreon/instCentPlugins.conf OK ############################################################################### # # # Go to the URL : http://nagios/centreon/ # # to finish the setup # # # # Report bugs at http://forge.centreon.com # # # # Thanks for using Centreon. # # ----------------------- # # Contact : infos@centreon.com # # http://www.centreon.com # # # ###############################################################################
Il faut terminer l’installation en mode Web.
6.3 Installation en mode Web
Utilisez un navigateur internet récent et saisissez l’url suivante :
http://ip du serveur centreon/centreon/
Démarrage de l'installation Web, cliquez sur "Next"
Validation des dépendances, cliquez sur "next".
Nous choisirons comme moteur de supervision nagios. Saisissez les chemins ci-dessous.
http://ip du serveur centreon/centreon/
Démarrage de l'installation Web, cliquez sur "Next"
Validation des dépendances, cliquez sur "next".
Nous choisirons comme moteur de supervision nagios. Saisissez les chemins ci-dessous.
Nagios directory : /usr/local/nagios Nagiostats binary : /usr/local/nagios/bin/nagiostats Nagios image directory : /usr/local/nagios/share/images Embedded Perl initialisation file : /usr/local/nagios/bin/p1.pl
Cliquez sur Next
Nous choisirons comme broker ndoutils
Nous choisirons comme broker ndoutils
Ndomod binary (ndomod.o) : /usr/local/nagios/bin/ndomod-3x.o
Cliquez sur Next
Création du user "Administrateur", admin et son mot de passe. Saisir une adresse valide pour l’email. Cliquez sur Next.
Définir les Accès MySQL, le mot de passe de MySQL. Laisser les noms de base par défaut CENTREON, CENTSTORAGE et CENTSTATUS. Saisir le mot de passe pour ces bases de données. Cliquez sur Next.
Cette fenêtre indique que vous devez modifier le fichier de configuration de MySql /etc/mysql/my.cnf. Ajoutez la ligne suivante.
Création du user "Administrateur", admin et son mot de passe. Saisir une adresse valide pour l’email. Cliquez sur Next.
Définir les Accès MySQL, le mot de passe de MySQL. Laisser les noms de base par défaut CENTREON, CENTSTORAGE et CENTSTATUS. Saisir le mot de passe pour ces bases de données. Cliquez sur Next.
Cette fenêtre indique que vous devez modifier le fichier de configuration de MySql /etc/mysql/my.cnf. Ajoutez la ligne suivante.
innodb_file_per_table=1
Redémarrez le serveur MySql
service mysql restart
Création des bases de données, cliquez sur Next.
Fin de l'installation, cliquez sur Finish.
Vous devriez avoir cette vue. Vous pouvez vous connecter à l'interface d'administration.
6.4 Configuration des services
Démarrez les services ci-dessous :
service centcore start
service centstorage start
service centreontrapd start
Pour éviter un message d'erreur au démarrage du serveur, voir l'article du blog, éditer le fichier /etc/default/rcS. Modifiez la ligne suivante.
VERBOSE=yes
6.5 Application de la configuration
Connectez-vous à l'interface de Centreon. Sélectionnez le menu Configuration / Monitoring Engines
Vous devriez avoir le résultat ci-dessous.
Il faut lancez le service broker.
service ndo2db start
Au bout de quelques secondes, vous devriez voir apparaître les hôtes et services dans la barre d'état en haut à droite.
Votre supervision est en état de fonctionnement.
Continuons par la configuration de notre supervision.