Vous êtes ici:

Menu

Stacks Image 16507
Nous utiliserons une architecture Centreon standard pour configurer le plugin. Le module Centreon-Clapi sera requis pour notre configuration. En effet, il vous suffira de copier-coller mes commandes pour réaliser la configuration. Cette méthode est vraiment plus efficace que l'utilisation de l'interface graphique.

1 Le module os::linux

Notre exemple sera basé sur la supervision du serveur Centreon. Nous utiliserons les modes load, cpu, memory, swap, traffic et storage. Notre configuration sera réalisé avec des templates et les macros personnalisées seront utilisées pour les paramètres.

1.1 Schéma global de la configuration

Voici la configuration de notre serveur de supervision. Nous utiliserons quatre commandes dont deux utilisant le plugin centreon. Nous utiliserons les templates de services et d'hôtes. La première configuration est assez fastidieuse à réaliser mais permet un gain de temps lors de la création des hôtes. Nous n'aborderons pas la création du service Ping-Lan et des commandes check_ping et check_host_alive dans cet article.
Stacks Image 16549
Schéma de principe pour la configuration

1.2 Préparation des commandes Clapi

Avant de créer notre configuration, vous pouvez améliorer l'utilisation de la commande clapi si ce n'est pas déjà fait.

2 Création de la configuration avec clapi

2.1 Macros Personnalisées

Passons à la configuration de Centreon. Nous commencerons par les macros personnalisées pour réaliser la configuration.
Stacks Image 16602
création des macros
Centreon-Clapi
Création des macros personnalisées avec mon script que vous trouverez ici (nous créons juste les macros utiles pour la suite)
./create_macrocustom.sh _SERVICEWARNING 0 Central "Custom Macro"
./create_macrocustom.sh _SERVICECRITICAL 0 Central "Custom Macro"
./create_macrocustom.sh _SERVICEMODE 0 Central "Custom Macro"
./create_macrocustom.sh _SERVICEOPTION 0 Central "Custom Macro"
./create_macrocustom.sh _SERVICEPLUGIN 0 Central "Custom Macro"
./create_macrocustom.sh _SERVICEINTERFACE 0 Central "Custom Macro"
./create_macrocustom.sh _SERVICESPEED 0 Central "Custom Macro"

2.2 Les commandes check_centreon_plugin_local_os et check_centreon_local_network_os

Il m'a semblé judicieux de créer eux commandes dont une spécifique pour le mode traffic. En effet, celui-ci comprend plus de paramètres telle que la vitesse de la carte et valeurs limites en entrée et en sortie.
Stacks Image 16639
synoptique des commandes
Voici la configuration des ces commandes dans l'interface web.
Stacks Image 16667
les deux commande check_centreon_plugin_local_os et check_centreon_plugin_network_os
Ci-dessous les champs Command Line des commandes respectives check_centreon_plugin_local_os et check_centreon_plugin_network_os.
$USER1$/centreon_plugins.pl --plugin=$_SERVICEPLUGIN$ --mode=$_SERVICEMODE$ --warning=$_SERVICEWARNING$ --critical=$_SERVICECRITICAL$ $_SERVICEOPTION$

$USER1$/centreon_plugins.pl --plugin=$_SERVICEPLUGIN$ --mode=$_SERVICEMODE$ --speed=$_SERVICESPEED$ --name=$_SERVICEINTERFACE$ --warning-out=$_SERVICEWARNING$ --critical-out=$_SERVICECRITICAL$ --warning-in=$_SERVICEWARNING$ --critical-in=$_SERVICECRITICAL$ $_SERVICEOPTION$
Centreon-Clapi

commande check_centreon_plugin_local_os
clapi -o CMD -a ADD -v 'check_centreon_plugin_local_os;check;$USER1$/centreon_plugins.pl --plugin=$_SERVICEPLUGIN$ --mode=$_SERVICEMODE$ --warning=$_SERVICEWARNING$ --critical=$_SERVICECRITICAL$ $_SERVICEOPTION$'

commande check_centreon_plugin_network_os
clapi -o CMD -a ADD -v 'check_centreon_plugin_local_networks_os;check;$USER1$/centreon_plugins.pl --plugin=$_SERVICEPLUGIN$ --mode=$_SERVICEMODE$ --speed=$_SERVICESPEED$ --name=$_SERVICEINTERFACE$ --warning-out=$_SERVICEWARNING$ --critical-out=$_SERVICECRITICAL$ --warning-in=$_SERVICEWARNING$ --critical-in=$_SERVICECRITICAL$ $_SERVICEOPTION$'

2.3 Les templates de service

Maintenant, il s'agit de créer les templates de services pour les modes que l'on a défini en début de chapitre.
Stacks Image 16754
synoptique des templates

2.3a Création du modèle service-generique-actif

Les templates de service utiliseront un template de base service-generique-actif. Créez-le si ce n’est pas déjà fait.
Centreon-clapi

