Sommaire

Contexte

Le check Scheduler - $KEY$ - Running Well vérifie que le démon Scheduler peut être correctement contacté sur le réseau et affiche son numéro de version.

Affiche également le nombre d'éléments qu'il gère dans un tableau, en distinguant les Hôtes, les Clusters et les Checks, ainsi que le total des éléments. (   Résultat court   )

Présente la liste des démons auxquels le Scheduler doit se connecter, et l'état des connexions (  Résultat long  ).

Donne un état des modules chargés (  Résultat long  ).


Paramétrage

Le check utilise la ligne de commande suivante :

$PLUGINSDIR$/check_shinken -H "$HOSTADDRESS$" -p "$ARG2$" --shinkenversion "$SHINKENVERSION$" -t scheduler -m $ARG1$ -l "lck-$LASTSERVICECHECK$" --passive_poller_latency "$_HOSTPASSIVE_POLLER_LATENCY$" --timeout "$_HOSTCHECK_SHINKEN_TIMEOUT$" -w "$_HOSTTHRESHOLD_CPU_STOLEN_WARNING$" -c "$_HOSTTHRESHOLD_CPU_STOLEN_CRITICAL$" --scheduler_too_old_retention_save_margin "$_HOSTSCHEDULER__RETENTION__RENTENTION-IS-TOO-OLD-AFTER_X_MINUTES$"



Données utilisées provenant du modèle

Données communes pour les checks du modèle

Provenant du modèle shinken

NomModifiable surUnitéDéfaut

Valeur par défaut

à l'installation de Shinken

Description
CHECK_SHINKEN_TIMEOUT

l'Hôte

( Onglet Données )

seconde

33

Temps maximum durant lequel le check va attendre une réponse du démon.

Provenant du modèle shinken-daemon

NomModifiable surUnitéDéfaut

Valeur par défaut

à l'installation de Shinken

Description
THRESHOLD_CPU_STOLEN_CRITICAL

l'Hôte

( Onglet Données )

%

1010Seuil de CPU volé sur une machine virtuelle supervisée par VMware avant de déclencher un critique.
THRESHOLD_CPU_STOLEN_WARNING

l'Hôte

( Onglet Données )

%

55Seuil de CPU volé sur une machine virtuelle supervisée par VMware avant de déclencher un warning.

Provenant du modèle shinken-scheduler

NomModifiable sur UnitéDéfautValeur par défaut à l'installation de ShinkenDescription
PASSIVE_POLLER_LATENCY

l'Hôte

( Onglet Données )

seconde0.50.5Latence de connexion entre le Scheduler et les Pollers passifs au-delà de laquelle le check est en erreur.
SCHEDULER__RETENTION__
RENTENTION-IS-TOO-OLD-AFTER_X_MINUTES

l'Hôte

( Onglet Données )

minute55Temps additionnel de marge ajouté à l'intervalle de sauvegarde de la rétention avant qu'une rétention ancienne ne soit déclarée trop vieille et retourne en WARNING.
SCHEDULER_PORT

l'Hôte

( Onglet Données )

---77687768Configuration du port de communication avec le Scheduler.
LASTSERVICECHECK

Non modifiable

---------

Date au format timestamp de la dernière exécution du check. 

Cette variable est évaluée uniquement par le Scheduler



Données spécifiques pour ce check

 Pas de données spécifiques pour ce check.

Les données DFE ( Duplicate Foreach )

NomModifiable sur UnitéDéfautValeur par défaut à l'installation de ShinkenDescription
SCHEDULER_LIST

l'Hôte

( Onglet Données )

---

scheduler-master$($_HOSTSCHEDULER

_PORT$)$

scheduler-master$($_HOSTSCHEDULER

_PORT$)$

Liste des Schedulers (  Multi-démon   )

Check(s) impacté(s) :

Données utilisées provenant du check

 Pas de données provenant du check pour ce check.

Données globales

NomModifiable surUnitéDéfautValeur par défaut à l'installation de ShinkenDescription
HOSTADDRESS

l'Hôte

( Onglet Général )

---

Nom de l'hôteNom de l'hôte

Adresse de l'hôte



Résultat

Exemple

Interprétation

Statut

Il peut prendre quatre valeurs  OK / CRITIQUE / ATTENTION   /   INCONNU .

  • Le statut va dépendre du retour de sonde et de la configuration spécifique du check pour les données suivantes :
    •   THRESHOLD_CPU_STOLEN_CRITICAL
    •  THRESHOLD_CPU_STOLEN_WARNING
    •  SCHEDULER__RETENTION__RENTENTION-IS-TOO-OLD-AFTER_X_MINUTES    
    •  CHECK_SHINKEN_TIMEOUT 
  • Voici un tableau récapitulatif du statut attendu suivant le retour de sonde :

Les vérifications communes

Situation

Statut

Démon bloqué et qui doit être redémarré

