Zabbix での簡易温度監視-その１

最近めっきり冷えてきましたが今年の夏も非常に暑かったですね。
連日の酷暑でお家でも30度はゆうに超え35度に達することも有りました。

そんな中、皆さんの自宅のServer達は無事に乗り切れましたか？
適当な方法ですがこんな風にZabbixを使って温度監視をして乗り切ってみました。


# ケース内とCPUの温度取得
一番最初に温度が分からないと始まりません。　その為に温度センサーを・・・・設置しませんw
貧乏人には新規で温度センサーを用意する財力がないので（ミクさんに全て吸い取られてると報告が）
マザーボードやチップセット内に取り付けられてる温度センサーを有用します。

使ってる機材は
・ NEC Express5800/S70 タイプRB
OSは
・ Windows Server 2012 Standard (**今回はWindows限定です**）
です、非常に古い機材しか持ってません・・・・・

まず手始めにWindowsのSNMPを有効にしないといけません。
サーバーマネージャーから「役割と機能の追加ウィザード」を呼び出しまして
機能の「SNMPサービス」をインストールします。
![snmp.png](https://qiita-image-store.s3.amazonaws.com/0/150917/aee97514-8c72-225b-9aa0-096f827db953.png)

続いてSNMPサービスの稼動確認とセキュリティの確認です。
![SNMP-secu.png](https://qiita-image-store.s3.amazonaws.com/0/150917/5f58bd75-356d-f5f4-52f3-5f00eee6094a.png)
認証トラップを送信するにチェックを入れ、SNMPパケットの受付をlocalhostとZabbix Serverの両方を入れてます。
この頃はまだ十分に判って設定をしてない時期なので穴ばかりですが（汗
今見返すと認証トラップのチェックとか、localhostとかは要らないと思います。

# Zabbixへ値の取り込み
ここからSpeedFanをインストールします。
[SpeedFan - Access temperature sensor in your computer ](http://www.almico.com/speedfan.php)
Ver. 4.5.2をそのままインストールして良いと思います。
詳細は書きませんが温度を取得するまで頑張ってください。
かなりの確立でハイエンドServerだと一部しか取得できないと思います。
ですが、**今回の記事は飽くまで個人規模の話をして笑ってください。**


SpeedFan SNMP Extension をインストールします。
[~~Bastart Code Repository: SpeedFan SNMP Extension~~](http://deve.loping.net/projects/sfsnmp/)
残念ながらここはドメインが失効して行き着きません。
既にIPアドレスレベルでも検索が出来ずここで記事が終わる・・・・・・かと思いました。

**が！捨てる神有れば拾う神あり。**

[Biesma.net - SpeedFan and SNMP with SFSNMP ](http://wp.biesma.net/speedfan-snmp-sfsnmp/)
こちらで掲載されていました。
sfsnmp-01.1.12.zip こちらをDLして解凍したらインストーラが sfsnmp-0.1.12.msi 出てきます。
sfsnmp-0.1.12.msiを実行するとSpeedfanをインストールしたディレクトリに、injector.exeが導入されるので、そちらを「管理者として実行」します。
すると、Speedfan.exeが連動して起動してくるので最小化しておきます。
スタートアップに入れる時には少々注意が必要かもしれません。


ここまで来たら **楽 勝** の筈なのですが、そこは問屋が下ろしません。
そうOIDを探すことを始めなくては成らないからです！！
先ほどのBiesma.netさんでは
・Temperature: .1.3.6.1.4.1.30503.1.5.x
・Fans:        .1.3.6.1.4.1.30503.1.6.x
・Voltages:    .1.3.6.1.4.1.30503.1.7.x
と成っておりこちらを使いたかったのですが正常な値を取得は出来ません。
Bastart Code Repositoryさんに掲載されていた値であり、今Express5800/S70で取得できるOIDとしては
・Temperature: .1.3.6.1.4.1.30503.1.2.x
・Fans:        .1.3.6.1.4.1.30503.1.3.X
・Voltages:    .1.3.6.1.4.1.30503.1.4.x
こちらとなります。
やはり実際に総当りで試してみないと答えは出ませんね・・・・・

Zabbixに登録する時のアイテムはこうなります。
![CPUTEMP.png](https://qiita-image-store.s3.amazonaws.com/0/150917/e067dbb7-b172-a3b0-7f60-288429974856.png)
注意点は取得値を1/100で割ることですか、これを忘れると太陽表面のような温度が取得できましす！
（まぁ SpeedFanの値とZabbixの値を睨めっこしたら気が付く事なんですけどね (^_^;)）

実際に取得したデータは必ず確認が必要ですので、グラフにして見ましょう
![TEMP.png](https://qiita-image-store.s3.amazonaws.com/0/150917/dd5b9244-2f5a-43d0-d93f-7abb1778ee32.png)
ちゃんと温度は測定出来てます、取得も出来てますね。
流石 Zabbixなのです。

#とつらつら書いてますが実際は
<blockquote class="twitter-tweet" data-lang="ja"><p lang="ja" dir="ltr">windows serverからzabbixへcpu温度を渡すために、sppdfan+SpeedFan SNMP Extensionを入れてさらに認識させる為にもうひと手間。しんどい <a href="https://twitter.com/hashtag/%E8%87%AA%E5%AE%85%E3%83%A9%E3%83%83%E3%82%AF%E5%8B%89%E5%BC%B7%E4%BC%9A?src=hash">#自宅ラック勉強会</a></p>&mdash; 榊 俊裕@日常の中のミクさん (@Toshihiro_SKK) <a href="https://twitter.com/Toshihiro_SKK/status/336864748475932672">2013年5月21日</a></blockquote>
<script async src="//platform.twitter.com/widgets.js" charset="utf-8"></script>
と言う感じで実は3年前からやってましたwww

上の呟きを見つけて検証をしてブログ化してくれた友人が居まして（本当に感謝です）
Googleで[ zabbix 温度監視 windows ]と検索すればその記事は今でもTOPに上がってきます。
(2017年5月には自分の記事がTOPに来ているようです）
ですがあれから3年が経ち、Bastart Code Repositoryさん所がHP消失してる現在
修正も必要だと思った事、自分の言葉で書きたくなったのでAdventで書いてみました。

無事に温度監視の導入が成功しましたので
明日はこれを使ってヤラカシをしてみたいと思います。