Menu


Stacks Image 2228
Je vous propose avec ce tuto, l'installation des sources sur Debian Stretch et les modules "free" de Centreon permettant l'installation des plugins-pack librement distribuable. Un grand merci à Kevin Duret pour son aide à l'intégration pour Debian. Attention, actuellement aucun support officiel ne sera assuré par Centreon. Pour une installation en production, je vous conseille d'utiliser l'ISO Centreon prévue à cet effet. Conseil pour l'installation, utilisez une distribution fresh-install, ne sautez pas les étapes et lisez bien la procédures. Ne vous lancez pas dans cette installation si vous n'avez pas un minimum de connaissances sur Linux.
Stacks Image 1118307
Avis aux lecteurs
Avertissement : Il n'y aura aucun de support de la part de Centreon pour cette version Debian et l'offre IMP n'est pas supporté, inutile de contacter Centreon. Ce tutoriel est valable seulement pour la version 19.04.0.
Attention, les modules centreon-licence-manager, centreon-autodiscovery et centreon-pp-manager sont libre d'utilisation pour Centreon mais ne sont pas open-source. Les fichiers php ne sont pas lisibles. En cas de dysfonctionnement, je n'assure aucune aide. Il reste encore des points à améliorer, patience j'y travaille. N'utilisez pas les version sources 19.04.1 et 19.04.2 pour Centreon-Web, il y a un point de blocage actuellement.

1 Préparation de la VM

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

2 Installation de Centreon Clib

 
Stacks Image 3086
Centreon Clib est une librairie commune, écrite en C/C++, pour certains modules de Centreon. C'est un pré-requis nécessaire au fonctionnement de Centreon-Engine. Contrairement aux autres installations précédentes de mon site, nous installerons la librairie partagée dans le dossier /usr/lib. Nous éviterons l’utilisation de la commande ldconfig.

2.1 Pré requis

Avec la version 9.0, vous devez vous connecter avec une session utilisateur en ssh. Ensuite, authentifiez vous en superutilisateur avec la commande su.
Installons les paquets nécessaires au fonctionnement de cette librairie.
apt-get install build-essential cmake pkg-config -y
Stacks Image 1118266
Astuces
Lors de l'installation des packages Debian, si vous avez ces messages d'erreurs non-bloquants :
locales
Vous devrez configurer les paramètres régionaux (locale settings)
dpkg-reconfigure locales

Il faudra, dans notre exemple, sélectionner la langue fr_FR.UTF-8.

2.2 Installation

Téléchargez le binaire dans le dossier /usr/local/src et décompressez-le.
cd /usr/local/src
wget http://files.download.centreon.com/public/centreon-clib/centreon-clib-19.04.0.tar.gz
tar xzf centreon-clib-19.04.0.tar.gz
cd centreon-clib-19.04.0/build
Préparons la compilation.
cmake \
-DWITH_TESTING=0 \
-DWITH_PREFIX=/usr \
-DWITH_SHARED_LIB=1 \
-DWITH_STATIC_LIB=0 \
-DWITH_PKGCONFIG_DIR=/usr/lib/pkgconfig .
Extrait du résultat
-- Configuration Summary
-- ---------------------
--
-- Project
-- - Name Centreon Clib
-- - Version 19.04.0
-- - With shared library Yes
-- - With static library No
--
-- System
-- - Name Linux
-- - Version 4.9.0-8-amd64
-- - Processor x86_64
--
-- Build
-- - Compiler /usr/bin/c++ (GNU)
-- - Extra compilation flags
-- - Build unit tests No
--
-- Installation
-- - Prefix /usr
-- - Library directory /usr/lib
-- - Include directory /usr/include
-- - Package None
-- - pkg-config directory /usr/lib/pkgconfig
--
-- Configuring done
-- Generating done
-- Build files have been written to: /usr/local/src/centreon-clib-19.04.0/build
Ensuite compilez cette configuration et terminez par l’installation. Ne tenez pas compte des messages d'erreur du à la version du compilateur C++ plus restrictive. La librairie étant copiée dans le dossier /usr/lib, celle-ci est automatiquement prise en compte.
make
make install
C'est terminé pour Centreon Clib, nous pouvons continuer par l'installation des connecteurs Centreon ou directement par l'installation de Centreon-Engine.
 

3 Installation des connecteurs Centreon

Stacks Image 3399
Centreon Perl Connector et Centreon SSH connecteur sont des modules optionnels améliorant la vitesse d'exécution des plugins en scripts Perl et en SSH. Ils nécessitent l'utilisation de Centreon Engine. Vous trouverez un article expliquant les avantages de l'utilisation d'un connecteur Perl.

3.1 Centreon Perl Connector

3.1.a Pré requis

Tout d'abord, installons les paquets nécessaires au fonctionnement de cette librairie.
apt-get install libperl-dev -y
L'installation, au préalable, de Centreon Clib est obligatoire.

3.1.b Installation

La dernière version stable est la 19.04.0. Téléchargez le binaire dans le dossier /usr/local/src et décompressez-le.
cd /usr/local/src
wget http://files.download.centreon.com/public/centreon-connectors/centreon-connector-19.04.0.tar.gz
tar xzf centreon-connector-19.04.0.tar.gz
cd centreon-connector-19.04.0/perl/build
Préparons la compilation.
cmake \
-DWITH_PREFIX=/usr \
-DWITH_PREFIX_BINARY=/usr/lib/centreon-connector \
-DWITH_CENTREON_CLIB_INCLUDE_DIR=/usr/include \
-DWITH_TESTING=0 .
Extrait du résultat
-- Configuration Summary
-- ---------------------
--
-- Project
-- - Name Centreon Perl Connector
-- - Version 19.04.0
--
-- System
-- - Name Linux
-- - Version 4.9.0-8-amd64
-- - Processor x86_64
--
-- Build
-- - Compiler /usr/bin/c++ (GNU)
-- - Extra compilation flags -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fwrapv -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I/usr/lib/x86_64-linux-gnu/perl/5.24/CORE
-- - Unit tests disabled
--
-- Install
-- - Prefix /usr
-- - Binary prefix /usr/lib/centreon-connector
-- - Package None
--
-- Libraries
-- - clib include directory /usr/include
-- - clib library directory /usr/lib/libcentreon_clib.so
-- Configuring done
-- Generating done
-- Build files have been written to: /usr/local/src/centreon-connector-19.04.0/perl/build
Ensuite compilons cette configuration et installons dans le dossier /usr/local
make
make install
C'est terminé, nous pouvons continuer par l'installation du connecteur SSH

3.2 Centreon SSH Connector

3.2.a Pré requis

Tout d'abord, installons les paquets nécessaires au fonctionnement de cette librairie.
apt-get install libssh2-1-dev libgcrypt11-dev -y

3.2.b Installation

