Contexte

Plusieurs modèles vous permettent de superviser un hôte hébergeant le démon Broker.

  • Le modèle shinken-broker pour vérifier le comportement du démon,.
  • Le modèle shinken-broker-module-sla attachera un check additionnel qui permettra de superviser le module SLA.
  • Le modèle shinken-broker-module-metrology-writer attachera un check additionnel qui permettra de superviser l'écriture des données de métrologie.
  • Le modèle shinken-broker-module-visualisation-ui attachera un check additionnel qui permettra de superviser la lecture des données de métrologie.
  • Le modèle shinken-broker-db attachera quant à lui, les checks qui permettront de superviser la base utilisée par Shinken pour le démon Broker.

  



Description du modèle

Modèle d'hôte correspondant: shinken-broker    (notez que ce modèle hérite du modèle shinken et shinken-broker-db)

Afin de superviser le démon Broker, le modèle shinken-broker appliqué à votre hôte, attachera plusieurs checks qui vérifieront la santé et la performance de ce démon.

Checks


Nom du CheckDescriptionExemple de résultat
Broker - $KEY$ - AliveVérifie que le démon Broker peut être correctement contacté sur le réseau ; la version du démon est affichée également (Résultat court) et que les modules sont opérationnels (Résultat long).

Broker - $KEY$ - Performance API ConnectionVérifie les temps de connexion vers le Broker

Broker - $KEY$ - Performance Modules QueuesVérifie les performances des modules du Broker

Broker - DB - ConnectionVérifie le temps de connexion à la base de données

Broker - DB - Last Flush TimeVérifie la durée du dernier "Flush" de la base de données

Broker - DB - Open ConnectionsVérifie le nombre de connexions en cours sur la base de données



La version V02.07.00 de Shinken est accompagnée d'une mise à jour de Mongodb. Cette nouvelle version comporte notamment un changement de la méthode de sauvegarde des objets au sein de Mongo.

Sur une installation neuve de Shinken, le nouveau format (WiredTiger) est utilisé, ce qui rend le "Broker - DB - Last Flush Time" non pertinent. Dans ce cas, ce check aura le résultat suivant:

Dans le cas d'une mise à jour de Shinken, la méthode de stockage des données dans Mongo n'est pas modifiée et le check "Broker - DB - Last Flush Time" a le même comportement que précédemment.




Lors de la mise à jour de Shinken une montée de version de MongoDB est effectuée. Le check "Broker - DB - Lock Time Percentage" devient obsolète et peut être désactivé. La source "cfg-file-shinken" propose la désactivation du check mais ne peut pas le supprimer automatiquement.



Paramétrage des Checks

Les checks du Broker peuvent être configurés via des données fournies par le modèle.

Les données suivantes sont disponibles:

Nom de la donnéeDescriptionValeur par défautHérité du modèle d'hôte ou locale
SHINKEN_PROTOCOLProtocole utilisé pour établir la connexion avec le Brokerhttpshinken
CHECK_SHINKEN_TIMEOUTTimeout utilisé pour l'établissement de la connexion avec Broker3shinken
BROKER_PORTPort utilisé pour l'établissement de la connexion avec Broker7772Locale
BROKER_LISTListe de Broker (Multi-démon)broker-master$($_HOSTBROKER_PORT$)$Locale - Duplicate For Each
DB_CONNECTION_METHODMéthode de connexion au serveur MongoDB ("direct" ou "ssh")sshshinken-broker-db
DB_CONNECTIONS_CRITSeuil critique du nombre de connexions en cours sur la base de données (en pourcentage)80shinken-broker-db
DB_CONNECTIONS_WARNSeuil warning du nombre de connexions en cours sur la base de données (en pourcentage)70shinken-broker-db
DB_CONNECT_CRITSeuil critique pour le temps de connexion à la base de données (en secondes)4shinken-broker-db
DB_CONNECT_WARNSeuil warning pour le temps de connexion à la base de données (en secondes)2shinken-broker-db
DB_LAST_FLUSH_TIME_CRITSeuil critique pour le temps de flush de la base de données (en millisecondes)10000shinken-broker-db
DB_LAST_FLUSH_TIME_WARNSeuil warning pour le temps de flush de la base de données (en millisecondes)8000shinken-broker-db
DB_PORTPort de la base de données27017shinken-broker-db
DB_SSH_KEYClé SSH privée permettant la connexion au serveur hébergeant MongoDB~/.ssh/id_rsashinken-broker-db
DB_SSH_USERUtilisateur distant avec lequel se connecter au serveur hébergeant MongoDBshinkenshinken-broker-db


