2011年5月29日日曜日

AtomD525とRocketRAID640、FreeBSD8.2でZFSなNAS構築その2

AtomD525とRocketRAID640、FreeBSD8.2でZFSなNAS構築その1の続き。
OSやSambaとかインストールするので、その時の備忘録など。

(1)FreeBSD8.2のインストールと設定
64bit版をダンロードしてインストーラに従ってSSDにインストール。
他のハードウェアも特に問題なく認識していた。
  1. IPアドレスの固定
    /etc/rc.conf
    defaultrouter="192.168.100.1"
    hostname="augearsculs"
    ifconfig_re0="inet 192.168.100.189 netmask 255.255.255.0"

    下記を設定しないと名前解決できないので設定する必要がある。
    /etc/resolv.conf
    nameserver 192.168.100.1

  2. hostsファイルへホスト名の追加
    rc.confのhostnameへ設定したホスト名を127.0.0.1の後に、
    localhostの後に半角スペースと伴に追加する。
    /etc/hosts
    127.0.0.1 localhost augearsculs
(2)RocketRAID640のドライバインストール
FreeBSD8のドライバがあるのでPDFのイストールガイドに沿ってインストール。
ドライバがロードされるとSCSIデバイスとして認識される。

(3)ZFS
SCSIデバイスとして認識されているda0をzfs createするだけで
FreeBSDは自動でマウントしてくれたりしたので、
他に設定する必要は特にない。

(4)Samba
Portsからインストールする。場所は下記。
/usr/ports/net/samba35

smb.confは以下のような感じ。
log levelとsyslogはパフォーマンスに影響あるのでデフォルトから変更しておく。
/usr/local/etc/smb.conf
[global]
 dos charset = CP932
 display charset = UTF-8
 server string = AUGEARSCULS
 security = SHARE
 log level = 1
 syslog = 0
 log file = /var/log/samba/log.%m
 max log size = 50
 load printers = No
 dns proxy = No

[homes]
 comment = Home Directories
 read only = No
 browseable = No

[printers]
 comment = All Printers
 path = /var/spool/samba
 printable = Yes
 browseable = No

[regza]
 path = /zpool/share/regza
 read only = No
 create mask = 0777
 directory mask = 0777
 guest ok = Yes

[tmp]
 path = /zpool/share/tmp
 read only = No
 create mask = 0777
 directory mask = 0777
 guest ok = Yes
東芝のREGZA Z3500からSambaで設定した共有ディレクトリに接続した様子。



ついでにパフォーマンスも計測。
以下は、WindowsXPのネットワークドライブとして接続して実行した
Crystal Disk Markの結果。


-----------------------------------------------------------------------
CrystalDiskMark 3.0.1 (C) 2007-2010 hiyohiyo
                           Crystal Dew World : http://crystalmark.info/
-----------------------------------------------------------------------
* MB/s = 1,000,000 byte/s [SATA/300 = 300,000,000 byte/s]

           Sequential Read :    22.189 MB/s
          Sequential Write :    26.165 MB/s
         Random Read 512KB :    22.679 MB/s
        Random Write 512KB :    28.072 MB/s
    Random Read 4KB (QD=1) :     6.525 MB/s [  1593.1 IOPS]
   Random Write 4KB (QD=1) :     3.158 MB/s [   771.0 IOPS]
   Random Read 4KB (QD=32) :    15.733 MB/s [  3841.0 IOPS]
  Random Write 4KB (QD=32) :     3.254 MB/s [   794.4 IOPS]

  Test : 1000 MB [Z: 13.3% (364.3/2740.5 GB)] (x5)
  Date : 2011/05/26 22:40:44
    OS : Windows XP Professional SP3 [5.1 Build 2600] (x86)
いまいちなのでパフォーマンスチューニングしてみる。
ZFSやSambaはデフォルトで最適化されているらしいので、
特に何も設定値は弄らない。
1番効果があるのはネットワーク絡みらしい。
そこで、下記のコマンドで変更対象の値をチェック。
sysctl net.inet.tcp