Dirigez-vous dans le dossier pour le connecteur SSH
cd /usr/local/src/centreon-connector-19.04.0/ssh/build
Préparons la compilation (même compilation que précédemment)
cmake \
-DWITH_PREFIX=/usr \
-DWITH_PREFIX_BINARY=/usr/lib/centreon-connector \
-DWITH_CENTREON_CLIB_INCLUDE_DIR=/usr/include \
-DWITH_TESTING=0 .
Extrait du résultat
-- Configuration Summary
-- ---------------------
--
-- Project
-- - Name Centreon SSH Connector
-- - Version 19.04.0
-- - Known hosts check disabled
--
-- System
-- - Name Linux
-- - Version 4.9.0-8-amd64
-- - Processor x86_64
--
-- Build
-- - Compiler /usr/bin/c++ (GNU)
-- - Extra compilation flags
-- - Unit tests disabled
--
-- Install
-- - Prefix /usr
-- - Binary prefix /usr/lib/centreon-connector
-- - Package None
--
-- Libraries
-- - clib include directory /usr/include
-- - clib library directory /usr/lib/libcentreon_clib.so
-- Configuring done
-- Generating done
-- Build files have been written to: /usr/local/src/centreon-connector-19.04.0/ssh/build
Ensuite compilons cette configuration et installons dans le dossier /usr/local
make
make install
C'est terminé, nous pouvons continuer par l'installation de Centreon Engine.
 

4 Installation de Centreon Engine

Stacks Image 4926
Ce chapitre présente l'installation du moteur de supervision créé par l'équipe de Centreon. Nous utiliserons la dernière version 19.04. Nous en profiterons pour installer les scripts systemd.

4.1 Pré Requis

Tout d'abord, Il faudra créer un utilisateur centreon-engine
groupadd -g 6001 centreon-engine
useradd -u 6001 -g centreon-engine -m -r -d /var/lib/centreon-engine -c "Centreon-engine Admin" -s /bin/bash centreon-engine
L'installation, au préalable, de Centreon Clib est obligatoire.
Il faut aussi installer des paquets supplémentaires.
apt-get install libcgsi-gsoap-dev zlib1g-dev libssl-dev libxerces-c-dev -y

4.2 Installation

La dernière version stable est la 19.04.1. Téléchargez le binaire dans le dossier /usr/local/src et décompressez-le.
cd /usr/local/src
wget http://files.download.centreon.com/public/centreon-engine/centreon-engine-19.04.1.tar.gz
tar xzf centreon-engine-19.04.1.tar.gz
cd centreon-engine-19.04.1/build/
Préparons la compilation.
cmake  \
-DWITH_CENTREON_CLIB_INCLUDE_DIR=/usr/include \
-DWITH_CENTREON_CLIB_LIBRARY_DIR=/usr/lib \
-DWITH_PREFIX=/usr \
-DWITH_PREFIX_BIN=/usr/sbin \
-DWITH_PREFIX_CONF=/etc/centreon-engine \
-DWITH_USER=centreon-engine \
-DWITH_GROUP=centreon-engine \
-DWITH_LOGROTATE_SCRIPT=1 \
-DWITH_VAR_DIR=/var/log/centreon-engine \
-DWITH_RW_DIR=/var/lib/centreon-engine/rw \
-DWITH_STARTUP_SCRIPT=systemd \
-DWITH_STARTUP_DIR=/lib/systemd/system \
-DWITH_PKGCONFIG_SCRIPT=1 \
-DWITH_PKGCONFIG_DIR=/usr/lib/pkgconfig \
-DWITH_TESTING=0 .
Extrait du résultat
-- Configuration Summary
-- ---------------------
--
-- Project
-- - Name Centreon Engine
-- - Version 19.04.1
--
-- System
-- - Name Linux
-- - Version 4.9.0-9-amd64
-- - Processor x86_64
--
-- Build
-- - Compiler /usr/bin/c++ (GNU)
-- - Extra compilation flags
-- - Build static core library yes
-- - External commands module enabled
-- - Unit tests disabled
-- - pkg-config script enabled
-- - logrotate script enabled
-- - Startup script Systemd script
--
-- Install
-- - Prefix /usr
-- - Binary prefix /usr/sbin
-- - Configuration prefix /etc/centreon-engine
-- - Library prefix /usr/lib/centreon-engine
-- - Include prefix /usr/include/centreon-engine
-- - var directory /var/log/centreon-engine
-- - Log archive directory /var/log/centreon-engine/archives
-- - RW directory /var/lib/centreon-engine/rw
-- - pkg-config directory /usr/lib/pkgconfig
-- - logrotate directory /etc/logrotate.d
-- - Startup directory /lib/systemd/system
-- - User centreon-engine
-- - Group centreon-engine
-- - Package None
--
-- Libraries
-- - clib include directory /usr/include
-- - clib library directory /usr/lib/libcentreon_clib.so
-- Configuring done
-- Generating done
-- Build files have been written to: /usr/local/src/centreon-engine-19.04.1/build
Ensuite compilons cette configuration et installons dans le système de fichiers.
make
make install
Pour vérifier, avant de continuer, le bon fonctionnement de la librairie partagée, saisissez la commande suivante:
centengine -V
[1540917958] [62218] Centreon Engine 19.04.1
[1540917958] [62218]
[1540917958] [62218] Copyright 1999-2009 Ethan Galstad
[1540917958] [62218] Copyright 2009-2010 Nagios Core Development Team and Community Contributors
[1540917958] [62218] Copyright 2011-2018 Centreon
[1540917958] [62218]
[1540917958] [62218] This program is free software: you can redistribute it and/or
[1540917958] [62218] modify it under the terms of the GNU General Public License version 2
[1540917958] [62218] as published by the Free Software Foundation.
[1540917958] [62218]
[1540917958] [62218] Centreon Engine is distributed in the hope that it will be useful,
[1540917958] [62218] but WITHOUT ANY WARRANTY; without even the implied warranty of
[1540917958] [62218] MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
[1540917958] [62218] General Public License for more details.
[1540917958] [62218]
[1540917958] [62218] You should have received a copy of the GNU General Public License
[1540917958] [62218] along with this program. If not, see
[1540917958] [62218] <http://www.gnu.org/licenses/>.
Mettre le service centengine en démarrage automatique. Nous verrons plus loin la création d'un cgroup centreon nécessaire au démarrage du service (paragraphe 8.5a)
systemctl enable centengine.service
systemctl daemon-reload
L'installation de Centreon-Engine est terminée, il faut passer à l'installation des plugins.
 

5 Installation des Plugins pour Centreon-Engine

Stacks Image 5223
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 historiques peuvent être récupérés 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 l’interface de Centreon.
Depuis peu, l’équipe de Centreon a réalisé ses propres plugins en Perl. Ces plugins font parti intégrante de cette version donc ces plugins sont nécessaires à l'installation.

5.1 Plugins historiques

5.1.a Pré requis

Tout d'abord, installons les paquets nécessaires au fonctionnement des plugins historiques pour Debian.
apt-get install libgnutls28-dev libssl-dev libkrb5-dev libldap2-dev libsnmp-dev gawk libwrap0-dev libmcrypt-dev smbclient fping gettext dnsutils libmodule-build-perl libmodule-install-perl libnet-snmp-perl -y

5.1.b 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.2.1.tar.gz
Décompression
tar -xzf nagios-plugins-2.2.1.tar.gz
cd nagios-plugins-2.2.1

5.1.c 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.2.tar.gz
Décompression
tar -xzf monitoring-plugins-2.2.tar.gz
cd monitoring-plugins-2.2

5.1.d Compilation et installation

./configure --with-nagios-user=centreon-engine --with-nagios-group=centreon-engine --prefix=/usr/lib/nagios/plugins --libexecdir=/usr/lib/nagios/plugins --enable-perl-modules --with-openssl=/usr/bin/openssl
make
make install

