domingo, 25 de novembro de 2012

Monitorando a Temperatura do CPD com Termometro USB da China e Zabbix

Introdução
Recentemente comprei um Termometro USB na Deal Extreme por US$ 9,20 com frete grátis, isso mesmo, praticamente R$ 20,00. Quando ele chegou espetei em uma máquina Windows, instalei o software e realizei os testes, tudo OK. Hora de fazer esse cara funcionar no Linux.

Fiz algumas pesquisas na net e achei alguns scripts[1][2] que resolviam o problema, mas eu executava o script, ele não dava erro, mas não mostrava nada, cheguei a achar um projeto de um novo driver para resolver o problema[3], mas resolvi procurar mais um pouco, então encontrei o link que dizia que ele procurou pelo ID do USB[4], resolvi fazer a mesma coisa. Então achei em um fórum da própia DX[5], a dica do pcsensor[6], e a informação mais importante: Que ele tinha comprado 2 termometros, o primeiro que funcionava com as soluções que eu já tinha encontrado e um novo que ele adquiriu depois, e que possui um novo chipset, e o mesmo não funciona com as soluções anteriores.
Volta a pesquisar soluções com o pcsensor + ID do USB e achei a receita base para o tutorial abaixo aqui.

Instalação do PCSensor
Resolver as dependências:
# yum install libusb-devel make gcc

Download dos fontes:
# wget http://www.isp-sl.com/pcsensor-0.0.1.tgz

Compilar:
# tar xzf pcsensor-0.0.1.tgz
# cd pcsensor-0.0.1
# make clean
# make


Instalar:
# cp ./pcsensor /usr/local/bin/
# cp 99-tempsensor.rules /etc/udev/rules.d

Inserir o Termometro USB, se ele já estava inserido, remova e insira novamente.

Testar a leitura de informações:
# pcsensor
2012/11/23 17:14:17 Temperature 65.30F 18.50C


Separar a parte da informação que nos interessa:
# pcsensor | cut -d" " -f5 | cut -dC -f1
18.50

Criar a entrada no Agente do Zabbix:
# vi /etc/zabbix/zabbix_agentd.conf
UserParameter=temperatura,/usr/local/bin/pcsensor | cut -d" " -f5 | cut -dC -f1

Reiniciar o serviço do agente:
# service zabbix_agentd restart

Criar o item no Zabbix Server:
Clique em Configuration // Hosts
Na linha do servidor que está com o termometro instalado, clique em Items
Clique em Create item
Configure conforme imagem abaixo:

Observações:
Em Host vai aparecer o nome do seu servidor;
O campo Name pode ter o nome que você quiser dar ao item;
O campo Key deve ter o mesmo nome informado no arquivo de configuração do agente;
Em Host Interface vai aparecer o IP do Servidor.
Clique no botão Save.

Agora basta montar o gráfico com o item recém criado:


Referências:
[1] https://grepular.com/Using_Linux_to_Monitor_Room_Temperature_Remotely_and_Cheaply
[2] http://lab4.org/wiki/Zabbix_Raumtemperatur_ueberwachen_mit_USB_Temper
[3] http://relavak.wordpress.com/2009/10/17/temper-temperature-sensor-linux-driver/
[4] http://bitplane.net/2012/01/temper1-ubuntu/
[5] http://club.dx.com/forums/forums.dx/threadid.463194
[6] http://www.isp-sl.com/pcsensor-0.0.1.tgz

9 comentários:

Unknown disse...

Déo bom dia,
estou com um problema semelhante com este modelo abaixo:
http://www.hw-group.com/products/HWg-STE/STE_ip_temperature_sensor_en.html

já postei algumas duvidas na lista mas creio que com esta sua recente experiência poderia ser de grande valia

André Déo disse...

Alex,

O que vc quer de ajuda??? Qual a sua demanda???

Déo

Unknown disse...

Sim André isso mesmo rsrsrs

Unknown disse...

Prezado,
Fiz todos os procedimentos porém o zabbix só pega a temperatura 1
sabe o que pode está acontecendo?

Unknown disse...

Será que alguém poderia me ajudar instalei o pcsensor em um servidor físico Windows e quero colocar ele no Zabbix, so que no zabbix o Servidor windows esta sendo monitorado mas quando crio o item para gerar o gráfico no zabbix não esta reconhecendo. No servidor Windows usando o próprio programa do pcsensor consigo monitorar a temperatura mas quando tento adicionar no zabbix não funciona.

Alguém teria alguma ideia.

obrigado

André Déo disse...

Geraldo,

Precisaria ver como você criou esse item, para poder te responder, entre em contato pela lista do Zabbix:

https://br.groups.yahoo.com/neo/groups/zabbix-brasil/info

Abraços,

Unknown disse...

Bom dia André,

A configuração que eu fiz foi a que você fez no tutorial. E como faço para achar seu contato nesse endereço que você me passou.

obrigado

André Déo disse...

Geraldo,

andredeo (a) gmail . com

Abraços,

Lucas disse...

Preciso de uma ajuda, se tiver alguem por ai, a respeito do comando