FreeBSD8.2では以下の値になっていた。
net.inet.tcp.sendbuf_max: 262144
net.inet.tcp.sendbuf_inc: 8192
net.inet.tcp.recvbuf_max: 262144
net.inet.tcp.recvbuf_inc: 16384

そこで、下記のファイルに以下の値を設定。
とりあえず、基の設定値から2倍にしてみた。
/etc/sysctl.conf

net.inet.tcp.sendbuf_max=524288
net.inet.tcp.sendbuf_inc=16384
net.inet.tcp.recvbuf_max=524288
net.inet.tcp.recvbuf_inc=32788

調整の余地はまだありそうな気はしているものの、
面倒なのでこれで運用してみます。


-----------------------------------------------------------------------
CrystalDiskMark 3.0.1 (C) 2007-2010 hiyohiyo
                           Crystal Dew World : http://crystalmark.info/
-----------------------------------------------------------------------
* MB/s = 1,000,000 byte/s [SATA/300 = 300,000,000 byte/s]

           Sequential Read :    32.891 MB/s
          Sequential Write :    35.994 MB/s
         Random Read 512KB :    34.595 MB/s
        Random Write 512KB :    39.228 MB/s
    Random Read 4KB (QD=1) :     9.122 MB/s [  2227.0 IOPS]
   Random Write 4KB (QD=1) :     4.648 MB/s [  1134.8 IOPS]
   Random Read 4KB (QD=32) :    22.297 MB/s [  5443.7 IOPS]
  Random Write 4KB (QD=32) :     3.553 MB/s [   867.4 IOPS]

  Test : 1000 MB [Z: 15.7% (430.6/2740.5 GB)] (x5)
  Date : 2011/05/28 9:10:00
    OS : Windows XP Professional SP3 [5.1 Build 2600] (x86)

2011年6月12日追記
HDDの容量が増えて既に同じ状況下ではないものの、試しに値を3倍にしたら全体的にパフォーマンスが劣化したので、デフォルト値の2倍で運用することにした。

AtomD525とRocketRAID640、FreeBSD8.2でZFSなNAS構築その1

REGZAで使っている玄箱PRO2台の統合と省エネ(になるかどうか微妙だけど)を目的にやりました。
1から自作するのは今メインで使っているPentium4マシン以来。

(1)ケース
DIRACのHD MASTER MINIという電源付きのMini-ITXケースのやつ。


ケース付属の電源はEnhanceのENP-7025Bというもの。


(2)CPU、マザーボード、メモリ、HDD
デュアルコアでHTT対応のIntel Atom D525を載っけたASUSAのT5NM10T-I。


メモリはマザーボードが最大4GBだったので、Samusung製SODIMM DDR1333の2GBを2枚。


システム用にIntel製SSDの40GB。


あと、データ用にSeagateの3TBでST33000651ASというモデルを2台。


(3)High Point RocketRAID640
マザーボードでもRAIDは可能だったけど、別に用意。
FreeBSDやLinux用のドライバもあり。


SSDをシャドウベイに取り付けた所。
最初にSSDをシャドウベイに取り付ける。
マザーボードをケースに取り付けた後では明らかに難しそう。
次にマザーボードの取り付けだけど、
3.5インチベイが電源とメモリのコネクタ部のすぐ上にあるので、
予め接続した状態でケースに取り付ける必要があった。


RocketRAID640を取り付けた所。
PCI Express2.0x4対応だがマザーボードの仕様でx1で動作。


電源を投入した所。
HDDを取り付けた箇所が緑色に光っている。
但し、光っているのは前面のランプと電源が取り付けてある側だけ。


電源を外した箇所。


ケース前面。上から2段目と4段目に搭載。
電源を入れると緑色にランプが点灯。
もう1つの方はどうすれば光るのかは不明。


RocketRAIDのBIOS画面。
購入した2台のHDDがちゃんと認識されて、
アレイの構築もできた。ちなみにRAID1です。


OSのインストールや設定をした続きはこちら。