• 15 heures
  • Moyenne

Ce cours est visible gratuitement en ligne.

course.header.alt.is_video

course.header.alt.is_certifying

J'ai tout compris !

Mis à jour le 11/06/2021

Entraînez-vous à créer une sonde de supervision HTTP pour le site Biocoop

À vous de jouer !

Logo de Biocoop
Biocoop

Vous venez d'être recruté comme administrateur système par l'enseigne française de produits bios Biocoop. L’une de vos missions consiste à vous assurer du bon fonctionnement de l'ensemble du site. Pour cela, vous décidez d'utiliser Nagios afin de superviser l'ensemble des serveurs et applications de la plateforme. Notamment, vous décidez de mettre en place un service Nagios permettant de superviser la réponse de la page « Producteurs » du site. Cette page est consultée très fréquemment, car des consommateurs veulent régulièrement savoir d’où proviennent les produits. Pour cela, vous utiliserez le plugin  check_http . 

Découvrez le cahier des charges

 Il s'agit de superviser la page d'accueil du site https://www.biocoop.fr/ avec le plugin  check_http 

  • Le site est sécurisé par un certificat SSL.

  • La page à superviser est la page « Producteurs », correspondant à l'URL  /producteurs-bio/ .

  • La page renvoyée par le plugin doit contenir la chaîne de caractères « Producteurs ».

  • Le poids de la page renvoyée doit être au minimum de 20 Ko.

  • Le temps de réponse doit se situer entre 1 et 2 secondes. 

Étape préliminaire : installez l'environnement SSL

Le site à superviser est protégé par un certificat SSL. Il est donc nécessaire de modifier l'environnement d'exécution des plugins Nagios pour intégrer cela. Ainsi, il faut faire attention aux deux aspects suivants :

  • installer les librairies SSL sur le serveur via les packages Debian ;

  • recompiler les plugins standards Nagios en indiquant l'option  --with-openssl 

Pour effectuer cette action, prenez un terminal sous le compte  root  et lancez les commandes suivantes :

apt-get install libssl-dev
cd /home/nagios/downloads/nagios-plugins-2.2.1/
./configure --with-nagios-user=nagios --with-nagios-group=nagcmd --with-openssl=/usr/bin/openssl
make
make install

Mettez en place votre sonde de supervision

Maintenant que votre environnement d'exécution est prêt, vous pouvez préparer la définition de votre sonde de supervision. Pour cela, il vous faudra passer par plusieurs étapes.

Testez votre sonde à la main

Commencez par tester votre sonde à la main. Pour cela, il vous faudra identifier les différents paramètres dont vous avez besoin pour composer votre commande de test :

  • l'adresse  biocoop.fr  ;

  • l'URL de la page ;

  • la chaîne de caractères à trouver ;

  • le poids minimum de la page renvoyée ;

  • les seuils de temps de réponse ;

  • l’envoi de la sonde en HTTPS.

Pensez bien à tester des faux positifs afin de vérifier que vos seuils et chacun de vos paramètres sont bien pris en compte.

Modélisez la commande Nagios associée

Vous devrez ensuite modéliser la command Nagios associée à l'exécution du plugin, et l'ajouter dans le fichier  commandes.cfg  en la nommant  check-http-biocoop  . Pour cela, vous pouvez vous aider de la définition de command  check-http-exemple-opencr  que nous avons définie ensemble dans le cours. 

Déterminez le host

Vous devrez ensuite déterminer le host auquel est associé le service. Ce host correspondra à la machine hébergeant le service Web de Biocoop. Pour cela, créez un nouveau fichier  biocoop.fr.cfg  dans votre répertoire  opencr_conf  (ou tout autre fichier que vous avez défini comme fichier de configuration), et ajoutez-y la définition du host :

  • le nom, qui doit être  biocoop.fr  ;

  • l'adresse, qui doit être résolue :  biocoop.fr  ;

  • la command à utiliser, qui doit être  check_ping  (fournie par Nagios dans le fichier  /usr/local/nagios/etc/objets/commands.cfg  ) ;

  • un seuil de déclenchement au statut hard, qui doit être fixé à 3.

Encore une fois, vous pouvez vous aidez du host que nous avons défini ensemble dans le cours.

Ajoutez le service utilisant la command sur l'objet host concerné

Dernière étape : il est maintenant nécessaire d'ajouter le service de supervision répondant au mini cahier des charges sur le host biocoop.fr. Pour cela modifiez le fichier  services.cfg  en ajoutant  la définition du service tel qu'il a été demandé dans le cahier des charges. 

Vérifiez votre travail

Vous avez normalement créé un nouveau service de supervision sur le serveur Nagios, avec les 3 éléments fondamentaux suivants : commandservice et host.

Pour cela, vérifier les éléments suivants :

  • La capture d'écran du site d'administration Nagios doit montrer le nouvel objet host et son statut OK.

  • La capture d'écran du site d'administration Nagios doit montrer le nouveau service et son statut OK.

  • Le fichier  commandes.cfg  doit contenir la définition de commande ci-dessous :

define command {
    command_name    check-http-biocoop
    command_line    $USER1$/check_http -H $HOSTADDRESS$ -w $ARG1$ -c $ARG2$ -u $ARG3$ -s $ARG4$ -m $ARG5$ -p 443 -S
}
  • Le fichier  biocoop.fr.cfg  doit contenir la définition de host suivante :

define host {
    host_name           biocoop.fr
    address             www.biocoop.fr
    check_command       check_ping!3000.0,50%!5000.0,80%
    max_check_attempts  3
}
  • Le fichier  services.cfg  doit contenir la définition de service suivante :

define service {
    service_description     HTTPS sur biocoop.fr
    host_name               biocoop.fr
    check_command           check-http-biocoop!1!2!/producteurs-bio/!'Producteurs'!20000
    max_check_attempts  3
}

Exemple de certificat de réussite
Exemple de certificat de réussite