/*
 * sleeping FreeBSD server (2nd Generation)
 *  FreeBSD でエコなホームサーバーをたてる (二代目)
 *   by uratan! 2011.5.5
 *   revised: 2016.6.16
 */

[2016.6.16]

問題らしい問題はまったくなく安定して動いてくれていたのですが さすがに まる 5年、 三代目サーバーにバトンタッチしました。




というわけで我が省エネ家庭内サーバー、4年ぶりに HDD を増量し、 ついでにOS を FreeBSD 8.1-RELEASE(i386) に バージョンアップしてみました。 先代のサーバー構築の記録はこちらで。

●マザーボード <継続使用>
VIA製の C7 Processor 1GHz を搭載したファンレスの EPIA-CN10000Gを使いました。 計算をさせると遅いけど、シーケンサとして使う分には普通な感じです。
ヒートシンクは自然対流タイプですが、ケースに設置すると電源の吸入フローが うまくこのあたりの空気を吸う感じになります。
本マザーボードには温度センサが一切ついていないらしく、CPU 温度を直接 モニターできないのがちょっと残念です。

●電源 <予備として買っておいた同タイプ電源に 念のため入れ替え(400W→450W)>
14cm の大口径ファンを使った 岡谷エレクトロニクス製の 「音無しぃSP」を採用しました。 装置全体のファンはこの電源ファンのみになります。
ファンの回転数は H/M/L/auto から選べ、今のところ自動調律にて 最低回転で回っており やはり非常に静かです。
●HDD <250GB から 2TB(5900rpm) のものに2台とも入れ替え>
2台目の HDD はバックアップ用で、 1週間に一度ミラーリングする運用です。
ATA の stand-by timer 機能 (ATA_IDLE_CMD) により 自動的にスタンバイモードに入るように設定して使用し、 メインは 60分毎に 最大 45分 idle 状態 (spindle 停止)になります。 またサブ HDD は 1週間に一度10〜30分のバックアップジョブ以外は完全(?)に idle 状態です。(時々勝手に起きて寝なおしているようです、 なんらかの自己診断のためでしょうか)
8.1-RELEASE には「kernel が時間を管理して ATA_STANDBY_IMMEDIATE コマンドを発行し、HDD を OS 管理下でスタンバイにする機能 (atacontrol spindown、たぶん)」が あるようですが、無視して HDD側の自動 IDLE 機能を使ってます。
私、IDLE と STANDBY とかの違いがまったくわかっていません。 いろいろな単語を使いますが、頭の中には 円盤回っている状態と止まっている状態しかありません、悪しからず。
動作音は、リード・ライト・シークにおいてはほとんど無音です。 しかしながら、自動退避しているヘッドが動き出す時に かなり かん高い音(ピキッ)がします。
スピンドル停止状態からの復帰には 9秒ほどかかります。 初代より 2秒ほど長いだけですが、かなり長く感じます。
●サービスとシステムチューニング <基本変更なし>
サーバーで実行している主なバックグラウンドサービスは以下の通りです。
ntp server (ntpd) (*1)
nfs server (nfsd)
samba (smbd) (*2)
apache (httpd)
unix マシンとしての周期ジョブは毎時 00分近傍に集中して実行させ、 それ以外できうる限り HDD へのアクセスが発生しないように設定を 変更しました。 関連する変更点や設定ファイルはこちらに まとめました。

運用上の注意点としては以下のものがあります。
(*1) ntpd は起動・最初の同期から 1時間おきに /var/log/ntp.drift を書き出すようです。「本サーバーの起動は XX時59分に限る!」 として逃げてます。
(*2) samba に関して、ディスクアクセスを止められなかったので nmbd は使いません。名前解決は 各 windows client に %WINDIR%\system32\drivers\etc\hosts ファイルを用意して行います。
またiconv パッチ非常に重要です、多謝。
●結果
以下は、1時間おきに HDD 関連のデータを採取させプロットしたもの です。



緑が、SMART により取得したメイン HDD の温度です。 そして黄色のバーが、温度測定前の 1時間でメイン HDD が active であった時間(単位:分)をあらわします。

各周期ジョブを毎時 00分近傍に実行させてますので、 1時間毎に 約15分(ジョブ5分+タイムアウト10分)間は必ず HDD が active になります。
ちなみに HDD 温度から 7℃3℃引いたぐらいが室温です。 サービスを要求しない場合はあたかも室温を記録するかのようです。

ミラーコピー先のバックアップ HDD は 1週間に一度10〜30分だけ仕事します。 赤はコピー開始前に採取したバックアップ HDD の温度です。
●消費電力

 off:         3W       ... 待機電力
 boot:       66W       ... ブート時の最大表示 (peak とは限らない)
 idle 2HDD:  41W       ... HDD 2台が回っていて CPU は仕事していない状態
 calc 2HDD:  45W (+4W) ... HDD 2台が回っていて CPU が仕事している状態
 idle 1HDD:  36W (-5W) ... HDD 1台が回っていて CPU は仕事していない状態
 calc 1HDD:  40W (+4W) ... HDD 1台が回っていて CPU が仕事している状態
 seek 1HDD:  41W (+5W) ... HDD 1台が回っていて disk アクセスしている状態
 sleep:      30W (-11W)... HDD が 2台とも stand-by している状態

今のところフツー使用で、平均で 33.1W ぐらいの消費電力です。 (月当たり 24kWh)
450W電源では 400W電源使用時に比べて 1Wほど表示が増えましたが、 それでも初代より数ワット消費電力が減っている感触です。
●考察
初代のサーバーは期待以上の耐久性を示してくれましたが 二代目はどうでしょう、頼むぜ!


- * - * -

本日も稼動中(かな)        


    uratan@miomio.jp
upward