Você está na página 1de 21

1.

Introduction
Centreon est un outil de supervision/monitoring au même titre que Observium, Nagios ou
vFogLight, avec plus ou moins de fonctionnalitées. C'est -à-dire que cet outil permet de
connaître en temps réel l'état des serveurs supervisés.
Il permet via un dashboard (ou tableau de bord en français) d'obtenir des informations
comme :
- Utilisation du processeur, de la RAM, de l'espace du disque dur,etc...

L'outil fonctionne sur un principe de check (vérification) via SNMP ou de checks via un
agent sur l'hôte (NSClient pour windows, Xinetd pour Linux). Ce qui implique de configurer
le snmp ou l'agent sur les hôtes distants.
Pour plus d'informations, veuillez vous référer au site de l'éditeur : Editeur de Centreon
Ou vous pouvez directement l'essayer sur leur site de démonstration : Démo en
administrateur

2. Avantages / Inconvénients
Avantages
- Utilise principalement le SNMP ou un agent.
- Supervision facile d'un Windows ou d'un Linux.
- L'agent NSClient peut être installé automatiquement via un Active Directory.
- Gratuit et libre.
- Checks personnalisables
- Possibilité de superviser des ESX
- Nombreuses fonctionnalitées
Inconvénients :
- N'a pas de map gratuite
- Beaucoup de versions de centreon ce qui provoque des problèmes de compatiblités (CES,
installation manuelle, FAN, etc..).
- Certains modules sont payants.

3. Structure Centreon
Dans cette partie nous allons tenter de comprendre le fonctionnement de Centreon, mais
aussi apprendre les différents termes techniques.
3.1 Architecture simple
Voici un schéma de ce que l'on appelle une architecture simple. Elle est appelé simple car
on associe tous les modules de centreon dans un unique serveur.

3.2 Architecture distribuée


Mais une architecture simple comporte de nombreux inconvénients, dont :
- Si le serveur est perdu, on perd absolument tout vu que tous les modules sont dans le
même serveur.
- Si tous les agents envoient les informations vers un unique point du réseau, celui -ci verra
sa bande passante saturée rapidement si il supervise trop d'hôte pour l'infrastructure.
Voici un schéma d'une architecture distribuée :
Les architectures distribuées sont constituées en général d’un serveur de supervision
Central et d’un ou plusieurs pollers. Ce montage a plusieurs intérêts, il permet :
- De répartir la charge sur plusieurs serveurs de supervision
- De limiter l’impact du flux de supervision sur les interconnexions de réseaux
- L’isolation de réseau.
Une relation de master-slave peut être mis en place sur la base de données mais aussi sur
le Central
3.3 Architecture distribué fonctionnement
Le broker en fonction de votre version sera Centreon-Broker (nouvelles versions) ou
NDOutils (anciennes versions).
Vous pouvez voir leurs fonctionnements ici.
3.4 Détails/modules
Le serveur central contient :
- Le serveur Apache, chargé d’héberger l’interface web de Centreon
- Plusieurs bases de données MySQL sont chargées de stocker la configuration de
Centreon, les informations de supervision ainsi que les données de performances
- Le service CentCore est chargé d’exporter la configuration des moteurs de supervision
vers le serveur central et des satellites ainsi que du redémarrage des moteurs de
supervision
- Le moteur de supervision supervise le système d’information (Centreon-Engine)
- Les informations de supervision sont envoyées via cbmod à Centreon Broker SQL
- Centreon Broker SQL est chargé d’insérer les données de supervision en base de
données et de transmettre les données de performances à Centreon Broker RRD
- Centreon Broker RRD est chargé de générer les fichiers RRD (qui servent à générer les
graphiques de performances)
Le serveur satellite a les éléments suivants :
- Le moteur de supervision supervise le système d’information
- Les informations de supervision sont envoyées via cbmod au service Centreon Broker
SQL hébergé sur le serveur Central
- Centreon Broker SQL est chargé d’insérer les données de supervision en base de
données et de transmettre les données de performances à Centreon Broker RRD
- Centreon Broker RRD est chargé de générer les fichiers RRD (qui servent à générer les
graphiques de performances)
Centreon-Engine : moteur de supervision, capable de recharger la configuration à chaud
et par conséquent réduit le temps de latence du changement de la configuration.
Prérequis : librairie partagée Centreon-clib et optionnellement des connecteurs Perl/SSH
(Centreon-Connector)
Centreon-Broker : permet l’envoi des informations de supervision vers le serveur central
Par rapport à NDOUTILS sa modularité permet :
- Nombreuses combinaisons
- Sécurité renforcée avec le cryptage des flux
- Système de failover.
Les plugins ou sondes en français, sont des exécutables qui seront utilisés par
l'ordonnanceur de supervision.
RRD : Round Robin Balancing, système de gestion de base de données, utiliser pour les
graphiques.
4. Installation

