Sommaire

Contexte

Pour fonctionner, un conteneur a besoin d'utiliser une image. Tous les conteneurs, sans exception, les utilisent.

Les images peuvent provenir de deux sources : 

  • Récupéré en ligne, sur le site officiel de Docker ( La provenance la plus répandue )
  • Construite en local ( Nécessite des connaissances poussées en Docker )

Une image peut être comparée à l'OS pour un serveur. Ce sont elles qui apportent la couche logicielle au conteneur mais également les services que ceux-ci seront chargés de faire fonctionner. Pour résumer, elles sont responsables de l'ensemble des éléments qui fonctionnent dans un conteneur. Une fois utilisées, les images sont stockées localement sur le docker.


Pour mettre à jour les éléments au sein d'un conteneur, il n'est pas commun d'effectuer d'actions directes sur ces éléments. La méthode privilégiée consiste simplement à remplacer l'image stockée localement au docker en la remplaçant par une version plus récente.

C'est dans cette optique que le check "image-age" a été créé. Il permet de vérifier depuis combien de jours une image est présente sur le docker, et donc de savoir de quand date la dernière mise à jour des conteneurs qui l'utilisent.


Le changement de statut du check repose donc sur une seule règle :

  • Si l’âge d’une image dépasse les seuils définis (warning ou critical), alors le statut du check évolue automatiquement.


Ce check permet donc :

  • de repérer les images obsolètes,

  • d’identifier les conteneurs n’ayant pas été mis à jour,

  • de maintenir le niveau de sécurité.

Pour résumer, ce check est un indicateur utile pour vérifier les versions de ses conteneurs.

Paramétrage

Le check utilise la ligne de commande suivante :

$SHINKEN_DOCKER-ON-LINUX-BY-SSH_PLUGINSDIR$/check_docker_SSH.py 
	-H "$HOSTADDRESS$"
	-u "$_HOSTDOCKER-ON-LINUX-BY-SSH__SSH-USER$"
	-p "$_HOSTDOCKER-ON-LINUX-BY-SSH__SSH-PORT$"
	-k "$_HOSTDOCKER-ON-LINUX-BY-SSH__SSH-KEY$"
	-x "$_HOSTDOCKER-ON-LINUX-BY-SSH__SSH-PASSPHRASE$"
	-m "images_ages"
	-w "$_HOSTDOCKER-ON-LINUX-BY-SSH__IMAGE-AGE__AGE-WARN$"
	-c "$_HOSTDOCKER-ON-LINUX-BY-SSH__IMAGE-AGE__AGE-CRIT$"
	-e "$_HOSTDOCKER-ON-LINUX-BY-SSH__IMAGES-EXCLUDED$"

Données utilisées provenant du modèle

Données communes pour les checks du modèle

NomModifiable surUnitéDéfautValeur par défaut à l'installation du packDescription
DOCKER-ON-LINUX-BY-SSH__SSH-PORT

l'Hôte

( Onglet Données )

--

22

22

Port de connexion SSH.

_DOCKER-ON-LINUX-BY-SSH__SSH-USER

l'Hôte

( Onglet Données )

--

user-service-shinken

user-service-shinken

Nom de l'utilisateur pour se connecter sur le serveur supervisé.

_DOCKER-ON-LINUX-BY-SSH__SSH-KEY

l'Hôte

( Onglet Données )

--

/var/lib/shinken/.ssh/id_rsa

/var/lib/shinken/.ssh/id_rsa

Chemin vers la clé SSH privée de l'utilisateur   shinken, sur le serveur hébergeant le Poller qui exécutera le check. 

  • Cette clé doit être présente dans les clés autorisées du  compte utilisateur utilisé pour se connecter  sur le serveur Linux supervisé (  voir la donnée SSH_USER ci-dessous ) .
_DOCKER-ON-LINUX-BY-SSH__SSH-PASSPHRASE

l'Hôte

( Onglet Données )

--

$SSH_KEY_PASSPHRASE$

$SSH_KEY_PASSPHRASE$

Phrase secrète utilisée pour déchiffrer la clé privée de l'utilisateur (  si celle-ci est protégée par une passphrase  ). La clé privée déchiffrée est ensuite utilisée pour authentifier l'utilisateur.

Données spécifiques pour ce check

NomModifiable surUnitéDéfautValeur par défaut à l'installation de ShinkenDescription
_DOCKER-ON-LINUX-BY-SSH__CONTAINERS-EXCLUDED

l'Hôte

( Onglet Données )

--

__

__

La liste des conteneurs à exclure des vérifications.

Cette donnée n'est utilisée que pour les checks des modèles "all_containers".

