L'actu sur le net

- Contributions de l’équipe OSSA
- Toolinux
- Da Linux French Page
- Daily Daemon News
- Libroscope
- Linagora.com
- LinuxFrench.Net
- LogicielLibre.Net
- PHP

Articles populaires

- [Manuel] Introduction à Cacti
- [Tutoriel] Ajout d’un script dans les commandes Nagios
- [Nagios] Surveillance des disques RAID sous Linux
- [OpenLDAP] Start/stop script
- Fichiers de configurations Samba
- JMX (Java Management eXtensions)
- [OpenLDAP] Script de démarrage et d’arrêt
- [Nagios] Supervision of OpenLDAP’s replication status

 © Linagora.com

Accueil > Contributions > Nagios > [Nagios] Calcul du temps de réponse d’un annuaire LDAP
Supervision d’un annuaire LDAP

[Nagios] Calcul du temps de réponse d’un annuaire LDAP

Présentation

Le script check_qos_ldap.pl se connecte à un annuaire LDAP et effectue une recherche ciblée sur le RootDSE. Le temps mis pour se connecter, effectuer la recherche et se déconnecter est affiché et selon les seuils définis un statut Ok, Warning ou Critical est transmis à Nagios. La valeur renvoyée est exprimée en millièmes de secondes et pour l’affiner encore plus, il est possible d’utiliser les threads pour effectuer les recherches, la valeur envoyée étant alors la moyenne des valeurs retournées par chaque thread.

Les modules Perl suivants sont utilisés par le script, ils doivent être installés sur la machine sur laquelle il sera hébergé :
- Le module Getopt::Std
- Le module Perl::LDAP
- La fontion gettimeofday() du module Time::HiRes
- Le module threads, seulement si un nombre de threads est précisé.

Usage

Le script s’utilise ainsi :

./check_qos_ldap.pl -H hostname [-p port] [-D binddn -W bindpw] [-n nb_threads] [-w warning_time] [-c critical_time]

Les paramètres obligatoires sont :
- hostname : nom ou IP de l’annuaire LDAP. On peut utiliser une URI LDAP (de la forme ldap://host:port), dans ce cas le paramètre port (-p) sera ignoré même s’il est précisé.

Les paramètres facultatifs sont :
- port : port de l’annuaire LDAP. S’il n’est pas précisé, c’est le port 389 qui est utilisé. Si une URI LDAP avec un port a été utilisée dans le paramètre hostname, alors la valeur de port est ignorée.
- binddn : identifiant d’une entrée dans l’annuaire ayant les droits de lecture sur l’entrée RootDSE. Cette option est obligatoire si les droits de lecture ne sont pas activés par défaut dans l’annuaire.
- bindpw : Le mot de passe associé à l’identifiant indiqué dans le paramètre binddn.
- nb_thread : le nombre de threads à utiliser pour calculer le temps de réponse moyen. Les threads étant inclus dans Perl seulement depuis la version 5.8, ce paramètre doit être absent ou fixé à 0 si le script est exécuté avec une version de Perl antérieure.
- warning_time : si le temps de réponse est supérieur à cette valeur, le statut Warning est renvoyé à Nagios. La valeur par défaut est de 20 secondes.
- critical_time : si le temps de réponse est supérieur à cette valeur, le statut Critical est renvoyé à Nagios. Cette valeur doit être supérieure à celle inscrite dans le paramètre warning_time. Ce paramètre détermine également le timeout de la connexion LDAP utilisée pour effectuer la recherche. La valeur par défaut est de 60 secondes.

Exemple :


./check_qos_ldap.pl -H ldap.linagora.com -n 5 -w 3 -c 10

Configuration interne au script

Quelques variables sont définies à l’intérieur du script, il peut être utile de les modifier dans des situations spécifiques. Il faut alors éditer le script et changer la valeurs des variables :
- $version : version du protocole LDAP utilisée. Elle est à 3 par défaut mais certains anciens annuaires n’acceptent que LDAPv2, il faut alors la modifier.
- %code : table de hachage contenant les codes de retour de Nagios. À moins d’une reprogrammation totale de Nagios, elle ne doit pas être modifiée.

Intégration dans Nagios

Un tutoriel spécifique décrit les manipulations nécessaire à l’intégration de ce script dans Nagios.

2004 (c) Clément OUDOT

Script Perl - Remplacer l’extention .txt par .pl après le téléchargement.

 Qui sommes nous ?

Dernière mise à jour : 27/08/2008
XHTML - SPIP 1.9.2