# Template de base pour les service
clapi  -o STPL -a add -v "service-generique-actif;service-generique-actif;"
clapi -o STPL -a setparam -v "service-generique-actif;check_period;24x7"
clapi -o STPL -a setparam -v "service-generique-actif;max_check_attempts;3"
clapi -o STPL -a setparam -v "service-generique-actif;normal_check_interval;5"
clapi -o STPL -a setparam -v "service-generique-actif;retry_check_interval;2"
clapi -o STPL -a setparam -v "service-generique-actif;active_checks_enabled;1"
clapi -o STPL -a setparam -v "service-generique-actif;passive_checks_enabled;0"
clapi -o STPL -a setparam -v "service-generique-actif;notifications_enabled;1"
clapi -o STPL -a addcontactgroup -v "service-generique-actif;Supervisors"
clapi -o STPL -a setparam -v "service-generique-actif;notification_interval;0"
clapi -o STPL -a setparam -v "service-generique-actif;notification_period;24x7"
clapi -o STPL -a setparam -v "service-generique-actif;notification_options;w,c,r,f,s"
clapi -o STPL -a setparam -v "service-generique-actif;first_notification_delay;0"
Les templates de service pour les systèmes de fichiers Linux utiliseront un modèle principal disk-local-Model-Service. Voici les commandes clapi pour créer ces modèles de service.
Centreon-clapi

# CPU
clapi -o STPL -a add -v "Cpu-local-model-service;Cpu-local;service-generique-actif" 
clapi -o STPL -a setparam -v "Cpu-local-Model-Service;check_command;check_centreon_plugin_local_os"
clapi -o STPL -a setmacro -v "Cpu-local-Model-Service;PLUGIN;os::linux::local::plugin"
clapi -o STPL -a setmacro -v "Cpu-local-Model-Service;WARNING;70"
clapi -o STPL -a setmacro -v "Cpu-local-Model-Service;CRITICAL;90"
clapi -o STPL -a setmacro -v "Cpu-local-Model-Service;MODE;cpu"
clapi -o STPL -a setparam -v "Cpu-local-Model-Service;graphtemplate;CPU"

# DISK
# Model Disk
clapi -o STPL -a add -v "disk-local-Model-Service;disk-local-model;service-generique-actif"
clapi -o STPL -a setparam -v "disk-local-Model-Service;check_command;check_centreon_plugin_local_os"
clapi -o STPL -a setmacro -v "disk-local-Model-Service;PLUGIN;os::linux::local::plugin"
clapi -o STPL -a setmacro -v "disk-local-Model-Service;WARNING;80"
clapi -o STPL -a setmacro -v "disk-local-Model-Service;CRITICAL;90"
clapi -o STPL -a setmacro -v "disk-local-Model-Service;MODE;storage"
clapi -o STPL -a setparam -v "disk-local-Model-Service;graphtemplate;Storage"

# DISK
# Disk home
clapi -o STPL -a add -v "disk-local-home-Model-Service;Disk-local-Home;disk-local-Model-Service"
clapi -o STPL -a setmacro -v "disk-local-home-Model-Service;OPTION;--name /home"

# DISK
# Disk root
clapi -o STPL -a add -v "disk-local-root-Model-Service;Disk-local-Root;disk-local-Model-Service"
clapi -o STPL -a setmacro -v "disk-local-root-Model-Service;OPTION;--name /"

# DISK
# Disk tmp
clapi -o STPL -a add -v "disk-local-tmp-Model-Service;Disk-local-Tmp;disk-local-Model-Service"
clapi -o STPL -a setmacro -v "disk-local-tmp-Model-Service;OPTION;--name /tmp"

# DISK
# Disk usr
clapi -o STPL -a add -v "disk-local-usr-Model-Service;Disk-local-Usr;disk-local-Model-Service"
clapi -o STPL -a setmacro -v "disk-local-usr-Model-Service;OPTION;--name /usr"

# DISK
# Disk var
clapi -o STPL -a add -v "disk-local-var-Model-Service;Disk-local-Var;disk-local-Model-Service"
clapi -o STPL -a setmacro -v "disk-local-var-Model-Service;OPTION;--name /var"

# LOAD
clapi -o STPL -a add -v "Load-local-Model-Service;Load-local;service-generique-actif"
clapi -o STPL -a setparam -v "Load-local-Model-Service;check_command;check_centreon_plugin_local_os"
clapi -o STPL -a setmacro -v "Load-local-Model-Service;PLUGIN;os::linux::local::plugin"
clapi -o STPL -a setmacro -v "Load-local-Model-Service;WARNING;4,3,2"
clapi -o STPL -a setmacro -v "Load-local-Model-Service;CRITICAL;6,5,4"
clapi -o STPL -a setmacro -v "Load-local-Model-Service;MODE;load"
clapi -o STPL -a setparam -v "Load-local-Model-Service;graphtemplate;LOAD_Average"

