Pour les plugins de Centreon, il y a 3 options :
1 ) Les Plugins Packs
- Le Premier Pack = 10 plugins essentiel gratuits
- Les Packs de plugins payant CENTREON IMP-100 SUBSCRIPTION
2) les plugins qui sont dans les repo (yum install centreon-plugin*)
3) les plugins supplémentaires sur GitHub
C-Bam conseil de prendre les plugins sur le repo (option 2) et d’aller chercher sur github si d’autre plugins sont nécessaires
ETAPE 0 : Télécharger les plugins
Se logger en root sur son serveur Centreon et entrer[root@centreon-central ~]# yum install centreon-plugin*
Cette commande va télécharger tous les plugins du repo dans /usr/lib/centreon/plugins
Pour vérifier :
[root@centreon-central ~]# cd /usr/lib/centreon/plugins
[root@centreon-central plugins ~]# ls
Nous allons prendre l’exemple du NAS QNAP
ETAPE 1 : Activer le SNMP sur la machine cible
Manips différentes selon les machines
Sur notre serveur Centreon, faire un test snmpwalk[root@centreon-central ~]# snmpwalk -v 2c -c public
ETAPE 2 : Tester le plugin
Trouver le plugin recherché dans le répertoire plugin (en l’occurrence le plugin QNAP)
centreon_qnap.pl
Passer en utilisateur centreon-engine
[root@centreon-central ~]# su centreon-engine
Lancer la commande pour connaitre le nom du plugin
bash-4.2$ ./centreon_qnap.pl --list-plugin
…
-----------------
PLUGIN: storage::qnap::snmp::plugin
Plugin Description:
Check Qnap NAS in SNMP.
…
Le nom est donc => storage::qnap::snmp::plugin
Lister les modes afin de connaître les modes disponibles
bash-4.2$ ./centreon_qnap.pl --plugin storage::qnap::snmp::plugin --mode list-storages –help
…
Modes Available:
cpu
hardware
interfaces
list-interfaces
list-storages
memory
storage
volume-usage
Lister les options
bash-4.2$ ./centreon_qnap.pl --plugin storage::qnap::snmp::plugin --mode list-storages --help
...
La liste est grande et “tu peux ignorer tout ça au début” mais une seule t’intéresse:
--hostname
Là tu peux essayer avec l’option --mode storage
bash-4.2$ ./centreon_qnap.pl --plugin storage::qnap::snmp::plugin --mode list-storages --hostname
List storage:
Skipping storage 'Physical memory': no type or no matching filter type
Skipping storage 'Swap space': no type or no matching filter type
Skipping storage 'Virtual memory': no type or no matching filter type
'/mnt/HDA_ROOT' [size = 517427200B] [id = 31]
'/sys/fs/cgroup/memory' [size = 0B] [id = 32]
'/sys/fs/cgroup/cpu' [size = 0B] [id = 33]
'/mnt/ext' [size = 437231616B] [id = 34]
'/share/CACHEDEV1_DATA' [size = 11687534592000B] [id = 35]
Skipping storage 'Memory buffers': no type or no matching filter type
Skipping storage 'Cached memory': no type or no matching filter type
Skipping storage 'Shared memory': no type or no matching filter type
Je reçois les informations de Storage : donc Storage mode Ok
J’essai avec l’option --mode cpu
bash-4.2$ ./centreon_qnap.pl --plugin storage::qnap::snmp::plugin --mode cpu --hostname
OK: 4 CPU(s) average usage is 5.75 % | 'total_cpu_avg'=5.75%;;;0;100 'cpu_0'=5.00%;;;0;100 'cpu_1'=4.00%;;;0;100 'cpu_2'=9.00%;;;0;100 'cpu_3'=5.00%;;;0;100
C’est bon ☺
ETAPE 3 : Créer une nouvelle commande dans Centreon
a - Config > Commandes > Contrôles ('Checks' en EN)
Ici il y a déjà beaucoup de « commandes ». App-… , base_... , HW_... , Net_..., OS_...
ce sont les commandes créées avec les plugins pack offert
(en gros, les plugin pack servent uniquement à t'affranchir les étape 2, 3, 4, 5)
b - Cliquer sur Ajouter (Add)
-------------------! C’est là que ça se corse un p’tit peu---------------------
d - Donner un nom et entrer la commande
Concernant la commande, la voici en clair
$CENTREONPLUGINS$/centreon_qnap.pl --plugin storage::qnap::snmp::plugin
--mode storage
-–hostname $HOSTADDRESS$
--snmp-version $_HOSTSNMPVERSION$
--snmp-community $_HOSTSNMPCOMMUNITY$
--warning-usage $_SERVICEWARNING$
--critical-usage $_SERVICECRITICAL$
$_SERVICESNMPEXTRAOPTIONS$
! Sans les retours à la ligne !
C’est-à-dire
$CENTREONPLUGINS$/
LA COMMANDE $HOSTADDRESS$ la variable d’IP
--snmp-version $_HOSTSNMPVERSION$ la variable de version SNMP
--snmp-community $_HOSTSNMPCOMMUNITY$ la variable de communauté SNMP
--warning-usage $_SERVICEWARNING$ une variable de % warning
--critical-usage $_SERVICECRITICAL$ une variable de % critique
$_SERVICESNMPEXTRAOPTIONS$
« avec le cas particulier de SNMPVERSION et SNMPCOMMUNITY qui sont quand même des variables semi auto :S Quand tu as le mot HOST, la variable sera hérité de l'hôte »
la partie 1 : ma commande de base $CENTREONPLUGIN$
la partie 2 : l'accès au snmp (hostname, snmpcommunity, etc)
la partie 3 ce sont les warning et critical
ces options dépendent aussi du plugin (visible avec le --help )
Là, je t'ai mis les deux principales : warning-usage et critical-usage
Donc partie 3 : les options de ton plugin, essentiellement pour les warning, Tu noteras les variables sont $_SERVICE donc positionné sur le service »
Exemple :
$_SERVICECRITICAL$ c'est la valeur du paramètre --warning usage
--warning-usage 80 --critical-usage 95
sauf que les valeurs, 80 et 95 sont des variables
d - Avant de sauvegarder, cliquer sur « Décrire les Macros »
Cela ouvre une boite de dialogue, on peut ignorer les champs et valider, cela remplis les Macros
« entre parenthèse tu vois ou ça s'applique SERVICE ou HOST »
Voilà nous avons une nouvelle commande qui s’appel Storage-Qnap-SNMP-Storage
--------------------------! Ouf, le plus dur est fait----------------------------
ETAPE 4 : Créer un modèle de service
1 modèle de service <==> 1 commande
1 modèle d'hôte <==> n modèles de service
a - Config > Services > Modèles (Templates en EN)
b - Cliquer sur Ajouter (Add)
une chose à savoir
pour alias si tu as deux services avec le même alias, le plus prioritaire l'emportera
exemple : alias = Cpu
si tu as deux services alias Cpu
un seul des deux passera
mais tu n'auras jamais le cas je pense, sauf cas spécifique / faut juste le savoir
c - Choisir un Alias et un nom (obligatoire, pour retrouver son service)
Alias : Storage
Name : Storage-Qnap-SNMP-Storage
d - Choisir le Modèle (ou Template en EN)
Dans 99% des cas pour un service, ça sera generic-active service custom
e - Commande de vérification (ou Check Command en EN)
Choisir la commande que l’on vient de créer Storage-Qnap-SNMP-Storage
Les Macros se remplissent toutes seules, il faut rentrer les valeurs de Warning et Critical
On laisse le reste vide et on valide
Etape 5 : Créer le host Template et y associer le service Template
soit tu crées le service directement sur ton hôte
soit tu crées un modèle d'hôte
"je te conseille le modèle d'hôte, comme ça tu auras un modèle Qnap, avec tous les modèles de service Qnap et si un jour tu à un 2e Qnap, t'as juste à lui appliquer le modèle d'hôte et pouf
Pour l’instant tu as un service Template, mais pas encore le service
C’est à la fin que tu l'aura
a - Config > hôtes > modèle (ou Template en EN)
b- « Ajouter »
Alias, ici, c'est la description : "tu peux mettre la même chose que name ou qqch du genre : NAS de type QNAS"
c - Allez dans l’onglet « Relations »
Si tu en as déjà d’autre cela ressemblera à ça
d - Cliquer sur « sauvegarder
e - Allez dans les settings de l’hôte et lui assigner cette nouvelle Template d’hôte
Ou Etape 6 : Créer l'hôte et y associer l'host Template
=> POLLER RESTART ☺
---------------------------------------------------------
Optionnel
Duplique la commande (le check) pour obtenire une autre mesure
Ici, par exemple, nous allons faire la commande qui nous donneras le CPU de notre QNap
Checker, en CLI, la nouvelle commande
OK: 4 CPU(s) average usage is 4.50 % | 'total_cpu_avg'=4.50%;;;0;100 'cpu_0'=8.00%;;;0;100 'cpu_1'=4.00%;;;0;100 'cpu_2'=3.00%;;;0;100 'cpu_3'=3.00%;;;0;100
C’est bon nous avons un retour OK du QNap
Checker, en CLI, les option de la nouvelle commande car elle peuvent être différentes
bash-4.2$ ./centreon_qnap.pl --plugin storage::qnap::snmp::plugin --mode list-cpu --help
…
Mode:
Check system CPUs (HOST-RESOURCES-MIB) (The average, over the last
minute, of the percentage of time that this processor was not idle)
--warning-average
Warning threshold average CPU utilization.
--critical-average
Critical threshold average CPU utilization.
--warning-core
Warning thresholds for each CPU core
--critical-core
Critical thresholds for each CPU core
on voit que les modes warning et critical pour list-cpu sont différent de ceux de list-storages. Donc la commande sera différente
Aller dans Commands > Checks et duplique la Commande QNap que nous venons de créer
Name Storage-Qnap-SNMP-CPU
$CENTREONPLUGINS$/centreon_qnap.pl --plugin storage::qnap::snmp::plugin --mode cpu --hostname $HOSTADDRESS$ --snmp-version $_HOSTSNMPVERSION$ --snmp-community $_HOSTSNMPCOMMUNITY$ --warning-average $_SERVICEWARNING$ --critical-average $_SERVICECRITICAL$ $_SERVICESNMPEXTRAOPTIONS$
au lieu de
$CENTREONPLUGINS$/centreon_qnap.pl --plugin storage::qnap::snmp::plugin --mode storage --hostname $HOSTADDRESS$ --snmp-version $_HOSTSNMPVERSION$ --snmp-community $_HOSTSNMPCOMMUNITY$ --warning-usage $_SERVICEWARNING$ --critical-usage $_SERVICECRITICAL$ $_SERVICESNMPEXTRAOPTIONS$
Créer un modèle de service en faisant dupliquer et changeant le nom et l'alias
Alias Cpu-Qnap
Name Storage-Qnap-SNMP-cpu
et en choisissant la Commande Storage-Qnap-SNMP-CPU
Editer la Host Template, dans Relation Storage-Qnap-SNAMP-cpu était déjà présent
Configuration > Hôtes > filtre par modèle et cherche ton host template
Tu auras les hôtes correspondant
Coche les tous et dans les actions tu fais déployer les services
1 commentaires:
Bonjour,
Super tuto merci cela ma beaucoup aidé.
Pour abusé totalement comment ta a géré les graphique et wiget^^
Enregistrer un commentaire