Raspberry Pi&USB温度計&Zabbixで室内温度計測

Raspberry PiにUSB温度計を付けてサーバールーム内の温度計測をやってみました。

USB温度計


『USB温度計! USB thermometer-528018』という製品を使用しました。



内容物

USB温度計
USB延長ケーブル
ドライバCD


取り付けてみた



環境

OS Pidora 18 (Raspberry Pi Fedora Remix)


USB温度計から温度を取得

温度取得のコマンドの準備

USB温度計から温度情報を取得するには専用のコマンドが用意されています。
ソース取得の為のgit、コンパイルに必要なパッケージします。

yum install libusb-devel git


ソースをclone&コンパイル

ありがたくソースを持ってきてコンパイルします。

git clone git://github.com/bitplane/temper.git
cd temper
make


コマンドファイルを配置

make後、同ディレクトリに『temper』という実行ファイルが出来ています。
そのファイルを以下ディレクトリにファイル名をtemerallに変えて移動させます。

mv temper temperall
mv temperall /usr/local/bin/


表示結果を温度のみにする

通常は表示はコマンド実行時の日時と温度なのですが、監視しやすくするように温度のみにします。

通常の表示例
カンマ区切りで日時と温度が表示されます。

[root@raspi temper]# /usr/local/bin/temper
12-Aug-2013 00:00:01,22.745806


以下のようなスクリプトを用意してあげて温度のみ表示させます。
/usr/local/bin/temper

#!/bin/sh

/usr/local/bin/temperall | cut -d "," -f 2 | cut -d "." -f 1


実行権を付けておきます。

chmod +x /usr/local/bin/temper


試しに実行してみて温度のみ表示されるか確認します。
以下のようになればOKです。

[root@raspi ~]# /usr/local/bin/temper 
21


Zabbixエージェントの設定

次にzabbix-agentのインストールと設定を行います。

インストール
yum install zabbix-agent


設定ファイルの編集

/etc/zabbix/zabbix_agentd.conf
以下のように編集します。


ZabbixサーバーのIPアドレスを指定

(略)
Server=10.0.0.1
(略)
ServerActive=10.0.0.1
(略)


Zabbixサーバーに設定した監視対象ホスト名
監視対象ホスト名とZabbixサーバーに設定したホスト名が同じでないといけない。

Hostname=raspi.example.com


以下を追記
これがないとzabbix_getしてもZBX_NOTSUPPORTEDになる。

EnableRemoteCommands=1
LogRemoteCommands=1


PIDファイル保存ディレクトリを作成
mkdir /var/run/zabbix
chown zabbix:zabbix /var/run/zabbix/


zabbix-agent自動起動設定
systemctl enable zabbix-agent.service


zabbix-agent起動
systemctl start zabbix-agent.service


監視対象ホストでiptablesが動いている場合は止めるかiptablesの設定を一時的に消してやる。

iptables -F


Zabbixサーバーの設定

温度計測アイテム

計測間隔 900秒


温度計測トリガー

トリガー判定 過去5回の結果中30(度)を超える結果が2回検出されたら、軽度の障害


温度計測グラフ


上記のようにグラフが描画されました。

温度計測にRaspberry Piを使う理由

  • 小型なのでピンポイントの場所に置いて温度計測が出来る
  • 空いてるサーバーでUSB温度計で計測していたらカーネルパニックが多発した


小型なのでピンポイントの場所に置いて温度計測が出来る

大きな理由はこれです。
USB延長ケーブルを利用すれば測りたい場所に設置出来るのですが、タワー型やラックマウントサーバーをわざわざ使うのものもなーと思いRaspberry Piを使うことにしました。

空いてるサーバーでUSB温度計で計測していたらカーネルパニックが多発した

当初CentOS6.4が動いているサーバーに差して使っていたのですが、カーネルパニックが多発して使い物になりませんでした。


同じ事を仰っている方が!
同じ製品のUSB温度計かは分かりませんが。