Une fois n'est pas coutume, je vais vous présenter la procédure d'installation des sources de Centreon sur un CentOS 7. Cette procédure sera utile pour les administrateurs voulant réaliser une installation non-standard avec des chemins d'installation différent. J'attire votre attention qu'il ne sera pas possible d'installer les plugins-pack de Centreon.
1 Préparation de la VM
Selinux et le parefeu doivent être désactivés.
sed -i s/^SELINUX=.*$/SELINUX=disabled/ /etc/selinux/config
systemctl stop firewalld
systemctl disable firewalld
reboot
Rien de compliqué, il suffit de suivre la procédure Installation V7. Ensuite veuillez installer les paquets suivants :
yum install -y cpp gcc gcc-c++ libstdc++ glib2-devel cmake wget
2 Installation de Centreon Clib
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.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.10.0.tar.gz
tar xzf centreon-clib-19.10.0.tar.gz
cd centreon-clib-19.10.0
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.10.0
-- - With shared library Yes
-- - With static library No
--
-- System
-- - Name Linux
-- - Version 3.10.0-1062.el7.x86_64
-- - Processor x86_64
--
-- Build
-- - Compiler /usr/bin/c++ (GNU)
-- - Extra compilation flags -std=c++11
-- - 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.10.0
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.
3 Installation des connecteurs Centreon
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.
yum install -y perl-devel perl-ExtUtils-Embed
L'installation, au préalable, de Centreon Clib est obligatoire.
3.1.b Installation
La dernière version stable est la 19.10.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-connectors/centreon-connectors-19.10.1.tar.gz
tar xzf centreon-connectors-19.10.1.tar.gz
cd centreon-connectors-19.10.1/perl/build
Préparons la compilation.
cmake \
-DWITH_PREFIX=/usr \
-DWITH_PREFIX_BINARY=/usr/lib64/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.10.1
--
-- System
-- - Name Linux
-- - Version 3.10.0-1062.el7.x86_64
-- - Processor x86_64
--
-- Build
-- - Compiler /usr/bin/c++ (GNU)
-- - Extra compilation flags -D_REENTRANT -D_GNU_SOURCE -fno-strict-aliasing -pipe -fstack-protector -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I/usr/lib64/perl5/CORE
-- - Unit tests disabled
--
-- Install
-- - Prefix /usr
-- - Binary prefix /usr/lib64/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-connectors-19.10.1/perl/build
Ensuite compilons cette configuration et installons dans le dossier /usr/lib/centreon-connector/
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.
yum install -y libssh2-devel libgcrypt-devel
3.2.b Installation
Dirigez-vous dans le dossier pour le connecteur SSH
cd /usr/local/src/centreon-connectors-19.10.1/ssh/build
Préparons la compilation (même compilation que précédemment)
cmake \
-DWITH_PREFIX=/usr \
-DWITH_PREFIX_BINARY=/usr/lib64/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.10.1
-- - Known hosts check disabled
--
-- System
-- - Name Linux
-- - Version 3.10.0-1062.el7.x86_64
-- - Processor x86_64
--
-- Build
-- - Compiler /usr/bin/c++ (GNU)
-- - Extra compilation flags
-- - Unit tests disabled
--
-- Install
-- - Prefix /usr
-- - Binary prefix /usr/lib64/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-connectors-19.10.1/ssh/build
Ensuite compilons cette configuration et installons dans le dossier /usr/lib/centreon-connector/
make && make install
C'est terminé, nous pouvons continuer par l'installation de Centreon Engine.
4 Installation de Centreon Engine
Ce chapitre présente l'installation du moteur de supervision créé par l'équipe de Centreon. Nous utiliserons la dernière version 19.10. Nous en profiterons pour installer les scripts systemd.
4.1 Pré Requis
Tout d'abord, Il faudra créer un utilisateur centreon-engine
groupadd centreon-engine
useradd -g centreon-engine -m -r -d /var/lib/centreon-engine centreon-engine
L'installation, au préalable, de Centreon Clib est obligatoire.
4.2 Installation
La dernière version stable est la 19.10.15. 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.10.15.tar.gz
tar xzf centreon-engine-19.10.15.tar.gz
cd centreon-engine-19.10.15
Préparons la compilation.
cmake \
-DWITH_CENTREON_CLIB_INCLUDE_DIR=/usr/include \
-DWITH_CENTREON_CLIB_LIBRARY_DIR=/usr/lib \
-DWITH_PREFIX=/usr/share/centreon-engine \
-DWITH_PREFIX_BIN=/usr/sbin \
-DWITH_PREFIX_LIB=/usr/lib64/centreon-engine \
-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.10.15
--
-- System
-- - Name Linux
-- - Version 3.10.0-957.el7.x86_64
-- - Processor x86_64
--
-- Build
-- - Compiler /usr/bin/c++ (GNU)
-- - Extra compilation flags -std=c++11
-- - 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/share/centreon-engine
-- - Binary prefix /usr/sbin
-- - Configuration prefix /etc/centreon-engine
-- - Library prefix /usr/lib64/centreon-engine
-- - Include prefix /usr/share/centreon-engine/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.10.15
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
[1601302419] [15959] Centreon Engine 19.10.15
[1601302419] [15959]
[1601302419] [15959] Copyright 1999-2009 Ethan Galstad
[1601302419] [15959] Copyright 2009-2010 Nagios Core Development Team and Community Contributors
[1601302419] [15959] Copyright 2011-2018 Centreon
[1601302419] [15959]
[1601302419] [15959] This program is free software: you can redistribute it and/or
[1601302419] [15959] modify it under the terms of the GNU General Public License version 2
[1601302419] [15959] as published by the Free Software Foundation.
[1601302419] [15959]
[1601302419] [15959] Centreon Engine is distributed in the hope that it will be useful,
[1601302419] [15959] but WITHOUT ANY WARRANTY; without even the implied warranty of
[1601302419] [15959] MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
[1601302419] [15959] General Public License for more details.
[1601302419] [15959]
[1601302419] [15959] You should have received a copy of the GNU General Public License
[1601302419] [15959] along with this program. If not, see
[1601302419] [15959] <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
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 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.
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
Ajoutez le dépôt epel
yum install epel-release -y
Installez les paquets suivants.
yum install nagios-plugins nagios-plugins-icmp -y
Il faudra procéder à une modification des droits pour le plugin check_icmp.
chown root:centreon-engine /usr/lib64/nagios/plugins/check_icmp
chmod u+s /usr/lib64/nagios/plugins/check_icmp
5.2 Plugin Centreon
Pour utiliser la majorité des plugins Centreon, vous aurez besoin des paquets suivants.
yum install perl-core perl-XML-LibXML perl-JSON perl-libwww-perl perl-XML-XPath perl-Net-Telnet perl-Net-DNS perl-DBI perl-DBD-MySQL perl-DBD-Pg -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-20200803.tar.gz
tar xzf centreon-plugins-20200803.tar.gz
cd centreon-plugins-20200803
Le chemin utilisé pour les plugins Centreon est préconisé pour une installation centreon-web > 2.8.x. Les fichiers avec extension pl sont des fichiers perl fastpacked.
chmod +x *
mkdir -p /usr/lib/centreon/plugins
mv * /usr/lib/centreon/plugins/
6 Installation de Centreon-Broker
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. Avec la version 19.10, nous devons utiliser une version rrdtool plus récente que celle livrée en standard avec la version CentOS 7. Il faudra installer git pour installer la librairie json11. Merci à David alias Bouda1 pour son aide précieuse.
6.1 Pré requis
Tout d'abord, Il faudra créer un groupe système et un utilisateur système centreon-broker
groupadd centreon-broker
useradd -g centreon-broker -m -r -d /var/lib/centreon-broker 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
Nous devons installer une version plus récente de rrdtool.
cd /temp
wget https://yum.opennms.org/stable/centos7/rrdtool/rrdtool-devel-1.7.1-0.1.el7.x86_64.rpm
wget https://yum.opennms.org/stable/centos7/rrdtool/rrdtool-1.7.1-0.1.el7.x86_64.rpm
wget https://yum.opennms.org/stable/centos7/rrdtool/rrdtool-perl-1.7.1-0.1.el7.x86_64.rpm
yum install -y rrdtool-*
Il faut aussi installer des paquets supplémentaires.
yum install -y lua-devel qt4-devel qt4-mysql gnutls-devel git redhat-lsb-core
Assurez-vous que QT soit dans votre PATH.
export PATH="$PATH:/usr/lib64/qt4/bin"
Vous pouvez l'ajouter dans votre fichier profile.
vi ~/.bash_profile
Modifier la ligne
PATH=$PATH:$HOME/bin:/usr/lib64/qt4/bin
Rechargez les variables d'environnement
source ~/.bash_profile
6.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-broker/centreon-broker-19.10.5.tar.gz
tar xzf centreon-broker-19.10.5.tar.gz
cd centreon-broker-19.10.5
Préparons la compilation.
cmake \
-DWITH_DAEMONS='central-broker;central-rrd' \
-DWITH_GROUP=centreon-broker \
-DWITH_PREFIX=/usr \
-DWITH_PREFIX_BIN=/usr/share/centreon-broker \
-DWITH_PREFIX_CONF=/etc/centreon-broker \
-DWITH_PREFIX_LIB=/usr/lib64/nagios \
-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.10.5
--
-- System
-- - Name Linux
-- - Version 3.10.0-957.el7.x86_64
-- - Processor x86_64
--
-- Build
-- - Compiler /usr/bin/c++ (GNU)
-- - Extra compilation flags -std=c++11
-- - 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/share/centreon-broker
-- - Library prefix /usr/lib64/nagios
-- - 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.10.5
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.
7 Installation de Centreon Web
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.
7.1 Pré requis
Il faut installer le dépôt des Software collections de Red-Hat.
yum install -y centos-release-scl
Installez les paquets suivants
yum install -y \
rh-php72-php-zip \
rh-php72-php-xml \
rh-php72-php-fpm \
rh-php72-php-process \
rh-php72-php-common \
rh-php72-php-pdo \
rh-php72-php-intl \
rh-php72-php-pear \
rh-php72-php-json \
rh-php72-php-mysqlnd \
rh-php72-php-ldap \
rh-php72-php-gd \
rh-php72-php-cli \
rh-php72-php-mbstring \
rh-php72-php-snmp \
perl-DBD-MySQL \
perl-Sys-Syslog \
httpd24-httpd \
perl-DBI \
perl-DBD-MySQL \
perl-rrdtool \
perl-Crypt-DES \
perl-Digest-SHA1 \
perl-Digest-HMAC \
net-snmp-utils \
perl-Socket6 \
perl-IO-Socket-INET6 \
net-snmp \
net-snmp-libs \
dmidecode \
lm_sensors \
net-snmp-perl \
fping
Préparation de l'environnement
usermod -U apache
/opt/rh/rh-php72/root/bin/pear channel-update pear.php.net
/opt/rh/rh-php72/root/bin/pear upgrade-all
On ajoutera le chemin du php dans le PATH. éditez le fichier .bash_profile
vi ~/.bash_profile
Modifier la ligne
PATH=$PATH:$HOME/bin:/usr/lib64/qt4/bin:/opt/rh/rh-php72/root/usr/bin
Rechargez les variables d'environnement
source ~/.bash_profile
Tout d'abord, Il faudra créer un utilisateur centreon
groupadd centreon
useradd centreon -g centreon -d /var/lib/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
7.1a Installation de MariaDB 10.1x
Ajouter le dépôt
cat <<EOF | sudo tee -a /etc/yum.repos.d/MariaDB.repo
# MariaDB 10.1 CentOS repository list
# http://downloads.mariadb.org/mariadb/repositories/
[mariadb]
name = MariaDB
baseurl = http://yum.mariadb.org/10.1/centos7-amd64
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1
EOF
Il faut aussi installer la base de données MariaDB.
yum install MariaDB-server MariaDB-client -y
Ajoutez les fichiers suivants
tee /etc/systemd/system/mariadb.service.d/limitnofile.conf <<EOF
[Service]
LimitNOFILE=32000
EOF
tee /etc/my.cnf.d/centreon.cnf <<EOF
#
# Custom MySQL/MariaDB server configuration for Centreon
#
[server]
innodb_file_per_table=1
open_files_limit = 32000
key_buffer_size = 256M
sort_buffer_size = 32M
join_buffer_size = 4M
thread_cache_size = 64
read_buffer_size = 512K
read_rnd_buffer_size = 256K
max_allowed_packet = 8M
# For 4 Go Ram
#innodb_additional_mem_pool_size=512M
#innodb_buffer_pool_size=512M
# For 8 Go Ram
#innodb_additional_mem_pool_size=1G
#innodb_buffer_pool_size=1G
EOF
Il faut activer le démarrage automatique.
systemctl daemon-reload && systemctl enable mariadb && systemctl start mariadb
7.1b Configuration PHP
Nouveauté avec la version 19.10.x, 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/opt/rh/rh-php72/php.ini
Saisissez la valeur adaptée à votre configuration. Attention, bien enlever le commentaire au début de la ligne.
[Date]
; Defines the default timezone used by the date functions
; http://php.net/date.timezone
date.timezone = Europe/Paris
Activons les modules
systemctl enable rh-php72-php-fpm && systemctl start rh-php72-php-fpm && systemctl status rh-php72-php-fpm
7.1c Configuration SNMP
Ajoutons une vue pour autoriser certaines requêtes SNMP. Ajoutez les lignes suivantes dans le fichier /etc/snmp/snmpd.conf.
view centreon included .1.3.6.1
access notConfigGroup "" any noauth exact centreon none none
Activez le service et démarrez le démon.
systemctl enable snmpd && systemctl start snmpd
7.2 Installation en ligne de commande
Téléchargez le binaire du 10/08/2020 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.10.15.tar.gz
tar xzf centreon-web-19.10.15.tar.gz
cd centreon-web-19.10.15
7.2a Installation des dépendances Php
Avant de continuer l'installation, installer PHP composer
wget https://getcomposer.org/download/1.10.5/composer.phar
cp -p composer.phar /usr/local/bin/composer
chmod +x /usr/local/bin/composer
Lancer la commande pour installer les dépendances php dans le dossier d'installation de centreon-web.
[root@centos7 centreon-web-19.10.10]# composer install --no-dev --optimize-autoloader
7.2b Installation des dépendances Javascript
Installez les paquets nécessaires à l'environnement d'exécution javascript nodejs.
wget http://nodejs.org/dist/v12.8.0/node-v12.8.0-linux-x64.tar.gz
tar --strip-components 1 -xzvf node-v* -C /usr/local
Exécutez les commandes suivantes dans le dossier d'installation de centreon-web.
[root@centos7 centreon-web-19.10.10]# npm install
npm run build
Lancez la ligne de commande ci-dessous pour débuter l'installation.
./install.sh -i
Au lancement du script, le programme confirme si toutes les dépendances sont satisfaites.
###############################################################################
# #
# Centreon (www.centreon.com) #
# Thanks for using Centreon #
# #
# 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
/usr/bin/chmod OK
/usr/bin/chown OK
echo OK
more OK
mkdir OK
find OK
/usr/bin/grep OK
/usr/bin/cat OK
/usr/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.
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 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 : CentreonTrapd 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. Laissez par défaut.
Commençons par Centreon Web, l'interface de centreon. Ici, on nous demande où installer Centreon UI. Laissez par défaut.
------------------------------------------------------------------------
Start CentWeb Installation
------------------------------------------------------------------------
Where is your Centreon directory?
default to [/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 [/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 fichier de configuration fpm pour le serveur Apache.
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 cache directory?
default to [/var/cache/centreon]
>
Do you want me to create this directory ? [/var/cache/centreon]
[y/n], default to [n]:
> y
Path /var/cache/centreon OK
Where is your Centreon variable library directory?
default to [/var/lib/centreon]
>
Path /var/lib/centreon OK
/usr/bin/rrdtool OK
/usr/bin/mail OK
Where is your php binary ?
default to [/usr/bin/php]
> /opt/rh/rh-php72/root/usr/bin/php
/opt/rh/rh-php72/root/usr/bin/php OK
Where is PEAR [PEAR.php]
default to [/usr/share/php/PEAR.php]
> /opt/rh/rh-php72/root/usr/share/pear/PEAR.php
Path /opt/rh/rh-php72/root/usr/share/pear OK
/usr/bin/perl OK
check PHP version OK
Composer dependencies are installed OK
Frontend application is built OK
Finding Apache user : apache
Finding Apache group : apache
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 apache OK
Add group centreon to user centreon-engine OK
Add group centreon-engine to user apache OK
Add group centreon-engine to user centreon OK
Add group apache 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 OK
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 '/opt/rh/httpd24/root/etc/httpd/conf.d/centreon.confOK
Configuring Apache OK
Do you want to reload your Apache ?
[y/n], default to [n]:
> y
Reloading Apache service FAIL
------------------------------------------------------------------------
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/opt/rh/rh-php72/php-fpm.d/centreon.conf' OK
Configuring PHP FPM OK
Do you want to reload PHP FPM service ?
[y/n], default to [n]:
> y
Unable to reload PHP FPM service WARNING
Preparing Centreon temporary files
Modify rights on /var/log/centreon OK
Modify rights on /var/lib/centreon/installs OK
Modify rights on /etc/centreon OK
Modify rights on /var/cache/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 env and config file OK
Change macros for perl binary OK
Modify rights on /etc/centreon-engine OK
Add group centreon-broker to user apache OK
Add group centreon-broker to user centreon-engine OK
Add group centreon to user centreon-broker OK
Modify rights on /etc/centreon-broker OK
Copy CentWeb in system directory
Install CentWeb (web front of centreon) OK
Modify rights for install directory OK
Install libraries OK
Write rights 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
Modify rights for eventReportBuilder OK
Modify rights for dashboardBuilder OK
Modify rights for centreon-backup.pl OK
Modify rights 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
Install generateSqlLite OK
Install changeRrdDsName.pl OK
Install export-mysql-indexes OK
Install import-mysql-indexes OK
Install clapi binary OK
Centreon Web Perl lib installed OK
------------------------------------------------------------------------
Pear Modules
------------------------------------------------------------------------
Check PEAR modules
PEAR 1.4.9 1.10.5 OK
DB 1.7.6 NOK
Date 1.4.6 NOK
Do you want me to install/upgrade your PEAR modules
[y/n], default to [y]:
> y
Upgrading PEAR modules
Installing PEAR modules
DB 1.7.6 1.9.3 OK
Date 1.4.6 1.4.7 OK
Check PEAR modules
PEAR 1.4.9 1.10.11 OK
DB 1.7.6 1.9.3 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 sysconfig script Macro OK
Do you want me to install CentCore init script ?
[y/n], default to [n]:
> y
CentCore init script installed OK
CentCore sysconfig script installed OK
Do you want me to install CentCore run level ?
[y/n], default to [n]:
> y
CentCore Perl lib installed OK
Create /etc/centreon/instCentCore.conf OK
Nous continuons avec l'installation des plugins. Laissez par défaut et y pour la création du service.
------------------------------------------------------------------------
Starting Centreon Plugins Installation
------------------------------------------------------------------------
Path OK
Path OK
Where is your CentPlugins lib directory
default to [/var/lib/centreon/centplugins]
>
Do you want me to create this directory ? [/var/lib/centreon/centplugins]
[y/n], default to [n]:
> y
Path /var/lib/centreon/centplugins OK
Create /etc/centreon/instCentPlugins.conf OK
Installation des plugins pour les Traps SNMP, répondre y pour la création des dossiers.
------------------------------------------------------------------------
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/share/centreon/bin]
>
/usr/share/centreon/bin OK
Finding Apache user : apache
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 sysconfig script Macro OK
Do you want me to install CentreonTrapd init script ?
[y/n], default to [n]:
> y
CentreonTrapd init script installed OK
CentreonTrapd sysconfig script installed OK
Do you want me to install CentreonTrapd run level ?
[y/n], default to [n]:
> y
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://localhost/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 #
# #
###############################################################################
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
Créez un dossier centcore dans /var/lib/centreon. Modifiez les droits des dossiers suivants.
mkdir /var/lib/centreon/centcore
chown centreon: /var/lib/centreon/centcore
chmod -R 775 /var/lib/centreon/centcore
chmod 755 /var/lib/centreon-engine
Créez un dossier centreon-broker dans /var/log
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
Il faut terminer l’installation en mode Web.
7.3 Installation en mode Web
Il faut finaliser la configuration apache. Créez le fichier suivant.
vi /etc/opt/rh/rh-php72/php.d/50-centreon.ini
Ajoutez les lignes suivantes
max_execution_time = 300
session.use_strict_mode = 1
session.gc_maxlifetime = 7200
date.timezone=Europe/Paris
Relancez la configuration.
systemctl restart httpd24-httpd
Utilisez un navigateur internet récent et saisissez l’url suivante :
http://<ip du serveur centreon>/centreon/
http://<ip du serveur centreon>/centreon/
Démarrage de l'installation Web, cliquez sur "Next"
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.
Validation des dépendances, cliquez sur "next".
Laissez les chemins par défaut, cliquez sur Next.
Laissez les chemins par défaut, cliquez sur Next.
Création du user "Administrateur", admin et son mot de passe. Saisir une adresse valide pour l’email. Cliquez sur Next.
Cliquez sur Next
Cliquez sur Next
Cliquez sur Next
Fin de l'installation, cliquez sur Finish
Vous devriez avoir cette vue.
7.4 Préparation de la configuration
Cette nouvelle version ne contient plus les plugins historiques de Centreon ainsi que la base d'exemples de configuration. Cette version est développée pour les nouveaux plugins-pack de Centreon. Vous avez le minimum vital : quelques contacts, périodes temporelles, macro ressources, les traps SNMP et la configuration du poller pour le Central. Actuellement, le module IMP n'est pas encore compatible avec la distribution Debian. Nous allons quand-même installer un exemple de configuration basé sur mes scripts CLAPI pour centreon-deb. Nous allons utiliser la dernière version de mon script de configuration sur mon github.
cd /usr/local/src
git clone https://github.com/kermith72/auto_install.git
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/lib64/nagios/plugins
7.5 Lancement des services et application de la configuration
Activez et démarrez les services ci-dessous :
systemctl enable centcore && systemctl enable centreontrapd && systemctl start cbd && systemctl start centcore && systemctl start centreontrapd
7.5a 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.
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.
7.5b installation des icônes
Pour améliorer la présentations des hôtes et services, nous allons installer les icônes de Pixelabs. Si vous avez installé le git d'auto_install, décompressez l'archive.
tar xzf /usr/local/src/auto_install/debian10/icones_pixelabs_v2.tar.gz -C /tmp
cp -r /tmp/icones_pixelabs_v2/* /usr/share/centreon/www/img/media/
chown -R apache: /usr/share/centreon/www/img/media/
Afin de permettre l'utilisation des icônes de Pixelabs, nous allons les installer dans la section Média. Sélectionnez le menu Administration > Parameters > Images. Cliquez sur le bouton Synchronize Media Directory
Fermez la fenêtre "Media Detection" et rafraîchissez la fenêtre précédente. Vous afficherez les icônes réalisées par Pixelabs.
7.5c script création de la configuration initiale
Nous allons utiliser le script téléchargé précédemment create_config_initialV5.sh. Après avoir modifié les permissions du fichier pour le rendre exécutable. Les paramètres sont les suivants :
donnez les droits d'exécution :
-u : admin Centreon
-p : mot de passe de l'admin Centreon
-d : user mariaDB pour Centreon
-w : mot de passe user mariaDB
-s : création des services disk
-m : méthode restart
-i : ajout des icône
donnez les droits d'exécution :
chmod +x /usr/local/src/auto_install/debian10/create_config_initialV5.sh
Lancez ce script (en root pour avoir les droits de recharger le moteur) comme ceci :
/usr/local/src/auto_install/debian10/create_config_initialV5.sh -u=admin -p=password -d=centreon -w=centreon -s=yes -m=restart -i=yes
Voici le résultat de la commande :
Create Command base
Create Command local
Create Command snmp
Create Command Windows snmp
Create Command Cisco snmp
Create Command mysql
Create template service base
Create template service local
Create template service snmp
Create template service Windows snmp
Create template service Cisco snmp
Create template service local database
Create template app centreon poller
Create template app centreon central
Create template host
Create Central
add storage
Configuration OK !
Au bout de quelques secondes, vous devriez voir apparaître les services en état pending dans la vue Temps réels
Vous pouvez rencontrer ce type d'erreur lors de l'application de la configuration, car le chemin de la commande du plugin n'est pas correct.
Il faudra renseigner la valeur de la macro $USER1$, cliquez sur Configuration -> Pollers -> Resources. Modifiez la valeur avec le chemin des plugins historique /usr/lib64/nagios/plugins
Ensuite, vous devriez voir apparaître les hôtes et services dans la barre d'état en haut à droite.
Votre supervision est en état de fonctionnement
Avec la dernière version 5 du script, il est possible de superviser facilement un serveur Windows ou un switch cisco. Les modèles d'hôtes sont disponibles.
7.6 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.10.2.tar.gz
wget http://files.download.centreon.com/public/centreon-widgets/centreon-widget-service-monitoring/centreon-widget-service-monitoring-19.10.6.tar.gz
wget http://files.download.centreon.com/public/centreon-widgets/centreon-widget-host-monitoring/centreon-widget-host-monitoring-19.10.6.tar.gz
wget http://files.download.centreon.com/public/centreon-widgets/centreon-widget-servicegroup-monitoring/centreon-widget-servicegroup-monitoring-19.10.1.tar.gz
wget http://files.download.centreon.com/public/centreon-widgets/centreon-widget-hostgroup-monitoring/centreon-widget-hostgroup-monitoring-19.10.1.tar.gz
wget http://files.download.centreon.com/public/centreon-widgets/centreon-widget-engine-status/centreon-widget-engine-status-19.10.2.tar.gz
wget http://files.download.centreon.com/public/centreon-widgets/centreon-widget-grid-map/centreon-widget-grid-map-19.10.1.tar.gz
wget http://files.download.centreon.com/public/centreon-widgets/centreon-widget-httploader/centreon-widget-httploader-19.10.1.tar.gz
wget http://files.download.centreon.com/public/centreon-widgets/centreon-widget-tactical-overview/centreon-widget-tactical-overview-19.10.1.tar.gz
wget http://files.download.centreon.com/public/centreon-widgets/centreon-widget-live-top10-cpu-usage/centreon-widget-live-top10-cpu-usage-19.10.1.tar.gz
wget http://files.download.centreon.com/public/centreon-widgets/centreon-widget-live-top10-memory-usage/centreon-widget-live-top10-memory-usage-19.10.1.tar.gz
Décompressez les archives
tar xzf centreon-widget-grid-map-19.10.1.tar.gz
tar xzf centreon-widget-tactical-overview-19.10.1.tar.gz
tar xzf centreon-widget-httploader-19.10.1.tar.gz
tar xzf centreon-widget-engine-status-19.10.2.tar.gz
tar xzf centreon-widget-service-monitoring-19.10.6.tar.gz
tar xzf centreon-widget-host-monitoring-19.10.6.tar.gz
tar xzf centreon-widget-servicegroup-monitoring-19.10.1.tar.gz
tar xzf centreon-widget-hostgroup-monitoring-19.10.1.tar.gz
tar xzf centreon-widget-graph-monitoring-19.10.2.tar.gz
tar xzf centreon-widget-live-top10-memory-usage-19.10.1.tar.gz
tar xzf centreon-widget-live-top10-cpu-usage-19.10.1.tar.gz
Déplaçons les widgets dans le dossier réservé à ceux-ci.
mv centreon-widget-graph-monitoring-19.10.2/graph-monitoring /usr/share/centreon/www/widgets/
mv centreon-widget-service-monitoring-19.10.6/service-monitoring/ /usr/share/centreon/www/widgets/
mv centreon-widget-host-monitoring-19.10.6/host-monitoring/ /usr/share/centreon/www/widgets/
mv centreon-widget-servicegroup-monitoring-19.10.1/servicegroup-monitoring/ /usr/share/centreon/www/widgets/
mv centreon-widget-hostgroup-monitoring-19.10.1/hostgroup-monitoring/ /usr/share/centreon/www/widgets/
mv centreon-widget-grid-map-19.10.1/grid-map/ /usr/share/centreon/www/widgets/
mv centreon-widget-httploader-19.10.1/httploader/ /usr/share/centreon/www/widgets/
mv centreon-widget-tactical-overview-19.10.1/tactical-overview/ /usr/share/centreon/www/widgets/
mv centreon-widget-engine-status-19.10.2/engine-status /usr/share/centreon/www/widgets/
mv centreon-widget-live-top10-cpu-usage-19.10.1/live-top10-cpu-usage/ /usr/share/centreon/www/widgets/
mv centreon-widget-live-top10-memory-usage-19.10.1/live-top10-memory-usage/ /usr/share/centreon/www/widgets/
Authentifiez-vous sur l’interface Web de Centreon. Sélectionnez Administration / Extensions / Manager
Il est possible d'activer tous les widgets en une seule commande. Cliquez sur le bouton Install all.
Les widgets sont installées.