Reboot
Mise à jour du Centreon :

Lancer la commande suivante afin de récupérer les dernières Mise à jour de Centreon

yum -y update centreon*

Installer les VMware tools

Les VMware tools sont à installer dans le cas où vous virtualisez votre serveur sur un ESX.
Ils permettent une meilleure interraction avec la machine virtuelle.
Pour cela, entrez les commandes suivantes :

#Création du dossier ou stocker l'iso


mkdir /mnt/cdrom
#Montage de l'iso dans le dossier créer précédemment
mount /dev/cdrom /mnt/cdrom
#Décompression de l'archive dans le dossier /tmp
tar xzf /mnt/cdrom/WMwareTools*.tar.gz -C /tmp
#Allez dans le dossier /tmp
cd /tmp/vmware-tools-distrib
#Lancement de l'installation des vmware tools
./vmware-intall.pl –default
Cliquer ensuite sur Administration, Extensions puis cliquer sur Widget afin d’activer l’ensemble des
Widgets

https://www.supinfo.com/articles/single/2191-supervision-via-centreon-installation-configuration
Installation de Nagvis 1.85 avec Centreon-Web 2.8

1.1 Installation de Nagvis 1.85


Installez les paquets nécessaires à Nagvis et le backend Centreon.

yum install graphviz git -y

Téléchargez la dernière version stable 1.8.5 de NagVis.

cd /usr/local/src
wget http://www.nagvis.org/share/nagvis-1.8.5.tar.gz
tar xzf nagvis-1.8.5.tar.gz
cd nagvis-1.8.5

Procédez à l'installation de NagVis. En utilisant l’installation silencieuse.

./install.sh -q -n /usr/sbin -p /usr/share/nagvis -u apache -g apache -w /etc/http


d/conf.d -a y

Résultat :

L'installation est terminée, relancez Apache pour qu'il prenne en compte la nouvelle
configuration.

service httpd reload

1.2 Installation du connecteur-backend


Passons à l'installation du connecteur-backend Centreon-Broker. Celui-ci n'étant pas
encore dans la distribution NagVis, il faut le récupérer sur le git-hub de Centreon.
Récupérez le dernier git de centreon-nagvis-backend.

cd /usr/local/src
git clone https://github.com/centreon/centreon-nagvis-backend.git

Résultat :
Copiez le fichier dans le dossier de configuration de Nagvis avec les droits appropriés.

mv centreon-nagvis-backend/GlobalBackendcentreonbroker.php /usr/share/nagvis/share
/server/core/classes/
chown apache: /usr/share/nagvis/share/server/core/classes/GlobalBackendcentreonbro
ker.php
chmod 664 /usr/share/nagvis/share/server/core/classes/GlobalBackendcentreonbroker.
php

1.3 Configuration de Nagvis


Modifions le fichier de configuration de Nagvis pour faire reconnaître le connecteur-
backend de Centreon. Editez le fichier /usr/share/nagvis/etc/nagvis.ini.php.

mv /usr/share/nagvis/etc/nagvis.ini.php /usr/share/nagvis/etc/nagvis.ini.php.old
vi /usr/share/nagvis/etc/nagvis.ini.php
chown apache:apache /usr/share/nagvis/etc/nagvis.ini.php

[global]

authmodule="CoreAuthModSQLite"

authorisationmodule="CoreAuthorisationModSQLite"

dateformat="Y-m-d H:i:s"

file_group="apache"

file_mode="660"

language_detection="user,session,browser,config"

language="en_US"

refreshtime=60

sesscookiedomain="auto-detect"

sesscookiepath="/"

sesscookieduration="86400"

startmodule="Overview"

startaction="view"
[paths]

base="/usr/share/nagvis/"

htmlbase="/nagvis"

htmlcgi="/centreon"

[defaults]

backend="centreonbroker"

backgroundcolor="#ffffff"

contextmenu=1

contexttemplate="default"

event_on_load=0

event_repeat_interval=0

event_repeat_duration=-1

eventbackground=0

eventhighlight=1

eventhighlightduration=30000