5.2 Plugin Centreon

Pour utiliser la majorité des plugins Centreon, vous aurez besoin des paquets suivants.
apt-get install libxml-libxml-perl libjson-perl libwww-perl libxml-xpath-perl libnet-telnet-perl libnet-ntp-perl libnet-dns-perl libnet-ldap-perl libdbi-perl libdbd-mysql-perl libdbd-pg-perl libdatetime-perl liburi-encode-perl libdate-manip-perl -y
Téléchargez le binaire dans le dossier /usr/local/src et décompressez-le.
cd /usr/local/src
wget http://files.download.centreon.com/public/centreon-plugins/centreon-plugins-20190412.tar.gz
tar xzf centreon-plugins-20190412.tar.gz
cd centreon-plugins-20190412
Le chemin utilisé pour les plugins Centreon est préconisé pour une installation centreon-web > 2.8.x. Les fichiers pl sont des fichiers perl fastpacked.
chmod +x *
mkdir -p /usr/lib/centreon/plugins
mv * /usr/lib/centreon/plugins/
 

6 Installation de Centreon-Broker

Stacks Image 5493
L'équipe de Centreon a développé son propre broker plus modulaire et plus performant que celui proposé par Nagios, NDOutil. Il est, depuis peu, compatible avec Nagvis grâce à un connecteur spécifique. Cette nouvelle version de broker intègre un nouveau connecteur utilisant l'interpréteur LUA.

6.1 Pré requis

Tout d'abord, Il faudra créer un groupe système et un utilisateur système centreon-broker
groupadd -g 6002 centreon-broker
useradd -u 6002 -g centreon-broker -m -r -d /var/lib/centreon-broker -c "Centreon-broker Admin" -s /bin/bash centreon-broker
Comme vous utilisez Centreon-Engine, celui-ci devra accéder au dossier log de Centreon-Broker pour exécuter son module cbmod.so. Pour cela, l'utilisateur centreon-engine devra être membre du groupe centreon-broker.
usermod -aG centreon-broker centreon-engine
Il faut aussi installer des paquets supplémentaires.
apt-get install libqt4-dev libqt4-sql-mysql libgnutls28-dev lsb-release liblua5.2-dev -y

6.2 Installation RRDtool par les sources

