muninでWindows機を監視しよう
unixマシンならなんでもお手軽、かつ詳細な情報を収集してグラフ化してくれるmunin。
プラグインの自作も簡単なので、自分が調査したいものを手軽に監視できます。
ところが、基本的にはunix用のノードプログラムしか用意されてなくて、こいつでWindowsを監視させようと思うと難儀することになるわけです。
Windowsの何を監視するのか?
ええと、VMware Server(Windows Host)を使ってunixシステムを仮想化して動かしています。このサイトを公開しているシステムもVMware上の仮想マシンです。
仮想化されている/いないにかかわらず、muninは正しく動きますが、CPUやディスクの温度などハードウェアの情報を直接拾ってくるものだけは動きません。
この情報を取得するには Host OS の Windows から直接情報を得る必要がありました...。
長くなりましたが、Windows機の各種温度を取得してmuninでグラフ化してみる というのがこのページの内容。
僕は温度が取得できればそれでいいので、よくあるsnmpを使ってWindowsのトラフィックだとかを取得する方法は説明してないから、それが欲しい人は他のサイトを探してください。
そもそもCPUやディスクの温度を取得したいのはなぜ??という人のために書いておくと、冷房をかけるかどうかの判断基準にしたいから。
この統計情報を元に、エアコンをつけるかどかを決めています。特にハードディスクの温度は50度を越えると危険なので、これを超えてしまうようならエアコンをつけっぱなしにします。
さらに統計情報があれば、エアコンの設定温度を何度にすればいいかもつかみやすいです。必要以上に冷やすのは電気のムダですし。(とくに自宅サーバーの場合はね...)
本当はディスクの温度等に加え室温も記録できるとより関連性が分かるのですが、室温を測定し、それをパソコンに取り込むような道具がなくて、まだ実現できていません。。(くろせくーん...)
温度を取得するために必要なツール:その1
Windows用のノードプログラムです。MSI Installer ってのを拾ってくると吉。ダブルクリックでインストール(サービスへの登録)ができます。
インストールするとC:\Program Files\Munin Node for Windows配下にプログラムと設定ファイルが置かれます。
ここまでが終わると、不完全ながらWindowsノードとして動くようになります。確認するには
telnet localhost 4949とするといいでしょう。list とか、fetch hogehoge とか、いろいろやってみるべし。
もしかして動かない場合は、設定ファイル(munin-node.ini)の[Plugins]セクションを適当に0(disables)にしてリトライ。(サービスの再起動を忘れずに。)
温度を取得するために必要なツール:その2
■ SpeedFan
これねぇ、とても分かりにくい。
munin-node-win32 は、それ単体で温度を取得する機能を持っておらず、SpeedFanからの情報を利用するのです。ので、SpeedFanが正しく設定できてないとダメなんですねぇ。
長くなるので、SpeedFanの使い方は知っているものとして書きます。
ええと、キモになるのは xAP なるもの。
xAPがどんなものかってのは、調べたんだけどよく分からなかった。。設定項目から推測するに、情報を外に対して発信するような仕組みなんだと思うのですが...。
まぁそういうわけで、xAP を Enable にすると、温度情報がブロードキャストされます と、言うことで。
![]()
munin-node-win32 の設定
設定ファイルを修正します。
SpeedFanから温度を取得する部分の設定です。以下、抜粋。
[Plugins] ; Plugin Section, 1 enables plugin, 0 disables Disk=0 Memory=0 Processes=0 Network=0 MbmTemp=0 MbmVoltage=0 MbmFan=0 MbmMhz=0 SMART=0 HD=0 Cpu=0 SpeedFan=1 External=0 [...] [SpeedFanPlugin] BroadcastIP=192.168.xx.xx UID=FF671100
SpeedFanPlugin 部の設定は難しいことはなくて、UIDは SpeedFan 側の設定と合わせればOK。
BroadcastIPもそのまんまなのですが、ここはSpeedFanが動いているマシン(=munin-node-win32が動いているマシン)のIPを書いてます。192.168.10.20 とか。
BroadcastIPって書いてあるわりには端末のIPを指定するようです。よく分からん。
で、ここまでできたら、munin-node-win32サービス再起動後にtelnet でテストしてみるとよいでしょう。
再起動直後はSpeedFan xAP からの情報が送られてきていないため、エラーになります。30秒も待てば動くようになりました。エラーになる場合は少し待ってからリトライ。
munin親の設定
munin.conf に監視対象ノードを追加します。
[hoge.terakado.jp]
address 192.168.10.20
use_node_name yes
めでたく温度が取得できました。

どこの温度がグラフ化されるかは、SpeedFan側の設定に依存します。
トピック
- FreeNASでファイルサーバーを作る
- 自宅サーバーを安定稼動させるテクニック
- お手軽software raid(ミラー) [FreeBSD gmirror]
- gmirrorのリビルド[FreeBSD]
- muninでWindows機を監視しよう
- 低価格ハードウェアRAID ARAID2000
- おうちサーバーの監視 その2(雷で切れまくるADSL)
- ホームサーバーに最適なPCとは
- 雷さまとUPS(落雷で停電する理由)
- 怪現象が起きる場合は湿度を疑え
- お手軽 NAT TX-ERROR 対策
- 情報漏洩を防ぐには
- 発想を変えて... 『古河の中学校で個人情報流出』
- PacketiX Desktop VPN インストールの種類
- PacketiX Desktop VPN は、Home Edition 以外のOS必須
- PacketiX Desktop の仕組み(概要のみ)
- Desktop VPN のインストール
- もう1つのDesktop VPN:Teratermのポートフォワード(ssh) + リモートデスクトップ
- スタイルシート
- その他
トラックバック
このエントリーのトラックバックURL: