Voici une nouvelle version d'installation automatisée avec compilation des sources. Nous utilisons la dernière version de Centreon-Web sur une Debian Buster, actuellement la version 19.10. J'ai repris le travail de Rémy en l'adaptant pour cette nouvelle version.
Deux scripts sont disponibles, un pour l'installation d'un Central et l'autre pour l'installation d'un poller. Un troisième script permet d'installer un exemple de monitoring du Central. On utilise les plugins fastpacked de Centreon.
Nouveauté, le script du Central incorpore le pack d'icônes de Pixelabs. Merci à lui pour cette contribution sans oublier Hugues Ruelle pour sa participation.
Deux scripts sont disponibles, un pour l'installation d'un Central et l'autre pour l'installation d'un poller. Un troisième script permet d'installer un exemple de monitoring du Central. On utilise les plugins fastpacked de Centreon.
Nouveauté, le script du Central incorpore le pack d'icônes de Pixelabs. Merci à lui pour cette contribution sans oublier Hugues Ruelle pour sa participation.
Nous prendrons comme base de travail, une VM debian Buster (fresh install) avec une installation minimum, seul le paquet ssh est installé. J'insiste bien sur le fait que la machine est vierge de toute autre programme qui pourrait compromettre le déroulement de l'installation. Connectez-vous sur ce serveur et copiez le script centreon_central que vous trouverez sur mon GitHub https://github.com/kermith72/auto_install
Cette installation est conforme en tout point à l'installation d'une Full Centreon 19.10.x sur une Debian. Les sondes historiques sont placés dans le dossier /usr/lib/nagios/plugins et les nouvelles sondes Centreon sont placées dans le le dossier /usr/lib/centreon/plugins.
Cette installation est conforme en tout point à l'installation d'une Full Centreon 19.10.x sur une Debian. Les sondes historiques sont placés dans le dossier /usr/lib/nagios/plugins et les nouvelles sondes Centreon sont placées dans le le dossier /usr/lib/centreon/plugins.
Si vous vous connectez avec un utilisateur sans droit d'administration et que vous élevez vos privilèges en root, il faut lancez la commande su avec le paramètre suivant :
su -
Sinon vous n'aurez pas le path des dossiers sbin ou sont situés les exécutables pour l'administration.
1 Procédures d'installation
1.1 Central
1.1a Installation par git
L'installation par git est fortement conseillé pour récupérer tous les fichiers nécessaire à l'installation. Ouvrir une session terminal en mode root. Installez git et cloner le dépôt. Rendre le fichier exécutable.
apt-get update apt-get install git -y git clone https://github.com/kermith72/auto_install.git
cd auto_install/debian10
1.1b Vérification de l'exécution en live
Si vous voulez suivre les logs de votre installation en direct, créez le fichier de logs en fonction de la variable INSTALL_LOG.
touch /usr/local/src/centreon-install.log
Avant de démarrer l'installation, il faut ouvrir un second terminal et lancez la commande :
tail -f /usr/local/src/centreon-install.log
Vous pouvez suivre le déroulement de l'installation.
1.1c lancement de l'installation
Lancez le script.
./centreon_central_1910.sh
Vous pouvez, depuis la version 1.28, installez le plugin NRPE 3.2.1 avec la commande suivante
./centreon_central_1910.sh -n=yes
Un mode verbose (-v ou —verbose) est disponible avec la version Buster.
./centreon_central_1910.sh -v
Cette option permettant un suivi plus précis de l'installation. Exemple :
./centreon_central_1910.sh -v
================| Centreon Central Install details v 1.47 |============
MariaDB : 10.0
Clib : 19.10.0
Connector : 19.10.1
Engine : 19.10.13
Plugins : 2.2 & 20200204
Broker : 19.10.3
Centreon : 19.10.10
Install dir: /usr/share
Source dir : /usr/local/src
======================================================================
======================================================================
Add Buster repo for non-free
======================================================================
Step1 => repo non-free on Buster Install [ OK ]
======================================================================
Install MariaDB
======================================================================
Step2 => MariaDB Install [ OK ]
======================================================================
Install Clib
======================================================================
====> Compilation
Step3 => Clib install [ OK ]
======================================================================
Install Centreon Perl connectors
======================================================================
====> Compilation
======================================================================
Install Centreon SSH connectors
======================================================================
====> Compilation
Step4 => Centreon Perl and SSH connectors install [ OK ]
L'installation se réalise en mode silencieux. Très propre, elle affiche un minimum d'information comme ci-dessous.
================| Centreon Central Install details v 1.53 |============ MariaDB : 10.0 Clib : 19.10.0 Connector : 19.10.1 Engine : 19.10.14 Plugins : 2.2 & 20200204 Broker : 19.10.4 Centreon : 19.10.13 Install dir: /usr/share Source dir : /usr/local/src ====================================================================== Step1 => repo non-free on Buster Install [ OK ] Step2 => MariaDB Install [ OK ] Step3 => Clib install [ OK ] Step4 => Centreon Perl and SSH connectors install [ OK ] Step5 => Centreon Engine install [ OK ] Step6 => Monitoring plugins install [ OK ] Step7 => Centreon plugins install [ OK ] Step8 => Centreon Broker install [ OK ] Step9 => Php-fpm install [ OK ] Step10 => Centreon template generation [ OK ] Step11 => Centreon web interface install [ OK ] Step12 => Post install install [ OK ] Step13 => Widgets install [ OK ] ##### Install completed ##### Go to http://192.168.1.45/centreon to complete the setup
Attention, si vous n'avez pas tous les OK chaque étape, recherchez la cause du problème avec de continuer l'installation. Maintenant, il reste à finir la configuration sur l'interface Web. Les paramètres suivants sont les paramètres par défaut.
1.2 Poller Debian
Il est possible d'installer un poller, utilisez le script centreon_poller.sh que vous trouverez sur le GitHub ou téléchargez le dépôt comme indiqué dans le paragraphe 1.1a. Ouvrir une session terminal en mode root. Installez git et cloner le dépôt. Rendre le fichier exécutable.
apt-get update apt-get install git -y git clone https://github.com/kermith72/auto_install.git
cd auto_install/debian10 chmod +x centreon_poller_1910.sh
Lancez le script.
./centreon_poller_1910.sh
Vous pouvez, depuis la version 1.38, installez le plugin NRPE 3.2.1 avec la commande suivante
./centreon_poller_1910.sh -n=yes
L'installation se réalise en mode silencieux. Très propre, elle affiche un minimum d'information comme ci-dessous. Le mode verbose est disponible pour la version Buster.
================| Centreon Poller Install details v 1.53 |============ Clib : 19.10.0 Connector : 19.10.1 Engine : 19.10.14 Plugins : 2.2 & 20200204 Broker : 19.10.4 Centreon : 19.10.13 NRPE : 3.2.1 Install dir: /usr/share Source dir : /usr/local/src ====================================================================== Step1 => repo non-free on Buster Install [ OK ] Step2 => Clib install [ OK ] Step3 => Centreon Perl and SSH connectors install [ OK ] Step4 => Centreon Engine install [ OK ] Step5 => Monitoring plugins install [ OK ] Step6 => Centreon plugins install [ OK ] Step7 => Centreon Broker install [ OK ] Step8 => Centreon template generation [ OK ] Step9 => Centreon web interface install [ OK ] Step10 => Post install [ OK ] Step11 => Nrpe install [ OK ] ##### Install completed ##### Go to Central Server for configuration
Maintenant, il reste à finir la configuration en affectant un mot de passe au user centreon.
passwd centreon Entrez le nouveau mot de passe UNIX : Retapez le nouveau mot de passe UNIX : passwd: password updated successfully
La configuration est terminée sur le poller. Il faudra ajouter le poller dans la configuration du serveur Central Centreon ( voir le chapitre 4 de la configuration distribuée). Nouveauté version > 2.8.26, les macros de type ressources sont conforme à l'installation par défaut de Centreon.
2 Configuration du Central Centreon
Utilisez un navigateur internet récent et saisissez l’url suivante :
http://ip du serveur centreon/centreon/
http://ip du serveur centreon/centreon/
2.1 Synchronisation des médias
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.
2.2 Application de la configuration
Avant de se connecter, lancez les services suivants :
systemctl start cbd systemctl start centcore systemctl start centreontrapd
Cette nouvelle version ne contient plus d'exemple de configuration car elle a été développé pour les nouveaux plugins-pack. Vous avez le minimum vital : quelques contacts, périodes temporelles, macro ressources, les traps SNMP et la configuration du poller pour le Central. J'ai rajouté un script clapi pour vous procurer un minimum de configuration. Ce script bash se nomme create_config_initialV4.sh. Il utilise les plugins Centreon fastpacked avec le plugin os::linux::local::plugin pour le serveur Central avec les best pratices de Centreon (commandes et templates unitaires, utilisation des templates d'hôtes et services). Ce plugin n'utilise pas le service SNMP. Une option -s est proposée pour superviser les systèmes de fichiers montés (détection automatique). On utilise de plus le plugin database::mysql::plugin pour superviser la base mysql de centreon. Il n'est plus nécessaire d'associer le contact admin aux deux commandes de notifications, le script le fait automatiquement. J'ai rajouté un template minimal pour configurer un hôte en SNMP.
Pour les plugins version < 20191219, utilisez le script create_config_initialV5.sh
On lancera la commande suivante :
Pour les plugins version < 20191219, utilisez le script create_config_initialV5.sh
On lancera la commande suivante :
./create_config_initialV5.sh -u=admin -p=password -d=centreon -w=pwdatabase -s=yes -m=restart -i=yes
Les options de cette commande :
./create_config_initialV5.sh -h Usage: create_config_initialV5.sh -u=-p= -d= -w= -s=[yes|no] -m=[restart|reload] -db=[yes|no] This program create initial configuration -u|--user User Centreon. -p|--password Password Centreon. -d|--userdatabase User Database Centreon -w|--passworddatabase Password Database Centreon. -s|--storage Create Storage service (yes/no) -m|--method Method start engine -i|--icone Add icones -db|--debug print command -h|--help help
Vous devriez avoir ce résultat par exemple pour create_config_initialV5.sh :
Create Command base Create Command local Create Command snmp Create Command Windows snmp Create Command Windows nrpe 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 Windows nrpe Create template service Cisco snmp Create template service local database Create template app centreon poller Create template app centreon central Create templates host - base - linux local - linux snmp - poller - central - mysql - windows snmp - windows nrpe - cisco Create Central add storage Configuration OK !
En sélectionnant Monitoring -> Status Détail -> Services, vous devriez avec les services en état pending.
Et voilà, votre supervision est opérationnelle et tout ça en moins d'un quart d'heure !
2.3 Modèles d'hôtes à disposition
Plusieurs modèles d'hôtes sont disponibles grâce au script create_config_initialV5.sh :
- modèle pour Centreon Central et Poller
- modèle pour MySQL
- modèle pour un switch cisco en SNMP
- modèle pour un Linux en mode local
- modèle pour un Linux en SNMP
- modèle pour Linux en remote SSH (voir Configuration du module os::linux::local::plugin avec l'option remote)
- modèle pour un serveur Windows en SNMP
- modèle pour un serveur Windows avec NSClient++
- modèle pour Centreon Central et Poller
- modèle pour MySQL
- modèle pour un switch cisco en SNMP
- modèle pour un Linux en mode local
- modèle pour un Linux en SNMP
- modèle pour Linux en remote SSH (voir Configuration du module os::linux::local::plugin avec l'option remote)
- modèle pour un serveur Windows en SNMP
- modèle pour un serveur Windows avec NSClient++
2.3a Modèle Windows NRPE
Exemple du modèle Windows NRPE, création de l'hôte.
Application du template
3 Configuration du Poller distant
Si vous avez configuré votre poller distant comme décrit dans le paragraphe 1.2, il nous reste à configurer la clé SSH sur le Central. Nous allons utiliser le user centreon pour établir une communication entre les deux serveurs. Il faut établir une connexion avec le user centreon du serveur Central vers le Poller pour créer la clé d'authentification ssh. Nous utiliserons une session avec su. Lancez une session centreon
root@supervision: su - centreon centreon@supervision:~$
Créez la clé SSH sans passphrase dans le dossier par défaut
centreon@supervision:~$ ssh-keygen -t rsa -b 4096 Generating public/private rsa key pair. Enter file in which to save the key (/var/lib/centreon/.ssh/id_rsa): Created directory '/var/lib/centreon/.ssh'. Enter passphrase (empty for no passphrase): Enter same passphrase again: Your identification has been saved in /var/lib/centreon/.ssh/id_rsa. Your public key has been saved in /var/lib/centreon/.ssh/id_rsa.pub. The key fingerprint is: SHA256:R5vQ9ntGImrpaMziOkYFFzFrZf72naOp6Hxwc5CvW0w centreon@central-debian9 The key's randomart image is: +---[RSA 2048]----+ | +oo | | . .* . | | oo . ..+ | | .. .o+ + | | . SoE o . | | . ..oBoo = | | . o o+++ = o | | o ..+=o. o + | | ..+.+=.+oo | +----[SHA256]-----+
Ne pas mettre de mot de passe, validez par Entrée.
Copions la clé sur le Poller.
Copions la clé sur le Poller.
centreon@supervision:~$ ssh-copy-id -i centreon@<IP server Poller> The authenticity of host '<IP server Poller> (<IP server Poller>)' can't be established. ECDSA key fingerprint is af:5a:a0:ed:36:89:c6:fc:84:b2:e4:4b:25:d4:61:e4. Are you sure you want to continue connecting (yes/no)? yes /usr/bin/ssh-copy-id: INFO: attempting to log in with the new key(s), to filter out any that are already installed /usr/bin/ssh-copy-id: INFO: 1 key(s) remain to be installed -- if you are prompted now it is to install the new keys centreon@<IP server Poller>'s password: Number of key(s) added: 1 Now try logging into the machine, with: "ssh 'centreon@<IP server Poller>'" and check to make sure that only the key(s) you wanted were added.
3.2 Configuration du poller avec l’interface de Centreon
Nous passons à la configuration du poller avec l'interface Web de Centreon. Ajoutez une instance nommé poller1 pour le serveur Poller, sélectionnez Configuration / Pollers. Nous utiliserons le wizard.
Il faudra modifier deux paramètres dans la configuration du moteur. Sélectionnez Configuration -> Pollers -> Engine Configuration. Cliquez sur le poller1.
Onglet Data, il faut modifier les chemins suivants :
Saisir les informations suivantes, modifier la première ligne et ajouter la seconde.
/usr/lib/centreon-engine/externalcmd.so
/usr/lib/centreon-broker/cbmod.so /etc/centreon-broker/poller1-module.xml
Créez votre hôte poller1. Utilisez les templates htpl_App-centreon-poller et htpl_OS-linux-SNMP. Saisissez la bonne configuration SNMP (public et 2c). Assurez-vous que le poller1 accepte les requêtes SNMP d'un agent SNMP distant. Le poller1 sera supervisé par le Central.
N'oubliez pas d'autoriser l'accès au SNMP pour le serveur Central. Modifier le fichier /etc/snmp/snmpd.conf du poller.
agentAddress udp::161 rocommunity publicredémarrez le service
systemctl restart snmpd
Appliquez la configuration sur les deux pollers (Central et poller1)
L'application de la configuration se fait en deux étapes conformément aux bonnes pratiques de Centreon.
N'oubliez pas de sélectionner la méthode restart pour le démarrage du poller distant.
Les deux pollers sont opérationnels
La supervision du poller distant fonctionne.
Pour avoir les statistiques du moteur du poller distant, paramétrez centcore. Sélectionnez le menu Administration -> Parameters -> Centcore. Cochez la fonctionnalité "Enable Broker Statistics Collection"
Il vous reste à découvrir toutes les fonctionnalités de Centreon !