Surveillance de température avec Nagios et la sonde THUM

Classé dans : Supervision | Aucun commentaire

vendredi 09 octobre 2009

Je recherchais une solution simple et peu onéreuse pour surveiller la température de notre salle serveur et émettre des alertes en cas de problème.


Un collègue m'avait présenté une sonde à brancher sur le réseau : le SP2T01.
Les prix tournant autour de 350 € HT, je trouvais ça un peu cher.

J'ai fini par trouver une société américaine qui propose une sonde de température / humidité à brancher sur port USB et qui possède un logiciel (qui est un service Windows) de surveillance et surtout, la mise à dispo des données brutes de mesure sur un serveur web.

Cette sonde, c'est le THUM (Temperature Humidity USB Monitor) de Practical.
Son prix est modique : 120$ + 35$ de port (soit 110 € TTC + 40€ de droit de douane ).

Vu que nous monitorons déjà tous nos serveur sous Nagios, voila un produit parfait pour ce que je souhaitais faire.
J'ai donc développé un plugin pour Nagios qui récupère les données via le serveur web.

Si quelqu'un est intéressé, voici donc le script du plugin (c'est du perl) :

Plugin Nagios check_thum

Ce plugin attend 4 paramètres :

  • -t : type de données à retourner : temp pour la température et rh pour l'humidité
  • -w : la valeur de warning
  • -c : la valeur critique
  • -u : l'url de notre fichier déposé par THUM

Et voila à quoi ressemble mon fichier de conf pour le monitoring : 

# SALLE INFO
define host{
    host_name        salle-info
    use            hp-site1,ht-reseau
    address            127.0.0.1
}

#~ Temperature
define service{
    service_description    temperature
    use            si-1-minute
    host_name        salle-info
    check_command        check_thum!temp!30!35!http://192.168.2.26/thum/temprh
}

#~ Humidite
define service{
    service_description    humidite
    use            si-1-minute
    host_name        salle-info
    check_command        check_thum!rh!50!80!http://192.168.2.26/thum/temprh
}

# check thum
define command {
    command_name check_thum
    command_line perl /usr/local/nagios/libexec/check_thum.pl -t $ARG1$ -w $ARG2$ -c $ARG3$ -u $ARG4$
}