Centreon | Supervision Informatique : Infrastuctures Hybrides, Cloud, AIOps

Mise en place de commandes (checks) à l’aide de plugins

En plus des différents checks disponibles par défaut dans Centreon, il existe des plugins, gratuit ou payant, que l’on peut télécharger.
Centreon étant un outil de supervision open source et communautaire, il est également possible de trouver des plugins gratuits mis à disposition par la communauté.
Une autre solution est de créer directement ses propres plugins, à condition d’avoir les connaissances nécessaires.

Configuration des checks a partir des Packs de Plugins inclus dans Centreon

Ajout de Plugins

Centreon est un excellent outil de supervision qui peut être configuré manuellement pour correspondre exactement aux différents besoins de l’entreprise. Toutefois, il existe des packs de plugins contenant des modèles de configuration.
Ces différents packs réduisent le temps nécessaire pour installer et superviser la plupart des services de l’entreprise.
Pour fonctionner, les composants techniques Centreon License Manager et Centreon Plugin Pack Manager sont nécessaires.*

L’installation de ces deux paquets est très simple.
En fonction de la version de Centreon utilisée, il sera nécessaire soit d’installer en ligne de commande ces deux packages soit directement de les installer depuis l’interface graphique.

Pour commencer se rendre dans la section « Administration » puis « Extensions » et enfin « Modules ».
Vérifier si les deux modules sont présents. 

S’ils n’y sont pas, il faudra installer les packages en ligne de commande avant de poursuivre.
Pour effectuer l’installation des packages en ligne de commande, se connecter sur le serveur Centreon avec l’utilisateur root en SSH et de taper la commande suivante.

yum install centreon-pp-manager

Cette commande téléchargera Centreon Plugin Pack Manager et également Centreon License Manager en tant que dépendance.
Une fois ces deux paquets téléchargés et présent dans « Modules », il suffira de les installer.
Le premier module à installer et activer sera Centreon License Manager : cliquer sur le nom du module puis sur « install moduel »

Puis il faudra installer et activer Centreon Plugin Pack Manager : cliquer sur le nom du module puis sur « install moduel »

Lorsque les deux modules seront installés, il sera désormais possible de se rendre dans la section « Configuration » puis « Plugin packs » pour trouver les 6 plugins gratuits proposés. Si on s’inscrit sur le site de Centreon, 5 autres plugins packs deviennent gratuits, les autres étant payant.

Il existe plus de 150 plugins packs disponibles dans l’offre IMP.

Activation des modules selon les besoins

Comme indiqué précédemment, suite à l’installation des deux modules, des packs de plugins sont maintenant disponible.
Pour activer les plugins, se rendre dans « Configuration » puis « Plugin packs », puis cliquer sur le plugin à installer.
Dans le cadre de cette procédure, le plugin de check SNMP de Linux sera installé 

Cliquer sur le plugin pour afficher les détails 

Pour l’installer il suffit de cliquer sur l’icone +
Patienter pour que le plugin s’installe automatiquement.
Une fois installé l’icône du plugin affiche une marque, confirmant l’installation 

Les différents checks et Templates seront à présent disponibles dans leurs sections respectives.

Utilisation des checks fournis par les modules

Pour utiliser les différents checks inclus dans les packs de modules il faut absolument garder en tête la notion d’héritage qui a été précédemment expliqué.
En effet, les commandes, Templates de services et Templates d’Hôtes sont déjà liés les uns aux autres lors de l’installation d’un pack.

Petit rappel : 

Généralement, lors de l’installation d’un pack, cette notion de hiérarchie et d’héritage ne sera pas retouchée mais plutôt utilisée.
Il sera toutefois nécessaire de customiser les valeurs des « warning », « critical » et autres valeurs à vérifier.
Pour les besoins de cette procédure voici un exemple.
Lors de l’’installation des packs « Linux SNMP » ou « Windows SNMP », le Template de service « Base-Ping-LAN » devient accessible.

Ce Template va permettre d’effectuer la supervision de la connectivité réseau à l’aide du ping pour les hôtes liés à ce Template. Toutefois il est nécessaire de le configurer selon ses besoins, le nombre de paquets envoyés ou les valeurs pour le « warning » et « critical » ne sont pas forcément celles que l’on souhaite. Il est également important de positionner correctement l’ensemble des périodes de check, des intervalles de supervision ainsi que les notifications comme indiqué précédemment dans cette procédure.