La version 1.6.0 de RRDtool installée par Debian 9 n'est pas compatible avec Centreon-Broker. Nous installerons les sources de la version 1.4.7. Commençons pas les prérequis.
apt-get install libpango1.0-dev libxml2-dev -y
Ensuite récupérons les sources et compilons la version 1.4.7
cd /usr/local/src
wget http://oss.oetiker.ch/rrdtool/pub/rrdtool-1.4.7.tar.gz
tar xzf rrdtool-1.4.7.tar.gz
cd rrdtool-1.4.7
./configure --prefix=/opt/rddtool-broker && make && make install
Copiez la configuration pkgconfig pour la compilation de Centreon-Broker.
cp /opt/rddtool-broker/lib/pkgconfig/librrd.pc /usr/lib/pkgconfig/
Indiquez le chemin de la librairie partagée en créant ce fichier.
vi /etc/ld.so.conf.d/rrdtool-broker.conf
Saisissez le chemin de la librairie.
# lib rrdtools for Centreon
/opt/rddtool-broker/lib
Stacks Image 1118202
Problème de librairie pour la création des fichiers RRD
Si vous n'avez pas indiqué le chemin de la librairie rrdtool, vous obtiendrez cette erreur.
Centreon Broker 18.10.0 log file opened
[1541584631] config: module applier: loading directory '/usr/share/centreon/lib/centreon-broker'
[1541584631] error: modules: could not load library '/usr/share/centreon/lib/centreon-broker/70-rrd.so': Cannot load library /usr/share/centreon/lib/centreon-broker/70-rrd.so: (librrd.so.4: Ne peut ouvrir le fichier d'objet partagé: Aucun fichier ou dossier de ce type)
[1541584631] error: endpoint applier: no matching type found for endpoint 'central-rrd-master-output'

6.3 Installation

Téléchargez le binaire dans le dossier /usr/local/src et décompressez-le.
cd /usr/local/src
wget http://files.download.centreon.com/public/centreon-broker/centreon-broker-19.04.0.tar.gz
tar xzf centreon-broker-19.04.0.tar.gz
cd centreon-broker-19.04.0/build
Préparons la compilation.
sed -i '32i\set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++98 -fpermissive")' CMakeLists.txt
cmake \
-DWITH_DAEMONS='central-broker;central-rrd' \
-DWITH_GROUP=centreon-broker \
-DWITH_PREFIX=/usr \
-DWITH_PREFIX_BIN=/usr/sbin \
-DWITH_PREFIX_CONF=/etc/centreon-broker \
-DWITH_PREFIX_LIB=/usr/lib/centreon-broker \
-DWITH_PREFIX_VAR=/var/lib/centreon-broker \
-DWITH_PREFIX_MODULES=/usr/share/centreon/lib/centreon-broker \
-DWITH_STARTUP_SCRIPT=systemd \
-DWITH_STARTUP_DIR=/lib/systemd/system \
-DWITH_TESTING=0 \
-DWITH_USER=centreon-broker .
Extrait du résultat
-- Configuration Summary
-- ---------------------
--
-- Project
-- - Name Centreon Broker
-- - Version 19.04.0
--
-- System
-- - Name Linux
-- - Version 4.9.0-8-amd64
-- - Processor x86_64
--
-- Build
-- - Compiler /usr/bin/c++ (GNU)
-- - Extra compilation flags -std=c++98 -fpermissive
-- - Qt 4.8.7
-- - Unit tests disabled
-- - Startup script systemd
-- - Module stats, neb, notification, correlation, dumper, rrd, sql, storage, lua, influxdb, graphite, bam, tcp, tls
--
-- Install
-- - Prefix /usr
-- - Binary prefix /usr/sbin
-- - Library prefix /usr/lib/centreon-broker
-- - Modules prefix /usr/share/centreon/lib/centreon-broker
-- - Include prefix /usr/include/centreon-broker
-- - Configuration prefix /etc/centreon-broker
-- - Startup dir /lib/systemd/system
-- - User centreon-broker
-- - Group centreon-broker
-- - Package None
--
-- Configuring done
-- Generating done
-- Build files have been written to: /usr/local/src/centreon-broker-19.04.0/build
Ensuite compilons cette configuration et installons dans le système de fichiers.
make
make install
Mettre le service cbd en démarrage automatique.
systemctl enable cbd.service
systemctl daemon-reload
L'installation de Centreon-Broker est terminée, il faut passer à l’installation de Centreon. Si vous n’avez pas configuré SNMP, il est temps de le faire.
 

7 Installation du protocole SNMP

Debian > 8.0 amène son lot de nouveautés. La gestion des traps SNMP exige l’installation d’un paquet supplémentaire.

7.1 Pré requis

Installons les paquets nécessaires pour le SNMP
apt-get install snmp snmpd snmptrapd libnet-snmp-perl libsnmp-perl -y

7.2 Paramétrages

Pour le fonctionnement du SNMP, modifiez le fichier /etc/snmp/snmpd.conf
agentAddress udp:localhost:161
rocommunity public localhost

trapsink localhost public
Pour éviter d’avoir un deamon snmpd trop bavard, (réduction des logs), modifier le fichier /lib/systemd/system/snmpd.service
.....
ExecStart=/usr/sbin/snmpd -LS4d -Lf /dev/null -u Debian-snmp -g Debian-snmp -I -smux,mteTrigger,mteTriggerConf -f
.....
Et pour recevoir les traps modifier le fichier /etc/default/snmptrapd
.....
TRAPDRUN=yes

# snmptrapd options (use syslog).
TRAPDOPTS='-On -Lsdf /var/log/snmptrapd.log -p /run/snmptrapd.pid'
.....

7.3 Installation des mibs

7.3a 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/ stretch main non-free
deb-src http://ftp.fr.debian.org/debian/ stretch main non-free
Faites une mise à jour
apt-get update

7.3b Ajout des mibs

Il vous reste à rajouter les mibs
apt-get install snmp-mibs-downloader -y

7.3c Modification de la configuration SNMP

Commentez la ligne du fichier /etc/snmp/snmp.conf
#mibs ALL
Redémarrez le service SNMP
systemctl daemon-reload
systemctl restart snmpd snmptrapd

7.3d 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.
 

8 Installation de Centreon Web

Stacks Image 33996
L’installation de l’interface graphique de Centreon se fait en deux temps. Premièrement, commencez votre installation en ligne de commande, puis terminez par l’utilisation de l’interface Web.

8.1 Pré requis

Tout d'abord, Il faudra créer un utilisateur centreon
groupadd -g 6000 centreon
useradd -u 6000 -g centreon -m -r -d /var/lib/centreon -c "Centreon Admin" -s /bin/bash centreon
Rajoutez l'utilisateur centreon-broker dans le groupe centreon. Ceci permettra au broker de créer les fichier RRD.
usermod -aG centreon centreon-broker
La nouvelle version de Centreon impose la version 7.1 de PHP. Nous allons installer le dépôt correspondant à cette version.
apt-get install apt-transport-https lsb-release ca-certificates -y
wget -O /etc/apt/trusted.gpg.d/php.gpg https://packages.sury.org/php/apt.gpg
echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" >> /etc/apt/sources.list.d/php.list
apt-get update
Nous allons installer apache et php en mode fpm.
apt-get install php7.1 php7.1-opcache libapache2-mod-php7.1 php7.1-mysql php7.1-curl php7.1-json php7.1-gd php7.1-mcrypt php7.1-intl php7.1-mbstring php7.1-xml php7.1-zip php7.1-fpm php7.1-readline -y
Il faut aussi installer des paquets supplémentaires. Pour Debian 9, privilégiez le serveur de base de données MariaDB.
apt-get install php7.1-sqlite3 php-pear sudo tofrodos bsd-mailx lsb-release mariadb-server libconfig-inifiles-perl libcrypt-des-perl libdigest-hmac-perl libdigest-sha-perl libgd-perl php7.1-ldap php7.1-snmp php-db php-date -y

8.1a Installation de l'extension ionCube Loader

Pour utiliser les modules spécifiques de Centreon, il faut activer l'extension ionCube pour php. Installer l'archive.
cd /usr/local/src
wget https://downloads.ioncube.com/loader_downloads/ioncube_loaders_lin_x86-64.tar.gz
tar xzf ioncube_loaders_lin_x86-64.tar.gz
cd ioncube
Il faut identifier la version du php pour être en adéquation avec la librairie IonCube. Lancez la commande suivante :
php -v

résultat
PHP 7.1.30-1+0~20190531112602.19+stretch~1.gbpab9d28 (cli) (built: May 31 2019 11:26:03) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.1.0, Copyright (c) 1998-2018 Zend Technologies
with Zend OPcache v7.1.30-1+0~20190531112602.19+stretch~1.gbpab9d28, Copyright (c) 1999-2018, by Zend Technologies
Nous utiliserons la version ioncube_loader_lin_7.1.so, il faudra copier cette librairie dans le dossier des extensions. Pour connaître le chemin, lancez la commande suivante :
php -i | grep extension_dir

résultat
extension_dir => /usr/lib/php/20160303 => /usr/lib/php/20160303
sqlite3.extension_dir => no value => no value
Copiez la librairie.
cp ioncube_loader_lin_7.1.so /usr/lib/php/20160303
Maintenant, éditez les fichiers de configuration du php pour ajouter le paramètre suivant après la ligne ;zend.script_encoding =
zend_extension=/usr/lib/php/20160303/ioncube_loader_lin_7.1.so
Les fichiers de configuration sont les suivants :
/etc/php/7.1/apache2/php.ini
/etc/php/7.1/cli/php.ini
/etc/php/7.1/fpm/php.ini
Activons les modules
a2enmod proxy_fcgi setenvif proxy rewrite
a2enconf php7.1-fpm
a2dismod php7.1
systemctl restart apache2 php7.1-fpm
Vérifions le fonctionnement de la librairie ionCube.
php -v

résultat
PHP 7.1.30-1+0~20190531112602.19+stretch~1.gbpab9d28 (cli) (built: May 31 2019 11:26:03) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.1.0, Copyright (c) 1998-2018 Zend Technologies
with the ionCube PHP Loader + ionCube24 v10.3.5, Copyright (c) 2002-2019, by ionCube Ltd.
with Zend OPcache v7.1.30-1+0~20190531112602.19+stretch~1.gbpab9d28, Copyright (c) 1999-2018, by Zend Technologies
Nouveauté avec la version 19.04.0, il faut obligatoirement configurer le paramètre date.timezone pour le php-fpm. Pour cela, éditez le fichier de configuration pour apache. Attention, bien respectez la casse et ne pas mettre d'espace.
vi /etc/php/7.1/fpm/php.ini
Saisissez la valeur adaptée à votre configuration.
[Date]
; Defines the default timezone used by the date functions
; http://php.net/date.timezone
date.timezone = Europe/Paris

8.1b Installation de la librairie perl RRDs.pm

Pour les statistiques des moteurs, nous devons installer la librairie RRDs.pm à partir des sources.
cd /usr/local/src/rrdtool-1.4.7/bindings/perl-shared
perl Makefile.PL
make test
make install
Vous éviterez cette erreur dans le fichier de log /var/log/centreon/nagiosPerfTrace.log
Can't locate RRDs.pm in @INC (you may need to install the RRDs module) (@INC contains: /etc/perl /usr/local/lib/x86_64-linux-gnu/perl/5.24.1 /usr/local/share/perl/5.24.1 /usr/lib/x86_64-linux-gnu/perl5/5.24 /usr/share/perl5 /usr/lib/x86_64-linux-gnu/perl/5.24 /usr/share/perl/5.24 /usr/local/lib/site_perl /usr/lib/x86_64-linux-gnu/perl-base) at /usr/share/perl5/centreon/script/nagiosPerfTrace.pm line 38.
BEGIN failed--compilation aborted at /usr/share/perl5/centreon/script/nagiosPerfTrace.pm line 38.
Compilation failed in require at /usr/share/centreon/cron/nagiosPerfTrace line 35.
BEGIN failed--compilation aborted at /usr/share/centreon/cron/nagiosPerfTrace line 35.

8.2 Installation en ligne de commande

Téléchargez le binaire du 24/04/2019 dans le dossier /usr/local/src et décompressez-le.
cd /usr/local/src
wget http://files.download.centreon.com/public/centreon/centreon-web-19.04.0.tar.gz
tar xzf centreon-web-19.04.0.tar.gz
Lancez la ligne de commande ci-dessous pour débuter l'installation.
cd centreon-web-19.04.0
./install.sh -i
Au lancement du script, le programme confirme si toutes les dépendances sont satisfaites. Bon la version est restée en 18.10.3 mais ce n'est pas grave ;-)
###############################################################################
#                                                                             #
#                         Centreon (www.centreon.com)                         #
#                          Thanks for using Centreon                          #
#                                                                             #
#                                    v18.10.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. A l'heure ou j'écris cet article, le fichier de licence est manquant mais cela ne gêne pas le déroulement de l'installation.
more: échec de stat sur /usr/local/src/centreon-web-19.04.0/LICENSE: Aucun fichier ou dossier de ce type

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. Ici, on nous demande où installer Centreon UI. Saisissez le chemin indiqué ci-dessous.
------------------------------------------------------------------------ 
        Start CentWeb Installation
------------------------------------------------------------------------

Where is your Centreon directory?
default to [/usr/local/centreon]
>/usr/share/centreon
Path /usr/share/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]
> /var/log/centreon

