ZFS on FreeBSD

ということで,ファイルサーバにFreeBSDFreeBSD 7.1-RELEASE)をインストールしてZFSのボリュームを作成してみた.ZFSのためにメモリを512MBから1GB*2に増設.

起動ディスクは転がってた2.5inch,120GBのHDDでUFS.ZFSの方はWD10EADS,WD10EACS,SAMSUNG HD103UIの3つでRAIDZを構築.

最初,unixといってもdebian一筋でapt-get一発に慣れきってしまっていたというか,それ以外を知らずに生きていたので,BSDのストイックさに面食らった.

特に,

  1. いちいち全部make; make installするの?(/usr/ports/以下に一通りdownload先を含めた設定ファイルがあって,ただ,このコマンドを打ち込むだけなので別にそこまで不便じゃないし,pkg_*もある.)
  2. 設定ファイルはどこ?さらに,sambaをインストールしただけじゃ動かない.(/etc/以下にないのに思想の違いを感じた.まあ,一通りわかってしまえば,妙に深いことを除けばどうと言うことはない.アップデートを追っかけるシステムがたくさんあってどれを使えばいいのかが,ぱっと見でわからないのは初心者お断りな感じがすごくした.sambaとかを入れただけでは動かないのは誠実だけど不親切だと思った./etc/rc.confに変数を書き込まないといけないなんてねえ)
  3. よくわかんないけどext2ディレクトリが読めないので,カーネル再構築とかいろいろやったけど全然読めない.(ライセンスの問題?で標準だとkldloadで読み込ませないといけない.kernelの再構築は必要ない.が,よくわかんなかったので再構築を何回かしてしまった.でも,結局ZFSで再構築が必要になるので無駄じゃなかった)

と言う感じで,3回くらい挫折しそうになったんだけどFreeBSD Handbookなどを見つつ何とか対応できた.debianと比較するとだいぶ情報少ない上に鮮度の低い情報が多すぎて発狂しそうになったけど,その意味でhandbook(英語版)は心強かった.

パフォーマンスはデータの転送が終わってから測ろうと思う.しかし,ZFSはボリュームの管理から何から,LinuxRAID+LVM2+ext3を構築した後では天国に見える.

追記

パフォーマンスはそんなに良くない?同じく9GBのファイルをnetatalk経由で読み書き

書き込み(MB/s)読み込み(MB/s)
ZFS24.4636.87

なんつーか,NILFS2とあんま性能変わらない.

CPU使用率がsamba経由でもnetatalk経由でも50%を越えてくるので,そこらへんがネックなのかも知れないし,シークが発生することによるロスも大きいのだろう.

追記2

やっぱCPUか(no title参照)

記録用に bonnie++のデータを貼っておく

Version 1.93d       ------Sequential Output------ --Sequential Input- --Random-
Concurrency   1     -Per Chr- --Block-- -Rewrite- -Per Chr- --Block-- --Seeks--
Machine        Size K/sec %CP K/sec %CP K/sec %CP K/sec %CP K/sec %CP  /sec %CP
fileserver.smect 4G    54  96 59863  28 40094  22   125  99 148721  34 115.6   6
Latency               933ms     791ms     949ms     125ms     549ms    1825ms
Version 1.93d       ------Sequential Create------ --------Random Create--------
fileserver.smectic_ -Create-- --Read--- -Delete-- -Create-- --Read--- -Delete--
              files  /sec %CP  /sec %CP  /sec %CP  /sec %CP  /sec %CP  /sec %CP
                 16 11642  96 +++++ +++ 11480  98 11675  89 +++++ +++  9318  81
Latency             25240us     331us     401us   28020us    3874us     157ms