eventhighlightinterval=500

eventlog=0

eventloghidden="1"

eventscroll=1

headermenu="1"

headertemplate="default"

headerfade=1

hovermenu=1

hovertemplate="default"

hoverdelay=0

hoverchildsshow=1

hoverchildslimit="10"

hoverchildsorder="asc"

hoverchildssort="s"

icons="std_medium"

onlyhardstates=0

recognizeservices=1

showinlists=1

showinmultisite=1

urltarget="_parent"
hosturl="[htmlcgi]/main.php?p=20201&o=svc&host_search=[host_name]&search=&poller=&hostgroup=&output_s
earch="

hostgroupurl=

serviceurl="[htmlcgi]/main.php?p=20201&o=svcd&host_name=[host_name]&service_description=[service_descri
ption]&poller=&hostgroup=&output_search="

servicegroupurl=

mapurl="[htmlcgi]/main.php?p=243&map=[map_name]"

view_template="default"

label_show=1

[index]

backgroundcolor=#ffffff

headermenu="1"

headertemplate="default"

showmaps=1

showrotations=1

showmapthumbs=0

[automap]

[wui]

maplocktime=5

grid_show=0

grid_color="#D5DCEF"

grid_steps=32

[worker]

interval=10

requestmaxparams=0

requestmaxlength=1900

updateobjectstates=30

[backend_centreonbroker]

backendtype="centreonbroker"

statushost=""

dbhost="localhost"

dbport=3306
dbname="centreon_storage"

dbuser="centreon"

dbpass="centreon"
dbinstancename="default"
htmlcgi="/centreon"

[states]

NB : Ne pas oublier de saisir le mot de passe adéquate de la base de données pour


voire le mot de passe vous pouvez la consulté dans : /etc/centreon/centreon.conf.php.

Ensuite, connectez-vous sur votre interface nagvis http://[ip du serveur Central]/nagvis.

Cliquez sur Options/Gérer les backends. Vérifiez le backend par défaut soit
centreonbroker et sauvegardez le cas échéant.

Backend par défaut


2 Installation du module
2.1 Téléchargement
Récupérez le binaire du module Centreon-Nagvis sur le site Download de Centreon.

cd /usr/local/src
wget https://s3-eu-west-1.amazonaws.com/centreon-download/public/Modules/centreon-
nagvis/centreon-nagvis-1.1.1.tar.gz

Décompressez le binaire.

tar xzf centreon-nagvis-1.1.1.tar.gz

2.2 Modification du module


Nous devons modifier un fichier pour avoir l'affichage des menus. Nous en profiterons
pour modifier les paramètres par défaut. Modifions le fichier ci-dessous :

cd /usr/local/src/centreon-nagvis-1.1.1/www/modules/centreon-nagvis/sql/

mv install.sql install.sql.old

vi install.sql

Modifiez le fichier comme ceci :