Do you want me to create this directory ? [/var/log/centreon]
[y/n], default to [n]:
> y
Path /var/log/centreon                                     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. Il faudra saisir le chemin du rrdtool compilé précédemment et le chemin du fichier PEAR.php. Il y a une petite erreur pour la prise en compte de la configuration centreon pour le serveur Apache. Celle-ci sera corrigé avec la procédure décrite plus bas avec l’installation en mode ligne de commande.
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 variable library directory?
default to [/var/lib/centreon]
>
Path /var/lib/centreon                                     OK

Where is rrdtool
default to [/usr/bin/rrdtool]
> /opt/rddtool-broker/bin/rrdtool
/opt/rddtool-broker/bin/rrdtool                            OK
/usr/bin/mail                                              OK
/usr/bin/php                                               OK
/usr/bin/composer                                          OK

Where is your php binary ?
default to [/usr/bin/php]
>
/usr/bin/php                                               OK

Where is PEAR [PEAR.php] 
default to [/usr/share/pear/PEAR.php]
> /usr/share/php/PEAR.php 
Path /usr/share/php                                        OK
/usr/bin/perl                                              OK
Check PHP version
Check PHP modules
	ldap		                                   OK
	xmlwriter		                           OK
	mbstring		                           OK
	pdo_mysql		                           OK
	pdo_sqlite		                           OK
	gd		                                   OK
	intl		                                   OK
Enable Apache configuration                                OK
ERROR: Conf centreon does not exist!
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
What is the Centreon group ? [centreon]
default to [centreon]
> 

What is the Centreon user ? [centreon]
default to [centreon]
> 
Laissez les valeurs par défaut.
What is the Monitoring engine user ? [centreon-engine]
default to [centreon-engine]
>

What is the Broker user ? [centreon-broker]
default to [centreon-broker]
>

What is the Monitoring engine log directory ? [/var/log/centreon-engine]
default to [/var/log/centreon-engine]
>

Path                                                       OK
Path                                                       OK
Add group centreon to user www-data                        OK
Add group centreon to user centreon-engine                 OK
Add group centreon-engine to user www-data                 OK
Add group centreon-engine to user centreon                 OK
Add group www-data to user centreon                        OK
Configuration des commandes utilisées par Sudo. Validez les chemins par défaut et surtout répondre y pour la création du fichier /etc/sudoers.d/centreon et pour la configuration de sudo.
------------------------------------------------------------------------
	Configure Sudo
------------------------------------------------------------------------

Where is sudo configuration file
default to [/etc/sudoers.d/centreon]
>

Do you want me to create this file ? [/etc/sudoers.d/centreon]
[y/n], default to [n]:
> y
/etc/sudoers.d/centreon

What is the Monitoring engine binary ? [/usr/sbin/centengine]
default to [/usr/sbin/centengine]
>

What is the Monitoring engine configuration directory ? [/etc/centreon-engine]
default to [/etc/centreon-engine]
>

Where is the configuration directory for broker module ? [/etc/centreon-broker]
default to [/etc/centreon-broker]
>

Where is your service command binary ?
default to [/usr/sbin/service]
>
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. Laissez par défaut en répondant y, un warning pour le démarrage du PHP FPM sans importance
------------------------------------------------------------------------
	Configure Apache server
------------------------------------------------------------------------

Do you want to add Centreon Apache sub configuration file ?
[y/n], default to [n]:
> y
Create '/etc/apache2/conf-available/centreon.conf'         OK
Configuring Apache                                         OK

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

------------------------------------------------------------------------
	Configure PHP FPM service
------------------------------------------------------------------------

Do you want to add Centreon PHP FPM sub configuration file ?
[y/n], default to [n]:
> y
Creating directory /var/lib/centreon/sessions              OK
Create '/etc/php/7.1/fpm/pool.d/centreon.conf'             OK
Configuring PHP FPM                                        OK

Do you want to reload PHP FPM service ?
[y/n], default to [n]:
> y
Reloading PHP FPM service                                  OK
Preparing Centreon temporary files
Change right on /var/log/centreon                          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 php config file                          OK
Change macros for perl binary                              OK
Change right on /etc/centreon-engine                       OK
Add group centreon-broker to user www-data                 OK
Add group centreon-broker to user centreon-engine          OK
Add group centreon to user centreon-broker                 OK
Change right on /etc/centreon-broker                       OK
Copy CentWeb in system directory
Install CentWeb (web front of centreon)                    OK
Change right for install directory                         OK
Install libraries                                          OK
Write right to Smarty Cache                                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
Change macros for centreon-backup.pl                       OK
Install cron directory                                     OK
Change right for eventReportBuilder                        OK
Change right for dashboardBuilder                          OK
Change right for centreon-backup.pl                        OK
Change right for centreon-backup-mysql.sh                  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
Prepare generateSqlLite                                    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
Prepare clapi binary                                       OK
Install clapi binary                                       OK
Centreon Web Perl lib installed                            OK

------------------------------------------------------------------------
Pear Modules
------------------------------------------------------------------------
Check PEAR modules
PEAR                            1.4.9       1.10.8         OK
DB                              1.7.6       1.9.2          OK
Date                            1.4.6       1.4.7          OK
All PEAR modules                                           OK

------------------------------------------------------------------------
		Centreon Post Install
------------------------------------------------------------------------
Create /usr/share/centreon/www/install/install.conf.php    OK
Create /etc/centreon/instCentWeb.conf                      OK
Nous continuons avec l'installation de CentStorage. Laissez par défaut et y pour le lancement du service.
------------------------------------------------------------------------
	Starting 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/share/centreon/bin]
>
Path /usr/share/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
Change right : /var/run/centreon                           OK
Install logAnalyserBroker                                  OK
Install nagiosPerfTrace                                    OK
Change macros for centstorage.cron                         OK
Install CentStorage cron                                   OK
Create /etc/centreon/instCentStorage.conf                  OK
Installation du module CentCore. Laissez par défaut, installez le script centcore.
------------------------------------------------------------------------
	Starting CentCore Installation
------------------------------------------------------------------------

