« ドメイン移管 | トップページ | Express5800/S70FLへのCentOS5.3インストール »

2009年5月 3日 (日)

【home server】Express5800 S70/FLの設定とか

先日の続き.
細切れ時間を使用してセットアップという感じなので,作業の進捗は遅い.でもようやく最低限の環境構築が終了し,安定稼動状態に持っていくことが出来た.そしてTerminator TUで実現していたファイルサーバ機能は移動した.

現在,CPUはCore 2 Duo E8400(3GHz),メモリ5GB,ディスクはWD10EACS(1TB)を6本内蔵(ベタで1TB+4TBのSoft RAID5)という構成で運用を開始した.OSはCentOS5.3を入れている.この他,そのうちXenにWinXP Proでも入れてリモートデスクトップで使おうかと思っている.

詳しいメモは追々まとめようと思うけど,まずは全体的な話.

Express5800_s70fl21 まずCPUなのだけど,Celeron 440 (2GHz)から Core 2 Duo E8400 (3GHz)に換装.今ではもう 1万7千円弱で買える.随分安くなったものだなぁ.

純粋に処理速度のコストパフォーマンスのみを考えた場合は,Pentium Dual-Core5400(2.7GHz)E5200(2.5GHz)とかを選択すべき.

こことか ここを見ると分かる通り,それぞれ1万ちょっとと8千弱だ.マルチコアCPUとしてはお買い得感炸裂である.

しかし,ここの表を見て欲しい.AMD-Vは現在販売されている大抵のAMD CPUに搭載されているが,Intel-VTに対応しているIntelのCPUは上位のコアのみ.

XEN等を使用して完全仮想化を行い,1つのサーバで色々とやろうとしている人はCPUの選択に注意した方が良いでしょう.あと,Windows7を近い将来使うことを考えている人も,注意した方が良いです.

最近,Intelがより広範囲なCPUにIntel-VTを乗せる予定という記事を読んだ気もするけど,ソースは失念.

Express5800_s70fl22 メモリはごく普通のノーブランドDDR2 PC6400-2GB(DDR800)を2枚.

この機種ではデュアルチャンネル使ってもあまり速くならないとの話を聞いたので,元々付いていた1GBと合わせて5GBで使用.
Express5800_s70fl23 そしてその他の今回用意した物品.(この他,故障時の交換用HDDも確保してあります)

4台入るHDDベイにHDDを取り付ける場合はL型のSATAケーブルが必要なので忘れないこと.

PCIのSATAカードは,ここで使っていたSATAEI-LPPCIを引っぺがした.オンボードのSATA 6ポートは全てHDDに回すため,DVD-ROMを接続するために使用.
Express5800_s70fl24 WesternDigital製の最近のディスクには,Intelliparkという機能が備わっておりまして,一定時間アイドルになった場合にヘッドをパーク位置に退避させます.

ココココを読むと概要が分かりますが,クラッシュを防ぎ,さらに消費電力を低減させるための機能だとのこと.

しかし,24時間運転のサーバでは,数秒アイドルが発生したからと言ってカコンカコンとその都度ヘッドを退避されまくったら,ヘッド退避回数が凄まじいことになってしまいます.故障を減らすための機構の筈が,逆にHDDの寿命を縮めかねない(実際,一部で問題になっている).

そんなわけで,今回使用するHDDは全て,wdidle3というWD謹製のツールを使ってIntelliparkをdisableにしてから積むようにしました.

このツールはDOS用なので,FreeDOSのブートCDにwdidle3を突っ込むという方法で使用したのですが,Express5800 S70/FL(以下,S70FL)ではDVD-ROMドライブがSATA接続で合ったため,今回作成したCDは使えませんでした(USBメモリに入れて使用する方法もあるけど,面倒なので今回は検証すら行わず).そのため,今回はTerminator AE1で作業を行いました.
Express5800_s70fl25 左は全てを搭載して組み上げた状態の写真.

