monitorar temperatura usando nagios e microdia usb termometer

Para quem administra um grande numero de servidores usando o mesmo espaço físico pode ser util o monitoramento da temperatura dessa sala…
Minha primeira opção era fazer um dispositivo usando arduino, mas não era a solução mais barata…
até achar o dispositivo :
http://dx.com/p/temper-usb-thermometer-temperature-recorder-for-pc-laptop-81105
Esse dispositivo é capaz de captar a temperatura do ambiente e mandar essas informações pela USB para que um software leia essas informações.
Originalmente ele vem com um software para Windows.

Para obtermos as informações desse hardware apartir do linux, precisamos instalar o pcsensor:
Primeiro instale as dependencias para poder compilar o pcsensor:
#apt-get install gcc libusb-dev
agora vamos começar a instalação do pcsensor:
#wget http://momtchil.momtchev.com/files/pcsensor-1.0.0-multi.tgz
#tar -zxvf pcsensor-1.0.0-multi.tgz
#cd pcsensor-1.0.0
#make

para executar o pcsensor basta chamar o binario rescem criado:

./pcsensor
2012/11/13 09:30:28 Temperature 75.42F 24.12C

vamos copiar esse binario para um lugar acessivel:
#cp pcsensor /usr/bin/

Agora vamos criar um script para o nagios receber esses dados:
(nesse ponto estou assumindo que o nagios e o nagios-nrpe ja estão configurados e funcionando)

crie um script para obter as informações:
crie o arquivo /usr/lib/nagios/plugins/checktemper.sh com o seguinte conteudo:

#!/bin/bash
tempe=`/usr/bin/pcsensor |awk -F”F ” ‘{print $2}’ |awk -F. ‘{print $1}’`
#se temperatura maior que 26
if [ $tempe -gt 26 ]
then echo “Temperature WARNING – Atualmente esta $tempe C no CPD” ; exit 2
else echo ‘Temperature OK’ ; exit 0
fi

de permissão de execução para esse script:
#chmod +x /usr/lib/nagios/plugins/checktemper.sh

agora adicione o script aos comandos do nrpe:
edite o arquivo /etc/nagios/nrpe.cfg
adicione a linha:
command[check_temperature]=/usr/lib/nagios/plugins/checktemper.sh

salve o arquivo e reinicie o nagios-nrpe:
#/etc/init.d/nagios-nrpe-server restart

agora adicione o comando ao nagios server:
edite o arquivo de configuração do servidor o qual inseriu o comando nrpe
e adicione as seguintes linhas:

define service{
use generic-service
host_name HOST_DO_SERVIDOR
service_description Temperatura_Sala
check_command check_nrpe_1arg!check_temperature
max_check_attempts 2
normal_check_interval 2
retry_check_interval 1
check_period 24×7
notification_interval 30
notification_period 24×7
notification_options w,c,r
contact_groups admins
}

Salve o arquivo e reinicie o nagios
Pronto, temos uma solução de monitoramento barata e integrada.