Where is your CentCore binary directory
default to [/usr/share/centreon/bin]
>
Path /usr/share/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: warning: start and stop actions are no longer supported; falling back to defaults
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. Attention, modifiez le chemin des binaires de Centreontrapd.
------------------------------------------------------------------------
	Starting CentreonTrapD Installation
------------------------------------------------------------------------
Path                                                       OK
Path                                                       OK

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/share/centreon/bin
/usr/share/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: warning: start and stop actions are no longer supported; falling back to defaults
trapd Perl lib installed                                   OK
Install : snmptrapd.conf                                   OK
Install : centreontrapdforward                             OK
Install : centreontrapd                                    OK
Change macros for centreontrapd.logrotate                  OK
Install Centreon Trapd logrotate.d file                    OK
Create /etc/centreon/instCentPlugins.conf                  OK
###############################################################################
#                                                                             #
#                 Go to the URL : http://debian-test9/centreon/                    #
#                   	     to finish the setup                              #
#                                                                             #
#           Report bugs at https://github.com/centreon/centreon/issues        #
#                                                                             #
#                         Thanks for using Centreon.                          #
#                          -----------------------                            #
#                        Contact : infos@centreon.com                         #
#                          http://www.centreon.com                            #
#                                                                             #
###############################################################################
Avant de continuer l'installation, installer PHP composer
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
php composer-setup.php --install-dir=/usr/bin --filename=composer
Lancer la commande suivante dans le dossier /usr/share/centreon
cd /usr/share/centreon
composer install --no-dev --optimize-autoloader
Nous allons procéder à quelques rectifications. Ensuite, il faudra préparer l'interface Web en compilant NodeJS.
Modifier les fichiers qui n'ont pas eu la bonne information pour le chemin du php.
sed -i -e 's/_CENTREON_PATH_PLACEHOLDER_/centreon/g' /usr/share/centreon/www/index.html
sed -i -e 's/@PHP_BIN@/\/usr\/bin\/php/g' /usr/share/centreon/bin/centreon
sed -i -e 's/@PHP_BIN@/\/usr\/bin\/php/g' /usr/share/centreon/bin/export-mysql-indexes
sed -i -e 's/@PHP_BIN@/\/usr\/bin\/php/g' /usr/share/centreon/bin/generateSqlLite
sed -i -e 's/@PHP_BIN@/\/usr\/bin\/php/g' /usr/share/centreon/bin/import-mysql-indexes

8.2a Installation des dépendances Javascript

Installez les paquets nécessaires à l'environnement d'exécution javascript nodejs.
apt-get install curl
curl -sL https://deb.nodesource.com/setup_8.x | bash -
apt-get install -y nodejs
Copiez les fichiers suivants pour pouvoir compiler avec nodejs
cp /usr/local/src/centreon-web-19.04.0/webpack.config.js /usr/share/centreon
cp /usr/local/src/centreon-web-19.04.0/.babelrc /usr/share/centreon/
Modifiez le fichier package.json pour apache
sed -i -e 's/apache/www-data/g' /usr/share/centreon/package.json
Positionnez-vous dans le dossier principal de Centreon et exécutez les commandes suivantes.
cd /usr/share/centreon
npm install
npm run build
npm prune --production
Pour éviter les problèmes de droit pour les fichiers temporaires des plugins Centreon, modifiez les droits pour le dossier /var/lib/centreon/centplugins
chmod 775 /var/lib/centreon/centplugins
chown centreon: /var/lib/centreon/centplugins

8.3 Installation des modules Centreon

Nous allons maintenant installer les modules centreon-pp-manager et centreon-licence-manager

8.3a Module centreon-licence-manager

Installons l'archive
cd /usr/local/src
wget http://files.download.centreon.com/public/centreon-license-manager/centreon-license-manager-19.04.0-php71.tar.gz
tar xzf centreon-license-manager-19.04.0-php71.tar.gz
cd centreon-license-manager-19.04.0-php71
Copions les fichiers suivants dans le dossier Centreon
cd src
cp -r CentreonLicense /usr/share/centreon/src
Installer l'outil gulp
apt-get install software-properties-common -y
npm install bower -g
npm install -g gulp
Positionnez-vous dans le dossier app du module et compiler les sources
cd /usr/local/src/centreon-license-manager-19.04.0-php71/www/modules/centreon-license-manager/frontend/app/
npm install
gulp
Copiez le dossier du module dans le répertoire prévu à cet effet.
cd ../../..
cp -r centreon-license-manager /usr/share/centreon/www/modules/

8.3b Module centreon-pp-manager

Installons l'archive
cd /usr/local/src
wget http://files.download.centreon.com/public/centreon-pp-manager/centreon-pp-manager-19.04.0-php71.tar.gz
tar xzf centreon-pp-manager-19.04.0-php71.tar.gz
cd centreon-pp-manager-19.04.0-php71
Copiez le dossier du module dans le répertoire prévu à cet effet.
cd www/modules/
cp -r centreon-pp-manager /usr/share/centreon/www/modules/
Changer les droits des modules
cd /usr/share/centreon/www/modules
chown -R www-data: *
Créez le dossier pour les licences
mkdir /etc/centreon/license.d
chmod 775 /etc/centreon/license.d
chown centreon: /etc/centreon/license.d
Il faut terminer l’installation en mode Web.
 

8.4 Installation en mode Web

Avec Debian 9.0, il faut autoriser la configuration Centreon pour le serveur Web Apache
a2enconf centreon.conf
Relancez la configuration.
systemctl restart apache2 php7.1-fpm
Utilisez un navigateur internet récent et saisissez l’url suivante :
http://<ip du serveur centreon>/centreon/
Stacks Image 35865
Démarrage de l'installation Web, cliquez sur "Next"
Stacks Image 35886
L’écran suivant vous indique que la package php7-intl n’est pas installé et que vous n’avez pas configuré le fuseau horaire dans le php.ini du serveur fpm.
Stacks Image 48593
Validation des dépendances, cliquez sur "next".
Stacks Image 35907
Saisissez les chemins ci-dessous.
Centreon Engine directory:			/usr/sbin/
Centreon Engine Stats binary:			/usr/sbin/centenginestats
Centreon Engine var lib directory:		/var/lib/centreon-engine
Centreon Engine Connector path:			/usr/lib/centreon-connector
Centreon Engine Library (*.so) directory:	/usr/lib/centreon-engine/
Centreon Plugins Path:				/usr/lib/centreon/plugins
Stacks Image 35928
Saisissez les chemins ci-dessous.
Centreon Broker etc directory:		/etc/centreon-broker
Centreon Broker module (cbmod.so):	/usr/lib/centreon-broker/cbmod.so
Centreon Broker log directory:		/var/log/centreon-broker
Retention file directory:		/var/lib/centreon-broker
Centreon Broker lib (*.so) directory:	/usr/share/centreon/lib/centreon-broker
Auparavant, il faudra créer le dossier /var/log/centreon-broker et donner la permission au processus centengine d'écrire le fichier de statistique.
mkdir /var/log/centreon-broker
chown centreon-broker:centreon-broker  /var/log/centreon-broker
chmod 775 /var/log/centreon-broker