このMicro ATXケースには,3.5inchシャドウ*4, 3.5inch*1, 5inch*2のベイがあります.元々付いていたSeagateの160GB HDDは外し,DVD-ROMドライブは残し,新規のHDD6本は空いている全てのベイに突っ込こみました.

詳しくは後述しますが,フロントアクセス可能な3.5inchベイはエアフローが悪いため,ここにHDDを突っ込むと,熱くなります.そしてその煽りを食って,5inchベイに入れたHDDまで熱くなります.

解決策は,3.5inchベイの前の蓋を開け,空気が流入するようにしておくこと.プラスチックのカバーだけでなく,金属の蓋も外しておくようにしましょう.

あと,SD等のFL以前の型のように,CPU換装したらCPUファンが爆音を立てながら高速回転…ということはありませんでした.

こんな感じでサクッと完成.

で,次にOSの選択ですが,諸々検討の末,このマシンにはCentOS 5.3を入れました.そしてサウンドチップやGigabitEtherのNICも含め,S70FLに乗っているデバイスは全て自動認識しました.HDDはIDE互換モードにする必要も無く,AHCIモードで使用しています.(FreeNAS はNICを認識せず,OpenFilerはICH10Rを認識しなかった)

ディスク構成は前述の通り,1本は普通にext3でベタに使い,5本はSoftRAIDを使ってRAID5にしました.本当はRAID6にしたかったのだけど,実容量との兼ね合いでこの構成に.もう2~3本内蔵出来たらなぁ…無いものねだりだけど.

で,次はクライアントPCの拡張.普段使用している Turion64 を乗せたTerminator AE1 にはGbEのNICが乗っていないので,乗せることにした.しかし,この作業は結構大事になった.

まず,このマシンにはPCIが1本しか無いので,挿していたSATA カードを抜いてNICに交換した.そしてこのM/BにはSATAポートが2ポートしか無いのだけど,外付けeSATAディスクを繋げるためには1ポートを空けないといけない.そのため,内蔵していた2本のHDD (250GB + 500GB)を1本の1TB HDDに集約し…という作業が追加で必要になった.

一応一通りの作業は完了したのだけど,GbEと引き換えに,外付けディスクの転送レートががた落ち&チップが対応していないためにディスクをホットスワップ出来なくなる(外すことは出来ても,後から接続した物が再認識できない)というマイナスを抱え込んでしまった.

Ae1_gbe1 CPUが遅い(Turion64 1.8GHz)のであまりパフォーマンスは期待できないだろう…と,いうことも考え,BUFFALO LGY-PCI-GTを購入.

Amazonで1,512円也.安っ.
Ae1_gbe2 蟹チップのRealtek RTL8169Sを使用.大抵の環境・OSで動くし,パフォーマンスはまぁそれなりのチップ.

以前使用した際には,結構発熱がある&遅いマシンで使うとCPU負荷が高目だったため,個人的には低く評価をしている.

出た当初は低発熱でCPU負荷も低いと評判だったVIAのVT6122を積んだカードにも興味があったのだけど,在庫切れだそうなので今回は見送った.

早速接続して速度計測…と,試し始めたところ,100Mbpsで頭打ちになって思うように速度が出ない.調べてみたところ,S70FLがぶら下がっているEtherSwitchとAE1がぶら下がっているEtherSwitch間(各マシンは別々の部屋に設置してある)がGbでリンクアップしてなかった.今まで気が付いてなかったヨ….急ぎCAT6の15mケーブルを買出しに行き,引き回し直し&接続.今度はGbでリンクアップした.

S70FLのディスクをsamba経由でAE1にマウントし,CrystalDiskMark 2.2でベンチを取ってみたところ,以下のようになった.なお,AE1の方はJubmoFrameでMTU 7KBにしたけど,S70FLの方はまだMTU1500のまま(*).なので,GbEの真価は発揮でない状態での計測.

(*)S70FL側でMTUを上げたところ,CIFSでWinマシンのディスクをmountする際に認証が通らないことがあったため,MTUは1500のままにしている.原因はまだ調査していない.