CRITIQUE

Démon spare non assigné sur un démon master

CRITIQUE

Problème de conflits d'Arbiters

CRITIQUE

Les serveurs ne sont pas à la même heure

CRITIQUE

Erreur de surcharge des disques de logs

ATTENTION 

Démon qui bloque une tentative de chargement d'objet malveillant

ATTENTION 

Démon est en cours d'arrêt

ATTENTION 

Dernière connexion de l'Arbiter remonte à trop longtemps

ATTENTION 

Le démon a chargé une configuration enregistrée, en attendant d'être contacté par l'Arbiter

ATTENTION


Les vérifications spécifiques

Situation

Statut

Le temps de connexion à la base de données :

  • Si c'est supérieur à THRESHOLD_CPU_STOLEN_CRITICAL par défaut : 10%  )

CRITIQUE

Le temps de connexion à la base de données :

  • Si c'est supérieur à THRESHOLD_CPU_STOLEN_WARNING (  par défaut : 5%  )

ATTENTION

Le serveur est injoignable :

ATTENTION

Le temps de connexion à la base de données :

  • Si c'est supérieur à SCHEDULER__RETENTION__RENTENTION-IS-TOO-OLD-AFTER_X_MINUTES (  par défaut : 5%  )

ATTENTION

Si la sonde n'a pas eu de réponse avant le temps maximum

  • Si supérieur à CHECK_SHINKEN_TIMEOUT ( par défaut : 3 sec   )
INCONNU

Résultat

Renvoi au format texte : 

  • L'état de fonctionnement du Scheduler, ainsi que le nombre d'hôtes, de clusters, de checks et le nombre total d'éléments gérés par le Scheduler.

Résultat Long

Renvoi au format texte :

  • Une liste des démons ( Schedulers, Pollers passifs, Reactionners passifs ) auxquels le Schedulers doit se connecter, pour chacun des démons :
    • Son nom ( suivi des tags gérés pour les Pollers passifs ou pour les Reactionners passifs )
    • Son type
    • La valeur du paramètre timeout renseigné dans le fichier de configuration de ce démon ( qui correspond au délai potentiel maximal requis pour le contacter )
    • L'état de la connexion
    • La liste des modules chargés ainsi que leur état

Description des erreurs

Erreur d'un démon bloqué, qui doit être redémarré
  • Si un démon est dans un état bloqué, il doit être redémarré. Si c'est le cas :
    • les checks seront en ERROR avec le message suivant,
    • il faut ouvrir un ticket au support pour analyser le blocage


Un démon spare n'est assigné sur aucun démon master

Un spare n'est pas assigné à un démon master :

Lorsqu’un démon Broker spare n'est assigné par aucun démon master, il est inutile, et remonte en erreur dans le check, tout comme dans la commande shinken-healthcheck, afin qu'il soit rapidement identifié et corrigé.


