Introduction

Shinken Enterprise s’appuie sur des programmes externes appelés "plugin de check ou sonde" pour pouvoir superviser une large variété d'éléments 

 

Qu'est ce qu'un plugin?

Les sondes sont des exécutables compilés ou des scripts (scripts Perl , scripts shell scripts, etc.) qu peuvent être lancés par une ligne de commande afin de vérifier le statut d'un hôte ou d'un check. Shinken Enterprise utilise les retours de ces sondes pour déterminer le statut des éléments 

Shinken Enterprise lancera une sonde à chaque fois que ce sera nécessaire pour vérifier un statut. La sonde fait quelque chose (terme volontairement générique) pour procéder à la vérification en simplement retourner le résultat vers Shinken Enterprise  qui prendra alors les actions nécessaires en fonction de ce retour (lancement d'événement, envoi de notifications, etc).

 

Les sondes à un niveau d'abstraction 



 

Les sondes agissent à un niveau d'abstraction entre la logique de supervision présente dans les démons de Shinken Enterprise et les hôtes supervisés. 

Le gros intérêt de l'approche "sonde" est que l'on peut à peur près tout type d'élément. 
Si vous pouvez automatiser le process de vérification d'un élément, alors vous pouvez le faire avec Shinken Enterprise .
Il y a plusieurs milliers de sondes (ou plugin) créées pour superviser des ressources du type charge du processeur, utilisation disque, taux de ping, etc..
Si vous souhaitez superviser quelque chose d'autre, référez vous au paragraphe Plugins API et créez le votre, c'est aussi simple !



Quels sondes sont disponibles ?

Il y a des sondes pour surveiller tout type d'éléments et services .

Ils utilisent des protocoles classiques  WMI, SNMP, SSH, TCP, UDP, ICMP, LDAP et plus encore

Cela permet de surveiller à peu près tout:

  • Unix/Linux, Windows
  • Routeurs, Switches
  • services réseau: "HTTP", "POP3", "IMAP", "FTP", "SSH", "DHCP"
  • Charge CPU , utilisation disque, utilisation mémoire..
  • Applications, databases, logs et plus.

Récupérer des sondes

Shinken Enterprise est livré en standard avec un pack de sondes.

Vous pouvez en trouver beaucoup d'autres dans la communauté Nagios, et plus particulièrement dans les espaces suivants:

Comment utiliser la sonde X?


La plupart des sondes présente des informations de type utilisation en les exécutant avec l'extension "-h" ou "--help" dans la ligne de commande.

¨Par exemple, si vous voulez savoir comment fonctionne la sonde _http plugin works ou quelles options dont possibles, vous devez lancer la commande suivante : 

./check_http --help

 

 

API de sonde

 

Concept de sonde

Les scripts et les exécutables doivent faire au moins 2 choses :

  • sortir  avec l'un des nombreuses valeurs possibles en retour (code retour)
  • retourner au moins une ligne de texte vers "STDOUT"

Le fonctionnement interne de la sonde importe peu à Shinken Enterprise , c'est l'interface entre eux qui compte.


Votre sonde peut vérifier le statut d'un port TCP port,lancer une requête sur une base de données, ou faire tout ce qui est nécessaire pour vérifier un élément. 
Les détails dépendront ce qui doit être vérifié. 

Code retour :

Shinken Enterprise détermine le statut d'un hôte ou d'un check en évaluant le code retour de la sonde .
La table suivante montre la liste des valeurs possibles, avec leur correspondance possible .

 

Code retourEtat du Service Etat de l'hôte 
0OK UP
1WARNING DOWN
2CRITICAL DOWN
3UNKNOWN DOWN

 

ligne de texte vers "STDOUT" [Format de sortie des données de sonde]

Au minimum, la sonde doit retourner une ligne de texte. La sonde peut également retourner en option des données de performance pour la métrologie.  

 

Le format standard de sortie d'une sonde est le suivant :

TEXT OUTPUT | OPTIONAL PERFDATA

Les données de performance sont optionnelles.


Si un sonde retourne des données de performance, elles doivent être séparées du reste du texte par le symbole pipe (|) .


Exemples de retour de sonde 

Voyons quelques exemples possibles

Cas 1: une ligne de retour (texte seulement)

Imaginons une sonde qui retourne une ligne telle que décrite en dessous :


DISK OK - free space: /var 3326 MB (56%);



Si cette sonde est utilisée pour réaliser une verification de service, la totalité de al ligne retour sera stockée dans $SERVICEOUTPUT$ .

Cas 2: une ligne de retour (texte et données de performance)

La sonde peut retourner en option des données de performance utilisable par une application tierce. Dans ce cas, les données de performance doivent être séparées par le symbole pipe (|) :


DISK OK - used space: /var 3326 MB (56%); | /var=3326


Si cette sonde est utilisée pour vérifier un service, la partie à gauche du symbole sera stockée dans  <$SERVICEOUTPUT$>  et la partie à droite du séparateur seront stockées dans  $SERVICEPERFDATA$

 

Une donnée de performance est composée au minimum de :

key=value

Par exemple:

/var=3326


Vous pouvez alors avoir en option plus d'informations :

 key=valueUNIT;warning;critical;minimumvalue;maximalvalue

For example:

/var=3326MB;5948;5958;0;5968


Vous pouvez avoir une série de données de performance séparées par un espace :

HTTP OK: HTTP/1.1 200 OK - 20156 bytes in 0.271 second response time |time=0.270634s;;;0.000000 size=20156B;;;0

 

Taille maximum du retour d'une sonde 

Shinken Enterprise va seulement lires les premiers 64 KB de données qu'une sonde retourne. Cela évite de surcharger une base de données.

  • No labels

0 Comments

You are not logged in. Any changes you make will be marked as anonymous.