まずは AE1(Win)から,S70FLに普通に繋げた1TB HDD (FSはext3)にアクセスした場合.

--------------------------------------------------
CrystalDiskMark 2.2 (C) 2007-2008 hiyohiyo
      Crystal Dew World : http://crystalmark.info/
--------------------------------------------------

   Sequential Read :   68.481 MB/s
  Sequential Write :   59.960 MB/s
Random Read 512KB :   67.416 MB/s
Random Write 512KB :   51.978 MB/s
   Random Read 4KB :   19.532 MB/s
  Random Write 4KB :    8.804 MB/s

         Test Size : 1000 MB
              Date : 2009/05/02 12:32:37

速いね~.この速度ならローカルディスクにアクセスしているみたいに使える.
UltraDMA/66 って規格があったけど,隔世の感がありますなぁ.

次に1TB HDDを5本束ねてRAID5にし,ext3でフォーマットしたアレイを使った場合.

   Sequential Read :   67.316 MB/s
  Sequential Write :   58.196 MB/s
Random Read 512KB :   66.919 MB/s
Random Write 512KB :   37.749 MB/s
   Random Read 4KB :   19.556 MB/s
  Random Write 4KB :    6.459 MB/s

         Test Size : 1000 MB

ゼンゼン問題ないね~.

最後に参考値として,AE1のオンボードSATAに接続した同型の1TB HDDでのベンチ.

   Sequential Read :   66.865 MB/s
  Sequential Write :   72.641 MB/s
Random Read 512KB :   33.814 MB/s
Random Write 512KB :   51.067 MB/s
   Random Read 4KB :    0.584 MB/s
  Random Write 4KB :    1.276 MB/s

         Test Size : 1000 MB

AE1のオンボードのSATAは遅いね…ベンチの結果だけで判断した場合,ネットワークドライブを使用したほうが快適ってコトになる.

※上記結果は,あくまでも『ベンチ結果』ということに注意.

次にS70FLでHotSaNICを動かしたので,そのモニタ結果から諸々見て考察を加えてみます.基本的な設定方法は以前設定したときと同じだったけど,結構忘れていたり変更になっている部分もあって手間取ったかも.

まずはCPUのコア温度.core 0,core 1共に室温24度の状態でsensor読みで36度くらい.シングルスレッドのベンチを走らせた際に40度近くまで上がったのですが,まぁその程度の上昇でした.

※CPUファンは元々付いていたCoolerMaster製の物を使用しているので,もっと冷える物に換装すれば,もっと温度が下がるかも.


もっと重い負荷をかければもっと上がるかとは思うのですが,普通にファイルサーバとして使用する程度の負荷では,温度はピクリともしない感じです.

ちなみにSpeedStepは有効にしていますが,クロックを2GHzに落としても3GHzに上げてもあまり温度が変わらなかったのと,クロックの動的な変化が思うように行っていなかった(ベンチを走らせても2GHzで回っていたりした)ので,今は3GHz固定にしています.

なお,CentOS 5.3で標準的に用意されているlm_sensorsとkernel moduleでは,CPUのcore温度は取得出来ません.kernelを上げればcputempというkmodが入るので使えるのですが,kernelを標準から変更したくない人は,ココからkmodを頂いて有難く使わせてもらいましょう.

sensors-detectをすれば,認識するようになります.
Core0_temp
Core1_temp
次にディスクの温度.温度はhddtempで確認できます.

hd1~hd4は3.5inchシャドウベイ,hd5は3.5inchベイ,hd6は5inchベイに取り付けています.

当初は3.5inchシャドウベイがHDDトースターになることを危惧していたのですが,杞憂でした.ケースのサイドパネルの吸入口の位置が丁度良く,エアフローが都合良い状態で確保されている感じで意外と冷えています.ガリガリ使用しても,32度~37度に収まっていました.(とは言え,夏場の運用に向けて,出来れば冷却ファンを取り付けたい所です)

