Ceci est une ancienne révision du document !
Ce tutoriel est validé sur Debian 5.
Installer les paquetages prérequis :
apt-get install mysql apache2 php5
Installer les paquetages pré-requis :
apt-get install gcc make php5 apache2 build-essential libgd2-xpm-dev
Télécharger la dernière version sur : http://www.nagios.org/download/core
Création des groupes et compte pour Nagios :
/usr/sbin/groupadd nagcmd /usr/sbin/useradd -m -s /bin/bash nagios && passwd nagios /usr/sbin/usermod -G nagios nagios /usr/sbin/usermod -a -G nagcmd nagios /usr/sbin/usermod -a -G nagcmd www-data
Extraire l'archive :
tar xzf nagios-3.2.3.tar.gz cd nagios-3.2.3
Compiler et l'installer dans /usr/local/nagios
:
./configure --prefix=/usr/local/nagios make all make install make install-init make install-config make install-commandmode
Télécharger la dernière version sur : http://www.nagios.org/download/plugins
Extraire l'achive :
tar xzf nagios-plugins-1.4.15.tar.gz cd nagios-plugins-1.4.15
Compiler et installer les plugins dans /usr/local/nagios
:
./configure --prefix=/usr/local/nagios make make install
Installer les paquetages pré-requis :
apt-get install mysql-server mysql-client libmysql++-dev
Télécharger la dernière version sur : http://prdownloads.sourceforge.net/sourceforge/nagios/ndoutils-1.4b9.tar.gz
Extraire l'archive et se positionner dans le répertoire décompressé :
tar xzf ndoutils-1.4b9.tar.gz cd ndoutils-1.4b9
Lancer la compilation :
./configure --prefix=/usr/local/nagios/ --enable-mysql --disable-pgsql --with-ndo2db-user=nagios --with-ndo2db-group=nagios make
Copier les fichiers binaires et configuration manuellement :
cp ./src/ndomod-3x.o /usr/local/nagios/bin/ndomod.o cp ./src/ndo2db-3x /usr/local/nagios/bin/ndo2db chmod 774 /usr/local/nagios/bin/ndo* chown nagios:nagios /usr/local/nagios/bin/ndo*
Copier le script d'initialisation et activer le lancement au démarrage du système :
cp daemon-init /etc/init.d/ndo2db update-rc.d ndo2db defaults chmod 755 /etc/init.d/ndo2db
La base et la configuration de NDO sera initialisé plus tard depuis l'interface de Centreon
Lancer la commande suivante pour installer les modules :
perl -MCPAN -e shell cpan> install Config::IniFiles
Installer les paquetages suivants :
apt-get install snmp snmpd apt-get install libnet-snmp-perl libsnmp-base libsnmp15
Editer le fichier /etc/snmp/snmpd.conf et définissez les communauté SNMP en filtrant l'accès qu'a certains réseaux :
com2sec readonly default public com2sec readonly 192.168.1.0/24 mynetwork
Activer le lancement de snmptrapd au lancement de snmpd. Editant le fichier /etc/default/snmpd et modifier les lignes suivantes :
TRAPDRUN=yes TRAPDOPTS='-On -Lf /var/log/net-snmpd.log -c /etc/snmp/snmptrapd.conf'
Redémarrer le service SNMP :
/etc/init.d/snmpd restart
Tester l'accès aux MIB d'un hôte distant :
snmpwalk -v 2c -c public 192.168.174.2
Installer les paquetages pré-requis :
apt-get install sudo rrdtool libpng3 libgd2-xpm-dev
Installer les modules PHP pré-requis :
apt-get install php5 php5-mysql php-pear php5-snmp php5-gd
Installer les modules PERL pré-requis :
apt-get install libconfig-inifiles-perl libcrypt-des-perl libdigest-hmac-perl libdigest-sha1-perl libio-socket-inet6-perl libnet-snmp-perl librrds-perl librrdp-perl libgd-gd2-perl libsocket6-perl
Télécharger les dernière version sur : http://www.centreon.com/Centreon/download.html
Si vous souhaitez ne pas utiliser les chemins par défaut de Centreon modifier les variables du fichier ./centreon-2.1.9/varinstall/vars
Extraire l'achive et lancer l'installation :
tar xzf centreon-2.1.9.tar.gz cd centreon-2.1.9 ./install.sh -i
Il suffit de valider ou répondre aux questions. En voici pour exemple un extrait
Pour installer le package en Français de Centreon :
Télécharger le package sur : http://www.centreon.com/Centreon/language-packs.html
Extrait l'archive et se positionner dedans :
tar xzf centreon-2.1-fr_FR-1.2.tgz cd centreon-2.1-fr_FR-1.2
Créer dynamiquement le répertoire de la langue du système et copier les fichiers de traduction :
mkdir -p /usr/local/centreon/www/locale/$(locale | grep LC_MESSAGES | cut -d \" -f 2)/LC_MESSAGES cp LC_MESSAGES/messages.mo /usr/local/centreon/www/locale/$(locale | grep LC_MESSAGES | cut -d \" -f 2)/LC_MESSAGES/.
Rendez-vous sur l'interface Web de centreon pour finaliser la configuration : http://your-server/centreon/ :
Maintenant que Centreon est installé et configuré nous allons configurer Nagios depuis l'interface de Centreon.
Dans Configuration → Nagios → Nagios.cfg → Nagios CFG1, modifier si besoin la valeur Commande de lancement du module avec :
/usr/local/nagios-3.2.3/bin/ndomod.o config_file=/usr/local/nagios/etc/ndomod.cfg
Voir : http://fr.doc.centreon.com/Setup:ndoutils2
Dans Configuration → Nagios → Ressources, vérifier les variables $USER1$ et $USER2$
Une fois les éléments configurés, il faut les publier dans Nagios et redémarrer le service nagios.
Pour finir démarrer le service ndo2db :
/etc/init.d/ndo2db start
Cette section permet de configurer les lignes de commandes utilisées par Nagios pour faire les vérifications et les notifications. Si les variables $USER1$ et $USER2$ sont mal définies dans l'onglet Nagios, ces commandes ne fonctionneront pas.
Pour modifier par exemple la commande check_centreon_snmp_cpu :
Les valeurs ci-dessous permettent de construire une ligne de commande pour Nagios :
Ligne de commande = $USER1$/check_centreon_snmp_cpu -H $HOSTADDRESS$ -v 1 -C $ARG1$ -c $ARG2$ -w $ARG3$ Exemple d'arguments = !$USER2$!80!90 $HOSTADDRESS$ = 192.168.174.2
Le résultat de la ligne de commande Nagios sera donc :
/usr/local/nagios-3.2.3/libexec/check_centreon_snmp_cpu -H 192.168.174.2 -v 1 -C 'public' -c '80' -w '90'
$ARG1$, $ARG2$… correspondent successivement aux valeurs séparées par un “!” dans Exemple d'arguments
Cette section permet de configurer les opérateurs de supervision en précisant :
C'est l'étape finale. On ajoute ici un hôte à surveiller. La configuration nécessite une certaine approche pour ne pas finir avec une usine à gaz. Le principe est le suivant :
NagVis est l'application qui vient en extra à l'outil de monitoring, et permet d'afficher les statuts de Nagios sur un schéma réseau.
Installer les paquetages pré-requis :
apt-get install sqlite3 php5-sqlite graphviz
Télécharger la dernière version sur : http://www.nagvis.org/downloads
Extraire l'archive et lancer l'installeur :
tar xzf nagvis-1.5.3.tar.gz cd nagvis-1.5.3 chmod +x install.sh ./install.sh
Répondre aux questions comme illustré ci-dessous :
+------------------------------------------------------------------------------+ | Welcome to NagVis Installer 0.2.16 | +------------------------------------------------------------------------------+ | This script is built to facilitate the NagVis installation and update | | procedure for you. The installer has been tested on the following systems: | | - Debian Etch, Hardy (4.0, 5.0) | | - Ubuntu Hardy, Intrepid, Jaunty, Karmic, Lucid (8.04 to 10.04) | | - SuSE Linux Enterprise Server 10 and 11 | | | | Similar distributions to the ones mentioned above should work as well. | | That (hopefully) includes RedHat, Fedora, CentOS, OpenSuSE | | | | If you experience any problems using these or other distributions, please | | report that to the NagVis team. | +------------------------------------------------------------------------------+ | Do you want to proceed? [y]: y +------------------------------------------------------------------------------+ | Starting installation of NagVis 1.5.3 | +------------------------------------------------------------------------------+ | OS : Debian GNU/Linux 5.0 | | Perl: 5.010000 | | | +--- Checking for tools -------------------------------------------------------+ | Using packet manager /usr/bin/dpkg found | | | +--- Checking paths -----------------------------------------------------------+ | Please enter the path to the nagios base directory [/usr/local/nagios]: | nagios path /usr/local/nagios found | | Please enter the path to NagVis base [/usr/local/nagvis]: | | +--- Checking prerequisites ---------------------------------------------------+ | Nagios Core 3.2.3 found | | PHP 5.2 found | | PHP Module: gd 5.2 found | | PHP Module: mbstring compiled_in found | | PHP Module: gettext compiled_in found | | PHP Module: session compiled_in found | | PHP Module: xml compiled_in found | | Apache mod_php found | | Checking Backends. (Available: mklivestatus,ndo2db,ido2db,merlinmy) | | Do you want to use backend mklivestatus? [y]: n | Do you want to use backend ndo2db? [n]: y | Do you want to use backend ido2db? [n]: n | Do you want to use backend merlinmy? [n]: n | /usr/local/nagios/bin/ndo2db (ndo2db) found | | PHP Module: mysql 5.2 found | | Graphviz 2.20 found | | Graphviz Module dot 2.20.2 found | | Graphviz Module neato 2.20.2 found | | Graphviz Module twopi 2.20.2 found | | Graphviz Module circo 2.20.2 found | | Graphviz Module fdp 2.20.2 found | | | +--- Trying to detect Apache settings -----------------------------------------+ | Please enter the web path to NagVis [/nagvis]: | Please enter the name of the web-server user [www-data]: | Please enter the name of the web-server group [www-data]: | create Apache config file [y]: y | | +--- Checking for existing NagVis ---------------------------------------------+ | | +------------------------------------------------------------------------------+ | Summary | +------------------------------------------------------------------------------+ | NagVis home will be: /usr/local/nagvis | | Owner of NagVis files will be: www-data | | Group of NagVis files will be: www-data | | Path to Apache config dir is: /etc/apache2/conf.d | | Apache config will be created: yes | | | | Installation mode: install | | | | Do you really want to continue? [y]: y +------------------------------------------------------------------------------+ | Starting installation | +------------------------------------------------------------------------------+ | Creating directory /usr/local/nagvis... done | | Creating directory /usr/local/nagvis/var... done | | Creating directory /usr/local/nagvis/var/tmpl/cache... done | | Creating directory /usr/local/nagvis/var/tmpl/compile... done | | Creating directory /usr/local/nagvis/share/var... done | | Copying files to /usr/local/nagvis... done | | Creating main configuration file... done | | setting backend to ndomy_1 done | | Creating web configuration file... done | | Setting permissions for web configuration file... done | | | | | | | +--- Setting permissions... ---------------------------------------------------+ | /usr/local/nagvis/etc/nagvis.ini.php-sample done | | /usr/local/nagvis/etc done | | /usr/local/nagvis/etc/maps done | | /usr/local/nagvis/etc/maps/* done | | /usr/local/nagvis/etc/automaps done | | /usr/local/nagvis/etc/automaps/* done | | /usr/local/nagvis/share/userfiles/images/maps done | | /usr/local/nagvis/share/userfiles/images/maps/* done | | /usr/local/nagvis/share/userfiles/images/shapes done | | /usr/local/nagvis/share/userfiles/images/shapes/* done | | /usr/local/nagvis/var done | | /usr/local/nagvis/var/* done | | /usr/local/nagvis/var/tmpl done | | /usr/local/nagvis/var/tmpl/cache done | | /usr/local/nagvis/var/tmpl/compile done | | /usr/local/nagvis/share/var done | | | +------------------------------------------------------------------------------+ | Installation complete | | | | You can safely remove this source directory. | | | | For later update/upgrade you may use this command to have a faster update: | | ./install.sh -n /usr/local/nagios -p /usr/local/nagvis -B /usr/local/nagios/bin/nagios -b ndo2db -u www-data -g www-data -w /etc/apache2/conf.d -a y | | | What to do next? | | - Read the documentation | | - Maybe you want to edit the main configuration file? | | Its location is: /usr/local/nagvis/etc/nagvis.ini.php | | - Configure NagVis via browser | | <http://localhost/nagvis/config.php> | | - Initial admin credentials: | | Username: nagiosadmin | | Password: nagiosadmin | +------------------------------------------------------------------------------+
Depuis votre navigateur sur par exemple : http://192.168.174.3/nagvis
Suivre les étapes suivantes :