En effet par défaut, tout est vide.

Personnalisation des Checks à partir de ceux des plugins

Une fois les plugins installés, un certain nombre de commandes et de Templates sont disponibles.
Nous avons vu comment les utiliser mais il est également possible si on le souhaite de ne pas utiliser les Templates prédéfinies et de recréer ses propres Templates à partir des commandes (checks) disponibles.
Pour cela il faudra procéder de la même façon que précédemment dans cette procédure.

Configuration des checks à partir des packs de plugins fournis par la communauté

Il existe de nombreux sites proposant des listes de plugins mis à disposition gratuitement.
Par exemple, le site « exchange Nagios » est plutôt bien fourni : https://exchange.nagios.org
Toute fois pour les besoins de cette procédure, nous allons prendre en exemple le plugin « centreon_plugins.pl ».
Il s’agit d’un plugin écrit en perl qui est très complet et qui permet de mettre en place un très grand nombre de checks différents.

Installation de « centreon_plugins.pl »

Avant toute chose, si ce n’est pas déjà fait il faut installer la commande « git » 

yum install git

Une fois la commande installée, se déplacer dans le répertoire /tmp puis télécharger le plugin depuis Github à l’aide des commandes ci-dessous :

cd /tmp
git clone https://github.com/centreon/centreon-plugins

Le répertoire « centreon-plugins » devrait être visible dans /tmp

ll
drwxr-xr-x 17 root root 309 27 août  16:24 centreon-plugins

Déplacer le dossier dans /usr/lib/nagios/plugins/ puis lui ajouter les droits nécessaires pour son exécution par centreon 

cp centreon-plugins /usr/lib/nagios/plugins/
cd /usr/lib/nagios/plugins
chmod 755 -Rf centreon-plugins
chown -Rf centreon:centreon centreon-plugins

Utilisation du plugin « centreon_plugins.pl »

Avant de commencer, voici le contenu du dossier :

drwxr-xr-x 47 centreon centreon  4096 16 juil. 12:47 apps
drwxrwxr-x  4 centreon centreon    35 16 juil. 12:47 centreon
-rwxr-xr-x  1 centreon centreon   989 16 juil. 12:34 centreon_plugins.pl
-rwxr-xr-x  1 centreon centreon 15135 16 juil. 12:34 changelog
drwxr-xr-x  7 centreon centreon    77 16 juil. 12:47 cloud
drwxr-xr-x  2 centreon centreon    46 16 juil. 12:47 contrib
drwxr-xr-x 10 centreon centreon   119 16 juil. 12:47 database
drwxr-xr-x  4 centreon centreon    26 16 juil. 12:47 docs
drwxr-xr-x  4 centreon centreon   107 16 juil. 12:47 example
drwxr-xr-x 10 centreon centreon   110 16 juil. 12:47 hardware
-rwxrwxr-x  1 centreon centreon  2752 20 août  10:24 host-email.php
-rwxr-xr-x  1 centreon centreon 11357 16 juil. 12:34 LICENSE.txt
drwxr-xr-x 63 centreon centreon  4096 16 juil. 12:47 network
drwxr-xr-x  5 centreon centreon    48 16 juil. 12:47 notification
drwxr-xr-x  8 centreon centreon    87 16 juil. 12:47 os
-rwxr-xr-x  1 centreon centreon  3194 16 juil. 12:34 README.md
-rwxrwxr-x  1 centreon centreon  5180 20 août  10:24 service-email.php
drwxr-xr-x  3 centreon centreon    18 16 juil. 12:47 snmp_standard
drwxr-xr-x 23 centreon centreon   305 16 juil. 12:47 storage

A savoir :

Précédemment nous avons vu que lorsque nous utilisions une commande, la variable « $USER1$ » était utilisée.
Elle correspond au chemin suivant : /usr/lib/nagios/plugins/ et permet de faire appel aux commandes se trouvant dans ce répertoire.
Par exemple : /usr/lib/nagios/plugins/check_centreon_snmp_memory en y associant les valeurs nécessaires au check permettra d’effectuer un check de la RAM sur le ou les appareils ciblés.

$USER1$/check_centreon_snmp_memory -H $HOSTADDRESS$ -C $ARG1$ -v $ARG2$ -w $ARG3$ -c $ARG4$