Voir la page de Sécurisation des connexions aux bases MongoDB pour plus d'information sur un paramétrage sécurisé.


Détail des commandes


Nom du check

Commande du check

Ligne de commande

Broker - $KEY$ - Alivecheck_shinken_broker!alive!$VALUE1$$PLUGINSDIR$/check_shinken -H "$HOSTADDRESS$" -p "$ARG2$" --shinkenversion "$SHINKENVERSION$" -t broker -m $ARG1$ --timeout $_HOSTCHECK_SHINKEN_TIMEOUT$
Broker - $KEY$ - Performance API Connectioncheck_shinken_broker!api_connection!$VALUE1$$PLUGINSDIR$/check_shinken -H "$HOSTADDRESS$" -p "$ARG2$" --shinkenversion "$SHINKENVERSION$" -t broker -m $ARG1$ --timeout $_HOSTCHECK_SHINKEN_TIMEOUT$
Broker - $KEY$ - Performance Modules Queuescheck_shinken_broker!modules_queue!$VALUE1$

$PLUGINSDIR$/check_shinken -H "$HOSTADDRESS$" -p "$ARG2$" --shinkenversion "$SHINKENVERSION$" -t broker -m $ARG1$ --timeout $_HOSTCHECK_SHINKEN_TIMEOUT$

Broker - DB - Connectioncheck_shinkendb_connection$PLUGINSDIR$/check_shinkendb.py -D -H "$HOSTADDRESS$" -P "$_HOSTDB_PORT$" --connection-method "$_HOSTDB_CONNECTION_METHOD$" --ssh-user "$_HOSTDB_SSH_USER$" --ssh-keyfile "$_HOSTDB_SSH_KEY$" -A connect -W "$_HOSTDB_CONNECT_WARN$" -C "$_HOSTDB_CONNECT_CRIT$" --timeout $_HOSTCHECK_SHINKEN_TIMEOUT$
Broker - DB - Last Flush Timecheck_shinkendb_last_flush$PLUGINSDIR$/check_shinkendb.py -D -H "$HOSTADDRESS$" -P "$_HOSTDB_PORT$" --connection-method "$_HOSTDB_CONNECTION_METHOD$" --ssh-user "$_HOSTDB_SSH_USER$" --ssh-keyfile "$_HOSTDB_SSH_KEY$" -A last_flush_time -W "$_HOSTDB_LAST_FLUSH_TIME_WARN$" -C "$_HOSTDB_LAST_FLUSH_TIME_CRIT$" --timeout $_HOSTCHECK_SHINKEN_TIMEOUT$
Broker - DB - Open Connectionscheck_shinkendb_open_connections$PLUGINSDIR$/check_shinkendb.py -D -H "$HOSTADDRESS$" -P "$_HOSTDB_PORT$" --connection-method "$_HOSTDB_CONNECTION_METHOD$" --ssh-user "$_HOSTDB_SSH_USER$" --ssh-keyfile "$_HOSTDB_SSH_KEY$" -A connections -W "$_HOSTDB_CONNECTIONS_WARN$" -C "$_HOSTDB_CONNECTIONS_CRIT$" --timeout $_HOSTCHECK_SHINKEN_TIMEOUT$