Problème de conflits d'Arbiters
  • Conflits d'Arbiters :

    Si le démon est contacté par des Arbiters qui ne sont pas sur la même architecture ( par exemple un Arbiter de Production et un autre de l'environnement de Testing ), le check sera mis en CRITICAL .


  • Conflit d'Arbiters qui ont le même nom d'Architecture :

 

Comme dans le cas précédent, le démon est contacté par des Arbiters d'architectures différentes, mais qui ont le même nom. On sort également en CRITICAL mais en avertissant que les noms sont identiques, et en indiquant où changer le nom des architectures.


Les serveurs ne sont pas à la même heure

Si le serveur n'est pas à la même heure que le serveur Arbiter ( qui fait office de référence ), une erreur CRITICAL sera levée, car des temps différents sur les différents serveurs va avoir des effets désastreux sur la cohérence des données de supervision.



Erreur de surcharge des disques de logs

En cas de disques trop lent sur le volume des logs, le check sera mis en WARNING avec l'erreur suivante.

Le démon a bloqué une tentative de chargement d'objet malveillant

Il est possible qu'un démon puisse détecter et bloquer une tentative d'injection d'objet malveillant par le biais de l'une de ses routes.

Un message est remonté :

  • le nombre total de ces tentatives que le démon a bloquées ce jour ( le compte commence à minuit ) ;
  • pour chacune des tentatives ( maximum 3 ) :
    • descriptif de l'objet que l'attaquant essaye de charger,
    • sa provenance de l'attaque, par exemple le nom de la route utilisée, et l'IP à la source de l'attaque,
    • sa date.


Le démon est en cours d'arrêt

Lorsque le démon est en cours d'arrêt, le check le signale, et les informations relatives aux modules ne sont plus disponibles :



La dernière connexion de l'Arbiter remonte à trop longtemps

Si la dernière connexion de l'Arbiter remonte à trop de temps, le démon va lever un WARNING . Ceci peut être dû :

  • Les Arbiters MASTER et SPARE sont réellement éteints
  • Les Arbiters MASTER et SPARE sont en train d'envoyer des configurations à d'autres démons, et ne peuvent donc pas contacter ce démon pour l'instant.


Le temps pris en compte comme limite de dernière connexion est de check_interval * max_check_attempts du démon ( définis dans sa configuration ).

Les valeurs par défauts sont de 60s * 3, soit 3 minutes.


Le démon a chargé une configuration enregistrée

Lorsque le module last-configuration-recorder est actif, pour les démons de type

  • Broker,
  • Poller,
  • Reactionner,
  • Receiver et
  • Scheduler,

Au démarrage, le démon charge la précédente configuration qu'il a reçue de l'Arbiter, en attendant que ce dernier le contacte.

  • Il permet un redémarrage du démon même si l'Arbiter ne peut pas joindre le démon ( ex : coupure réseau  ),
  • Cela permet aussi de rendre le redémarrage du démon plus rapide, dans le cas où l'Arbiter n'a pas changé de version de configuration.

Un WARNING indique que le démon n'a pas encore été contacté par l'Arbiter.

Erreur de vol de CPU

Seulement si la machine virtuelle est hébergée sur un hyperviseur VMWare

  • Si la VM se fait voler trop de temps de calcul (CPU Stolen), le check sera mis en WARNING ou en CRITIQUE ( en fonction du taux de vol fixé par défaut ou indiqué par l'utilisateur ).

Problèmes réseau
Latence réseau importante vers des Pollers passif

Quand la connexion vers un ou plusieurs Pollers passifs souffre d'une latence réseau trop importante, cette information est remontée dans le résultat court  

La récupération des données de connectivité prend trop de temps

Le timeout du check est trop court

Quand le timeout associé à ce check est inférieur au paramètre timeout renseigné dans la configuration d'un des démons que doit contacter le Scheduler, il se peut que la connexion vers ce démon échoue lors du test de connectivité.

Résultat court :

Un message d'avertissement signale que certains démons nécessitent un timeout plus élevé pour être contacté, et une valeur conseillée est affichée.

Résultat long :

Dans ce cas, le Status dans le  résultat long  précise que l'erreur peut être liée au délai trop court accordé pour tester la connexion. Il est alors conseillé d'augmenter le timeout du check pour que le test soit pertinent.

Démons passifs injoignables

Résultat court :

Quand la connexion vers certains Pollers passifs ou certains Reactionners passifs est impossible, le résultat court du check liste les démons injoignables, en précisant pour chacun :

  • Le nom
  • L'adresse et le port de connexion
  • Les tags gérés

Ceux-ci sont regroupés par type ( Poller ou Reactionner ), un compteur indique le nombre de passifs injoignables et le nombre total de démons du même type disponible ( passifs et actifs )

Résultat long :

Le tableau du résultat long , indique les problèmes de connectivité dans la colonne Status, avec un message précisant leur nature. 

Schedulers injoignables

Résultat court  :

Quand le Scheduler ne parvient pas à communiquer avec un ou plusieurs Schedulers du royaume, ceux-ci sont listés avec :

  • Leur nom
  • Leur adresse
  • Leur port de connexion

Un compteur indiquant le nombre de Schedulers injoignables et le nombre total de Schedulers disponibles est également affiché.

L'indisponibilité d'un ou plusieurs Scheduler pouvant perturber le calcul des états de clusters, un message d'avertissement le précisant est également ajouté.

Résultat long  :

Le tableau listant les connexions du Scheduler, indique les problèmes de connectivité vers les autres Schedulers dans la colonne Status, avec un message précisant la nature du problème.

Problème de conflits d'Arbiters

  • Conflits d'Arbiters :

    Si le démon est contacté par des Arbiters qui ne sont pas sur la même architecture ( par exemple un Arbiter de Production et un autre de l'environnement de Testing ), le check sera mis en CRITICAL .

  • Conflit d'Arbiters qui ont le même nom d'Architecture :

 

Comme dans le cas précédent, le démon est contacté par des Arbiters d'architectures différentes, mais qui ont le même nom. On sort également en CRITICAL mais en avertissant que les noms sont identiques, et en indiquant où changer le nom des architectures.

Métriques

NomUnitéDescription
nb_hosts
---

Nombre d'hôtes gérés par ce Scheduler.

nb_clusters
---

Nombre de clusters gérés par ce Scheduler.

nb_late_checks	
---

Nombre d'exécutions de checks ( pour les pollers ) en retard de lancement ( late ) dans ce Scheduler

nb_late_event_handlers
---

Nombre d’exécutions d'event handlers ( pour les reactionners ) en retard de lancement ( late ) dans ce Scheduler

nb_checks
---

Nombre de checks gérés par ce Scheduler.

nb_late_notifications
---

Nombre d’exécutions de notifications ( pour les reactionners ) en retard de lancement ( late ) dans ce Scheduler