その一方,3.5inchベイは空気が滞留してしまう構造のため,プラスチックおよび金属製の目隠し蓋を外さない場合,かなり温度の上昇が認められました.これらを外すと,右のグラフのように,HDD1と殆ど変わらない程度まで温度が下がります.

参考値ですが,蓋をしておいた状態で数時間程使用した際には,右の表のような状態になっていました.
Hdd1_temp
Hdd5_temp
         表;蓋アリのときの温度
/dev/sda: WDC WD10EADS-00L5B1: 33°C
/dev/sdb: WDC WD10EADS-00L5B1: 34°C
/dev/sdc: WDC WD10EADS-00L5B1: 34°C
/dev/sdd: WDC WD10EADS-00L5B1: 35°C
/dev/sde: WDC WD10EADS-00L5B1: 40°C
/dev/sdf: WDC WD10EADS-00L5B1: 39°C
次にネットワークに関してですが,運用開始後数日のeth0のトラフィックは右のような感じ.

in/outが最高でそれぞれ384Mbps/423Mbps記録されています.
Eth0_traffic
Terminator TUからrsync+sshでファイルを転送している最中のトラフィックは右のような感じ.

TUは現在SiS900のオンボードNICを使用し,100Mbpsで接続しています.概ね100Mbps弱でコンスタントにデータをTUとS70FL間でやり取り出来ているようです.
(これと平行してS70FLは他のマシンとデータのやりとりをすることもあった.100Mbpsを超えているポイントが存在するのはそのため)
Eth0_traffic_day
このジョブを走らせている間,SSHをトンネルさせていることもあって,TUのPentium3-S/1.26GHzはアップアップだったのですが, Cpu_usage_p3s_126
S70FLに乗せたE8400は流石に3GHzのDual Coreなだけあって余裕で捌いていました. Cpu_usage_core2duo_3g
md0 (RAIDアレイ)のdisk ioは右のような感じ.
最初に簡単な書き込み負荷試験をしたのですが,そのときに47MByte/secが出ていたようです.
Raid_diskio
TUに繋いでいた1.2TBのRAIDアレイの内容をS70FLに移動中の容量推移.実容量3.5TBはいつまで持つかな….空き容量一定の法則は,近い将来発動しそうです. Raid_part

あと余談になりますが,TUはVineで使っていたため,日本語ファイル名のコードはEUC.S70FLにはCentOSを入れたのでUTF8になっています.Winから直接これらサーバを使用した場合はsambaが透過的に漢字コードを変換するので問題ないのだけど,rsyncやNFS等でLinuxとしてベタに相互にファイルの同期を取ったり共有したりする場合,ローカルのコード体系の違いが悩ましい問題を引き起こします.出来るだけ早いうちにサーバを一本化しなければ…

※ファイル名の漢字コードの一括変換は簡単に出来るので,リネームに関しての問題は無い.

GW中にもう少し環境を整えたい所です.とりあえずmediatombを入れてDLNAクライアントから見えるようになったので,次はiTunesサーバかな.それにしても,あれから約1年,ディィスクが壊れることなく持ってくれて助かった.ファイルサーバ機能に関しては何とか移動できました.

# S70FLが値下がりし,今は実質15,900円で売られてるようだ.もう一台買おうかなぁ….いやいや,UPSが先だ.

|

« ドメイン移管 | トップページ | Express5800/S70FLへのCentOS5.3インストール »

コメント

コメントを書く



(ウェブ上には掲載しません)


コメントは記事投稿者が公開するまで表示されません。



トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/198640/44871039

この記事へのトラックバック一覧です: 【home server】Express5800 S70/FLの設定とか:

» Express5800/S70FLへのCentOS5.3インストール [tadachi-net 出張所]
前回の続き.Express5800/S70 FLへのCentOS5.3のインスト [続きを読む]

受信: 2009年5月17日 (日) 01時45分

« ドメイン移管 | トップページ | Express5800/S70FLへのCentOS5.3インストール »