chmod 775 /var/lib/centreon-broker
chown centreon: /var/lib/centreon-broker
Cliquez sur Next
Stacks Image 35952
Création du user "Administrateur", admin et son mot de passe. Saisir une adresse valide pour l’email. Cliquez sur Next.
Stacks Image 35981
Définir les Accès MySQL, le mot de passe de MySQL. Laisser les noms de base par défaut CENTREON, CENTSTORAGE. Saisir le mot de passe pour ces bases de données.
Stacks Image 1118162
Remarques droit Mysql avec Stretch
Pour effectuer des tests rapides sur une installation de préprod, vous pouvez désactiver la sécurité en utilisant root sans mot de passe. Pour cela, ouvrir une session mysql.
mysql
MariaDB [(none)]> use mysql;
MariaDB [mysql]> update user set plugin='' where user='root';
MariaDB [mysql]> flush privileges;
Afin de pouvoir partitioner certaines tables de la base centreon_storage, modifiez le fichier de configuration systemd de MySQL /lib/systemd/system/mariadb.service. Modifiez la ligne suivante.
Remplacez
LimitNOFILE=16364
par
LimitNOFILE=32000
Redémarrez le serveur MySql en prenant compte les modifications.
systemctl daemon-reload
systemctl restart mysql
Cliquez sur Next
Stacks Image 35998
Stacks Image 1118310
Problème avec le paramètre LimitNOFILE et MariaDB 10.1.38
La dernière mise à jour de Debian avec MariaDB 10.1.38 semble poser problème avec la configuration de systemd et LimitNOFILE. Le processus de création des tables Centreon ne fonctionne pas comme le montre cette copie d'écran.

LimitNOFILE

Pourtant la configuration a bien pris en compte le paramètre LimitNOFILE en vérifiant avec la commande suivante :

cat /proc/$(pidof mysqld)/limits | egrep 'Limit|open files'
Limit Soft Limit Hard Limit Units
Max open files 32000 32000 files

Par contre, lorsqu'on vérifie la valeur dans MariaDB, on constate une autre valeur
mysql
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 5
Server version: 10.1.38-MariaDB-0+deb9u1 Debian 9.8

Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

MariaDB [(none)]> show global variables like 'open_files_limit';
+------------------+-------+
| Variable_name | Value |
+------------------+-------+
| open_files_limit | 4184 |
+------------------+-------+
1 row in set (0.00 sec)

MariaDB [(none)]>

La parade sera la suivante, éditez ou créez le fichier /etc/mysql/conf.d/centreon.cnf et ajoutez les lignes suivantes :
[mysqld]
open_files_limit=32000

Stacks Image 1118165
Problème timeout pour le Partitionning
Avec certaines installation un juste au niveau RAM, le processus de partition de base de données peut se bloquer.
timeout_partitionning
Voici le message d'erreur que vous trouverez dans le fichier de log d'apache.
[proxy_fcgi:error] [pid 30958] (70007)The timeout specified has expired: [client 192.168.0.10:63020] AH01075: Error dispatching request to : (polling), referer: http://192.168.0.217/centreon/install/install.php

Pas de panique, fermer la fenêtre d'installation et saisir de nouveau l'url http://<ip du serveur centreon>/centreon/, vous tomberez dans un processus d'upgrade et vous pourrez finaliser l'installation.
Cliquez sur Next
Stacks Image 1118134
Installez les modules, cliquez sur Install
Stacks Image 1118430
Les modules sont installés, cliquez sur next
Stacks Image 36037
Fin de l'installation, cliquez sur Finish
Stacks Image 1117923
Vous devriez avoir cette vue.
Stacks Image 1118089

8.5 Préparation de la configuration

8.5a Installation du module centreon-autodiscovery

Avertissement : Ce module n'est pas fonctionnel avec Debian, il permet de ne pas avoir les plugin pas libre sans erreur.
Nous allons pouvoir utiliser les plugins-pack Centreon pour réaliser notre première configuration. Mais avant pour éviter d'avoir des message d'erreur lié au module autodiscovery, nous allons installer ce module.
cd /usr/local/src
wget http://files.download.centreon.com/public/centreon-autodiscovery/centreon-autodiscovery-19.04.0-php71.tar.gz
tar xzf centreon-autodiscovery-19.04.0-php71.tar.gz
cd centreon-autodiscovery-19.04.0-php71
Avant de réaliser l'installation, renseignez la variable PLUGIN_DIR du fichier /etc/centreon/instCentPlugins.conf
vi /etc/centreon/instCentPlugins.conf
modifiez
PLUGIN_DIR=/usr/lib/nagios/plugins
Modifiez les droits du fichier install.sh
chmod +x install.sh
Lancez l'installation
./install.sh -i
A l'invite de commande, saisissez le chemin des fichiers de configuration de Centreon.
################################################################################
#                                                                              #
#                 Thanks for using Centreon Auto Discovery                     #
#                                 v 18.10.5                                    #
#                                                                              #
################################################################################
------------------------------------------------------------------------
	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

------------------------------------------------------------------------
	Load parameters
------------------------------------------------------------------------
Please specify the directory with contain "instCentWeb.conf"
> /etc/centreon
Parameters was loaded with success                         OK

------------------------------------------------------------------------
	Install centreon-autodiscovery-server
------------------------------------------------------------------------
Setting right                                              OK
Setting owner/group                                        OK
Changing macro                                             OK
Copying module                                             OK

------------------------------------------------------------------------
	Install Centreon Auto Discovery cron
------------------------------------------------------------------------
Removal of the old auto disco cron:                        OK
Changing macro                                             OK
Copy cron in cron.d directory:                             OK


Installation of centreon-autodiscovery-server is finished  OK
See README and the log file for more details.

------------------------------------------------------------------------
	Install Centreon Auto Discovery plugins
------------------------------------------------------------------------
Setting right                                              OK
Setting owner/group                                        OK
Copying plugins                                            FAIL
Ne tenez pas compte du message d'erreur, le module est installé. Copiez les derniers fichiers dans le dossier src de Centreon
cd src
cp -r CentreonAutoDiscovery /usr/share/centreon/src
Connectez-vous sur l'interface Web. Sélectionnez le menu Administration -> Extension -> Manager
Stacks Image 1118459
Le plugin est installé, ne tenez pas compte du message "License is not valid". Cliquez sur le bouton Install All.
Stacks Image 1118464
Le plugin est actif, vous n'aurez pas de message d'erreur lors de l'installation des plugins-pack. Pour obtenir les icônes des plugin-packs, modifiez les droits de ce dossier.
chmod 775 /usr/share/centreon/www/img/media

8.5b Configuration des macro Resources

Il faudra aussi renseigner la valeur de la macro $USER1$, cliquez sur Configuration -> Pollers -> Resources. Modifiez la valeur avec le chemin des plugins historique /usr/lib/nagios/plugins
Stacks Image 1118275

8.6 Lancement des services et application de la configuration

Démarrez les services ci-dessous :
systemctl start cbd
systemctl start centcore
systemctl start centreontrapd
 

8.6a création d'un cgroup centreon

Les scripts systemd pour le démarrage du moteur et du broker ont subi une modification avec la version 19.04. Les processus démarrent avec un cgroup (groupe de processus) centreon. Malheureusement, celui-ci n'est pas créé automatiquement, ce qui provoque cette erreur ci-dessous après un redémarrage de Centreon.
Stacks Image 1118317
Nous allons créer ce cgroup manuellement. créez le fichier /lib/systemd/system/centreon.service.
vi /lib/systemd/system/centreon.service
Saisissez les lignes suivantes
[Unit]
Description=Cgroup Centreon