# MEMORY
clapi -o STPL -a add -v "Memory-local-Model-Service;Memory-local;service-generique-actif"
clapi -o STPL -a setparam -v "Memory-local-Model-Service;check_command;check_centreon_plugin_local_os"
clapi -o STPL -a setmacro -v "Memory-local-Model-Service;PLUGIN;os::linux::local::plugin"
clapi -o STPL -a setmacro -v "Memory-local-Model-Service;WARNING;70"
clapi -o STPL -a setmacro -v "Memory-local-Model-Service;CRITICAL;90"
clapi -o STPL -a setmacro -v "Memory-local-Model-Service;MODE;memory"
clapi -o STPL -a setparam -v "Memory-local-Model-Service;graphtemplate;Memory"

# TRAFFIC
clapi -o STPL -a add -v "Traffic-local-Model-Service;Traffic-local;service-generique-actif"
clapi -o STPL -a setparam -v "Traffic-local-Model-Service;check_command;check_centreon_plugin_local_networks_os"
clapi -o STPL -a setmacro -v "Traffic-local-Model-Service;PLUGIN;os::linux::local::plugin"
clapi -o STPL -a setmacro -v "Traffic-local-Model-Service;WARNING;50"
clapi -o STPL -a setmacro -v "Traffic-local-Model-Service;CRITICAL;70"
clapi -o STPL -a setmacro -v "Traffic-local-Model-Service;MODE;traffic"
clapi -o STPL -a setmacro -v "Traffic-local-Model-Service;SPEED;1000"
clapi -o STPL -a setmacro -v "Traffic-local-Model-Service;OPTION;--units=%"
clapi -o STPL -a setmacro -v "Traffic-local-Model-Service;INTERFACE;eth0"
clapi -o STPL -a setparam -v "Traffic-local-Model-Service;graphtemplate;Traffic"

# SWAP
clapi -o STPL -a add -v "Swap-local-Model-Service;Swap-local;service-generique-actif"
clapi -o STPL -a setparam -v "Swap-local-Model-Service;check_command;check_centreon_plugin_local_os"
clapi -o STPL -a setmacro -v "Swap-local-Model-Service;PLUGIN;os::linux::local::plugin"
clapi -o STPL -a setmacro -v "Swap-local-Model-Service;WARNING;80"
clapi -o STPL -a setmacro -v "Swap-local-Model-Service;CRITICAL;90"
clapi -o STPL -a setmacro -v "Swap-local-Model-Service;MODE;swap"
clapi -o STPL -a setparam -v "Swap-local-Model-Service;graphtemplate;Memory"
Vous obtiendrez, par exemple, le template Traffic-local-Model-service.
Stacks Image 16811
le template Traffic-local-Model-Service

2.4 Le template d’hôte

Nous regrouperons les services dans un template d'hôte nommé OS-Linux-local
Centreon-clapi

# HOSTS MODEL GROUP
clapi -o HTPL -a add -v "OS-Linux-local;OS-Linux-local;;;;"
clapi -o STPL -a addhost -v "Cpu-local-Model-Service;OS-Linux-local"
clapi -o STPL -a addhost -v "disk-local-home-Model-Service;OS-Linux-local"
clapi -o STPL -a addhost -v "disk-local-root-Model-Service;OS-Linux-local"
clapi -o STPL -a addhost -v "disk-local-tmp-Model-Service;OS-Linux-local"
clapi -o STPL -a addhost -v "disk-local-usr-Model-Service;OS-Linux-local"
clapi -o STPL -a addhost -v "disk-local-var-Model-Service;OS-Linux-local"
clapi -o STPL -a addhost -v "Load-local-Model-Service;OS-Linux-local"
clapi -o STPL -a addhost -v "Memory-local-Model-Service;OS-Linux-local"
clapi -o STPL -a addhost -v "Swap-local-Model-Service;OS-Linux-local"
clapi -o STPL -a addhost -v "Traffic-local-Model-Service;OS-Linux-local"
Stacks Image 16852
le template d'hôte OS-Linux-local avec les relations de template de service

2.5 Création de notre hôte

Pour créer notre hôte nous utiliserons les templates d'hôtes generic-host et OS-Linux-local
Centreon-clapi

# CREATE HOST
clapi -o HOST -a add -v "supervision;serveur supervision;127.0.0.1;generic-host;Central;Linux-servers"
clapi -o HOST -a addtemplate -v "supervision;OS-Linux-local"
clapi -o HOST -a applytpl -v "supervision"
Stacks Image 16889
Création de notre hôte pour la supervision

3 Vérification de la configuration

Appliquez la configuration. Vous devriez avoir cette vue pour les services après quelques minutes de fonctionnement.
Stacks Image 16910
Résultat des plugins pour le serveur supervision
comments powered by Disqus
 Vous êtes ici: