À vous de jouer !
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 : command, service 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
}