_DOCKER-ON-LINUX-BY-SSH__IMAGES-EXCLUDED

l'Hôte

( Onglet Données )

--

__

__

La liste des images à exclure des vérifications pour le check "Image-age".

Cette donnée n'est utilisée que pour les checks des modèles "all_containers".

DOCKER-ON-LINUX-BY-SSH__IMAGE-AGE__AGE-CRIT

l'Hôte

( Onglet Données )

Jours100 100

Définit la durée depuis la dernière mise à jour de l'image à partir de laquelle le check passe en CRITIQUE.

  • Il suffit que l'image d'un des conteneurs franchisse ce seuil pour que le check change d'état.
DOCKER-ON-LINUX-BY-SSH__IMAGE-AGE__AGE-WARN

l'Hôte

( Onglet Données )

Jours90 90

Définit la durée depuis la dernière mise à jour de l'image à partir de laquelle le check passe en ATTENTION.

  • Il suffit que l'image d'un des conteneurs franchisse ce seuil pour que le check change d'état.

Données DFE ( Duplicate Foreach )

Pas de données DFE pour ce check

Données utilisées provenant du check

Pas de données provenant du check pour ce modèle

Données globales

NomModifiable surUnitéDéfautValeur par défaut à l'installationDescription
USERPLUGINSDIR

Non modifiable

( Sauf Admin Shinken )

--/var/lib/shinken-user/libexec /var/lib/shinken-user/libexec

Chemin absolu contenant les sondes installées par Shinken.

SHINKEN_DOCKER-ON-LINUX-BY-SSH_VENDOR

Non modifiable

( Sauf Admin Shinken )

--shinken-additional-packs shinken-additional-packs

Dossier fourni par Shinken.

SHINKEN_DOCKER-ON-LINUX-BY-SSH_PACKNAME

Non modifiable

( Sauf Admin Shinken )


docker-on-linux-by-SSH__shinken docker-on-linux-by-SSH__shinken

Dossier contenant les sondes.

SHINKEN_DOCKER-ON-LINUX-BY-SSH_PLUGINSDIR

Non modifiable

( Sauf Admin Shinken )

--
USERPLUGINSDIR$/$SHINKEN_DOCKER-ON-LINUX-BY-SSH_VENDOR$/$SHINKEN_DOCKER-ON-LINUX-BY-SSH_PACKNAME
/var/lib/shinken-user/libexec/shinken-additional-packs/docker-on-linux-by-SSH__shinken

Chemin absolu du dossier contenant les sondes du pack docker-on-linux-by-SSH__shinken  ( non modifiable ).

Propriétés de l'hôte

NomModifiable surUnitéDéfautValeur par défautDescription
HOSTADDRESS

l'Hôte

( Onglet Général )

--

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

Adresse de l'hôte

Résultat

Exemple

Interprétation des données

Statut

  • Il peut prendre 3 états  OK / CRITIQUE / ATTENTION   .

    • Le statut va dépendre du retour de sonde et de la configuration spécifique du check pour les données suivantes :

      • DOCKER-ON-LINUX-BY-SSH__IMAGE-AGE__AGE-WARN 
      • DOCKER-ON-LINUX-BY-SSH__IMAGE-AGE__AGE-CRIT
    • Voici un tableau récapitulatif du statut attendu suivant le retour de sonde :


Le texte de la colonne  "Affichage des seuils" montre les paramètres utilisés et leur valeur définie sur l'équipement supervisé.

Situation Statut Exemple
  • L'âge d'une image dépasse la valeur de :
    • DOCKER-ON-LINUX-BY-SSH__IMAGE-AGE__AGE-WARN  
ATTENTION

  • L'âge d'une image dépasse la valeur de :
    • DOCKER-ON-LINUX-BY-SSH__IMAGE-AGE__AGE-CRIT

CRITIQUE


Résultat

Le résultat court affiche, en une ligne, un résumé de l'âge des images. Ce retour compact permet de pouvoir visualiser l'information même avec la taille des lignes réduites dans l'interface de visualisation.

Résultat Long

Le résultat long affiche un tableau regroupant l'ensemble des images détectées et leur âge.

Métriques

Interprétation des métriques

Nom de la métriqueUnitéDescriptionSeuil d'avertissementSeuil critique
(nom-du-container)_age joursRetourne la durée d'existence de l'image utilisée par le conteneur Docker.

DOCKER-ON-LINUX-BY-SSH__IMAGE-AGE__AGE-WARN 

DOCKER-ON-LINUX-BY-SSH__IMAGE-AGE__AGE-CRIT

Exemple

Erreurs et pré-requis

Error rendering macro 'excerpt-include'

User 'null' does not have permission to view the page.