[Service]
Type=oneshot
ExecStart=/bin/true
ExecReload=/bin/true
RemainAfterExit=yes

[Install]
WantedBy=multi-user.target
Activez le cgroup.
systemctl daemon-reload
systemctl enable centreon
Au redémarrage du serveur, le cgroup centreon va démarrer les services cbd et centengine.

8.6b Premier démarrage du moteur

Appliquer la configuration pour démarrer le moteur de supervision. Sélectionnez le menu Configuration / Pollers. Sélectionnez le poller et cliquez sur Export configuration.
Stacks Image 1118475
Cochez les quatre premières cases à cochez (attention, il est conseillé de le faire en deux fois quand la supervision est en production). Sélectionnez la méthode restart et appliquez.
Stacks Image 1118480
Au bout de quelques secondes, vous devriez voir le moteur en fonctionnement.
Stacks Image 1118485

8.6c Première configuration

Activer les plugins-pack. Sélectionnez le menu Configuration -> Plugins-Pack
Stacks Image 1118494
Créez votre premier hôte, nous superviserons le Central. Cliquez sur Configuration -> Host. Cliquez sur Add.
Stacks Image 1118499
Sauvegardez et appliquez la configuration. Au bout de quelques secondes, vous devriez voir apparaître les services en état pending dans la vue Temps réels
Stacks Image 1118170
Stacks Image 1118343
Erreur des plugins avec le message Execute command failed
Vous pouvez rencontrer ce type d'erreur lors de l'application de la configuration, car la chemin de la commande du plugin n'est pas correct.

Pasted Graphic

Il faudra renseigner la valeur de la macro $USER1$, cliquez sur Configuration -> Pollers -> Resources. Modifiez la valeur avec le chemin des plugins historique /usr/lib/nagios/plugins

macro_user1

Ensuite, vous devriez voir apparaître les hôtes et services dans la barre d'état en haut à droite.
Stacks Image 6174
Hôte et services de la barre d'état
Votre supervision est en état de fonctionnement
Stacks Image 6195
Il faut modifier ces trois services pour un fonctionnement optimal. Relançons le service ntp.
systemctl restart ntp
Modifiez le service proc-httpd en remplaçant le nom de processus httpd par apache2
Stacks Image 1118508
Modifiez le service proc-crond en remplaçant le nom de processus crond par cron
Stacks Image 1118513
Appliquez de nouveau la configuration et admirez le résultat
Stacks Image 1118518
 

8.7 Installation des widgets

Téléchargez les binaires des widgets compatibles avec cette version.
cd /usr/local/src
wget http://files.download.centreon.com/public/centreon-widgets/centreon-widget-graph-monitoring/centreon-widget-graph-monitoring-19.04.0.tar.gz
wget http://files.download.centreon.com/public/centreon-widgets/centreon-widget-service-monitoring/centreon-widget-service-monitoring-19.04.0.tar.gz
wget http://files.download.centreon.com/public/centreon-widgets/centreon-widget-host-monitoring/centreon-widget-host-monitoring-19.04.0.tar.gz
wget http://files.download.centreon.com/public/centreon-widgets/centreon-widget-servicegroup-monitoring/centreon-widget-servicegroup-monitoring-19.04.0.tar.gz
wget http://files.download.centreon.com/public/centreon-widgets/centreon-widget-hostgroup-monitoring/centreon-widget-hostgroup-monitoring-19.04.0.tar.gz
wget http://files.download.centreon.com/public/centreon-widgets/centreon-widget-engine-status/centreon-widget-engine-status-19.04.0.tar.gz
wget http://files.download.centreon.com/public/centreon-widgets/centreon-widget-grid-map/centreon-widget-grid-map-19.04.0.tar.gz
wget http://files.download.centreon.com/public/centreon-widgets/centreon-widget-httploader/centreon-widget-httploader-19.04.0.tar.gz
wget http://files.download.centreon.com/public/centreon-widgets/centreon-widget-tactical-overview/centreon-widget-tactical-overview-19.04.0.tar.gz
wget http://files.download.centreon.com/public/centreon-widgets/centreon-widget-live-top10-cpu-usage/centreon-widget-live-top10-cpu-usage-19.04.0.tar.gz
wget http://files.download.centreon.com/public/centreon-widgets/centreon-widget-live-top10-memory-usage/centreon-widget-live-top10-memory-usage-19.04.0.tar.gz
Décompressez les archives
tar xzf centreon-widget-grid-map-19.04.0.tar.gz
tar xzf centreon-widget-tactical-overview-19.04.0.tar.gz 
tar xzf centreon-widget-httploader-19.04.0.tar.gz
tar xzf centreon-widget-engine-status-19.04.0.tar.gz
tar xzf centreon-widget-service-monitoring-19.04.0.tar.gz
tar xzf centreon-widget-host-monitoring-19.04.0.tar.gz
tar xzf centreon-widget-servicegroup-monitoring-19.04.0.tar.gz
tar xzf centreon-widget-hostgroup-monitoring-19.04.0.tar.gz
tar xzf centreon-widget-graph-monitoring-19.04.0.tar.gz
tar xzf centreon-widget-live-top10-memory-usage-19.04.0.tar.gz
tar xzf centreon-widget-live-top10-cpu-usage-19.04.0.tar.gz
Déplaçons les widgets dans le dossier réservé à ceux-ci.
mv centreon-widget-graph-monitoring-19.04.0/graph-monitoring /usr/share/centreon/www/widgets/
mv centreon-widget-service-monitoring-19.04.0/service-monitoring/ /usr/share/centreon/www/widgets/
mv centreon-widget-host-monitoring-19.04.0/host-monitoring/ /usr/share/centreon/www/widgets/
mv centreon-widget-servicegroup-monitoring-19.04.0/servicegroup-monitoring/ /usr/share/centreon/www/widgets/
mv centreon-widget-hostgroup-monitoring-19.04.0/hostgroup-monitoring/ /usr/share/centreon/www/widgets/
mv centreon-widget-grid-map-19.04.0/grid-map/ /usr/share/centreon/www/widgets/
mv centreon-widget-httploader-19.04.0/httploader/ /usr/share/centreon/www/widgets/
mv centreon-widget-tactical-overview-19.04.0/tactical-overview/ /usr/share/centreon/www/widgets/
mv centreon-widget-engine-status-19.04.0/engine-status /usr/share/centreon/www/widgets/
mv centreon-widget-live-top10-cpu-usage-19.04.0/live-top10-cpu-usage/ /usr/share/centreon/www/widgets/
mv centreon-widget-live-top10-memory-usage/live-top10-memory-usage/ /usr/share/centreon/www/widgets/
Authentifiez-vous sur l’interface Web de Centreon. Sélectionnez Administration / Extensions / Manager
Stacks Image 1117980
Les widgets sont installés prêt à être activés.
Il est possible d'activer tous les widgets en une seule commande. Cliquez sur le bouton Install all.
Stacks Image 1118185
Validez l'installation.
Les widgets sont installées.
Stacks Image 1118182
Les widgets sont installés prêt à être activés.
comments powered by Disqus
comments powered by Disqus