-- Topology
INSERT INTO `topology` (`topology_id`, `topology_name`, `topology_parent`, `topolo
gy_page`, `topology_order`, `topology_group`, `topology_url`, `topology_url_opt`,
`topology_popup`, `topology_modules`, `topology_show`) VALUES ('', 'Nagvis', 2, 24
3, 20, 1, './modules/centreon-nagvis/index.php', NULL, '0', '1', '1');
-- Admin page
INSERT INTO `topology` (`topology_id`, `topology_name`, `topology_parent`, `topolo
gy_page`, `topology_order`, `topology_group`, `topology_url`, `topology_url_opt`,
`topology_popup`, `topology_modules`, `topology_show`) VALUES ('', 'Nagvis', 5, 51
3, 11, 1, './modules/centreon-nagvis/nagvis-config.php', NULL, '0', '1', '1');
INSERT INTO `topology` (`topology_id`, `topology_name`, `topology_parent`, `topolo
gy_page`, `topology_order`, `topology_group`, `topology_url`, `topology_url_opt`,
`topology_popup`, `topology_modules`, `topology_show`) VALUES ('', 'Nagvis Configu
ration',513, 51301, 20, 1, './modules/centreon-nagvis/nagvis-config.php', NULL, '0
', '1', '1');

-- Insert options
INSERT INTO `options` (`key`,`value`) VALUES ('centreon_nagvis_uri','/nagvis/front
end/nagvis-js/index.php');
INSERT INTO `options` (`key`,`value`) VALUES ('centreon_nagvis_path','/usr/share/n
agvis/share/');

INSERT INTO `options` (`key`, `value`) VALUES ('centreon_nagvis_auth', 'single');


INSERT INTO `options` (`key`, `value`) VALUES ('centreon_nagvis_single_user', 'cen
treon_nagvis');

NB :Cette modification vous permettra d'obtenir la visualisation du menu Nagvis dans


Centreon.

Il faut modifier un autre fichier pour afficher les cartes nagvis. Editez le fichier suivant :
vi /usr/local/src/centreon-nagvis-1.1.1/www/modules/centreon-nagvis/nagvis.ihtml

Commentez les lignes suivantes dans la fonction resizeMap :


/function resizeMap() {
/ var height = jQuery('html').height();
/ jQuery('#map').height(0);
/
/ /* Header */
/ height = height - jQuery('#header').height() - jQuery('#forMenuAjax').height();
/
/ /* lignes à commenter */
/ /* Footer */
/ /* height = height - jQuery('#footer').height() - 10;
/ height = height - jQuery('#contener').height(); */
/
/ jQuery('#map').height(height);
/ }

2.3 Modification de Nagvis


Plusieurs fonctions de NagVis version 1.8.x ont des noms identiques avec Centreon
provoquant une incompatibilité de fonctionnement. Cela se traduit par une page blanche
dans le menu Nagvis. Modifions les fichiers, placez-vous à la racine du dossier de base
nagvis.

cd /usr/share/nagvis/
sed -i -e "s/get_error/get_error_nagvis/g" ./share/server/core/functions/html.php
sed -i -e "s/debug(/debug_nagvis(/g" ./share/server/core/ext/php-gettext-1.0.9/get
text.inc
sed -i -e "s/debug(/debug_nagvis(/g" ./share/server/core/classes/CoreAuthorisation
Handler.php
sed -i -e "s/debug(/debug_nagvis(/g" ./share/server/core/classes/CoreSQLiteHandler
.php
sed -i -e "s/debug(/debug_nagvis(/g" ./share/server/core/classes/GlobalLanguage.ph
p
sed -i -e "s/debug(/debug_nagvis(/g" ./share/server/core/classes/CoreAuthHandler.p
hp
sed -i -e "s/debug(/debug_nagvis(/g" ./share/server/core/classes/CoreMySQLHandler.
php
sed -i -e "s/debug(/debug_nagvis(/g" ./share/server/core/functions/debug.php
sed -i -e "s/microtime_float(/microtime_float_nagis(/g" ./share/server/core/functi
ons/debug.php

Attention, pensez à renouveler cette opération en cas de mise à jour mineure de Nagvis.

3 Activation du module dans Centreon


L'installation en ligne de commande est terminée, nous devons terminer l'installation en
nous connectant à l'interface web. Actuellement la dernière version du module centreon-
nagvis est la version 1.1.1. Les copies d’écran sont réalisées avec Centreon-Web 2.7x
mais l’installation est identique pour les versions antérieures.

1-Installation de l'extension

Sélectionnez le menu Administration / Extensions. Cliquez sur l'icône Action pour


installer le module.
2-Installation de l'extension

Cliquez sur le bouton Install Module.

3-Installation de l'extension

Le module est installé, cliquez sur back pour revenir à l'affichage des modules.

4-Installation de l'extension

4 Configuration du module
Le module Centreon-Nagvis autorise deux modes de fonctionnement. Le premier mode
Single user, le plus simple, utilise un compte unique Nagvis. Tous les utilisateurs
Centreon pourront consulter les cartes Nagvis en lecture seule. Le deuxième mode
Centreon User exige un compte Nagvis correspondant à un compte Centreon. Cette
solution permet d’utiliser des rôles différents pour donner des droits spécifiques aux
utilisateurs Centreon. On peut affecter des cartes à certains utilisateurs grâce aux rôles
Nagvis.

Modes du module Centreon-Nagvis


4.1 Modification pour l’authentification commune aux deux
modes
Il faut modifier l’authentification pour les besoins de Centreon UI. Editez le fichier
/usr/share/nagvis/share/server/core/defines/global.php.

vi /usr/share/nagvis/share/server/core/defines/global.php

Remplacez la ligne suivante :

// NagVis session name


define('SESSION_NAME', 'nagvis_session');

Par celle-ci

// NagVis session name


define('SESSION_NAME', 'PHPSESSID');

On aura pris le soin de créer nos cartes. Pour l’exemple du mode Centreon User, la
carte Central sera dédiée pour user1 et la carte Poller sera dédié pour user2.