2011年10月29日土曜日

続 iSCSI速度比較


FreeNAS0.7.2.6694のiSCSIはとりあえず動いてます、状態な感じでしたが最近かなり改善されたようなのでまた適当速度比較をやってみようかなと。

以前はVirtualBoxを使用したんですが、いまはいろいろあってVMwareに変えたので
VMwarePlayerで
CPUコア:2
メモリ:1G
ZFSの設定:atime=off,compression=on
他すべてデフォルトでまた比較してみました。

比較したOSは
・FreeNAS0.7.2.8191
・NexentaCore3.0.1
・EON0.600-130
です。

まずHDイメージのあるローカルのHDDから



FreeNAS0.7.2.8191


だいぶ早くなってますね。これなら実用レベルでしょうか。

NexentaCore3.0.1


EON0.600-130



とりあえず簡単な比較ですが、FreeNASも以前に比べれば相当改善されている様子。
Solaris系に書き込みであと一歩およばずってとこでしょうか。

ローカルのHDがあまりに遅いので最初はRAMDisk上にHDイメージおいてやろうかと思ったんですが
それだとCPU負荷が100%に張り付いてiSCSIの比較だかCPUのベンチマークだか分からなくなるので
以前と同じ方式でやりました。

私はFreeNASからEONにのりかえたので、この結果を見てまたFreeNASにもどすことはないと思います。
iSCSIの性能がまだ上回っているというのもありますが、samba(正確にはcifs)も体感できるくらいFreeNASより速いというのもあります。
そしてzfsのsnapshotがあるとWindows上から見えるのもすてがたい。


NexentaCoreには浮気するかもしれませんがw


20120509追記--------------------------------------

NAS4FreeなるFreeNASそっくりさんなものを発見したのでVMwareで試してみました。
詳しい経緯は知らないんですがFreeNASの文字列をNAS4Freeに置換しただけじゃないのか?
ってくらいそっくりですね・・・。
上記条件と同じでiSCSIの測定結果

NAS4Free 9.0.0.1.67


とりあえずiSCSIに関しては現状問題外ですね・・・。


2011年9月18日日曜日

EON ZFS導入時のまとめ? その2

インストールが終了し、setup updimg.shまで問題なくいけたらインストールは成功です。

その後の設定ですが公式サイトではpoolを作成しsambaで共有するところまでが解説されています。
公式サイトではpool名を abyss その下に media というフォルダを作り、sambaで共有しています。
何気なく書いてあるんですが、実はこの名前が少し重要で起動時にEONが独自に実行するコマンドリストファイル(/mnt/eon0/.exec)の中身を見るとずばりabyssとか書いてあります。
なのでpool名やsambaで共有するファイル名に特にこだわりがなければ無難に abyss/media となるようにした方が良いです。

あとはOpensolaris導入時にするといい設定を解説しているサイトを参考に設定をしていきます。

以下私がいじったファイル
/etc/TIMEZONE
TZ=Japan に変更

DHCPを使わず、IP固定でルーターがある場合
/etc/resolv.conf 新規作成し、ルーターのIP
nameserver  192.168.x.x 

/etc/hosts ホスト名 IPアドレスで記述
EON   192.168.x.x

/etc/nsswitch.conf hostsの項目を以下に書き換え
hosts:      files dns


以下は電源管理関係なので絶えずフルパワーで動いてほしい人は必要ないです。

/etc/power.conf cpupmとcpu-thresholdの項目を以下のように書き換え、CPUのクロックが可変になります。
cpupm    enable poll-mode
cpu-threshold 1s

書き換え後 pmconfig で有効になります。
現在のCPUクロックは kstat -m cpu_info -s current_clock_Hz で確認できます。負荷を掛けても変わらなかったらうまくいっていません。
ただこのままだとHDにしばらくアクセスがないとスピンダウンします。私の場合HDは常時回転させておきたいのでその場合は
device-thresholds       /dev/dsk/c0t0d0p0       always-on
こんな感じでHDの数だけ書いていきます。つながってるHDは hd で確認できます。


とりあえずこんな感じでとりあえず動くとこまでは行くんじゃないでしょうか?

2011年9月15日木曜日

EON ZFS導入時のまとめ? その1

まず、最初にお断りしておきたいのは私がほとんど素人だと言うことです。
たいして詳しくありません。なのでこういうやり方をしている人がいる、という程度でお願いします。
鵜呑みにしないでください。間違っている可能性があります。


EONはOpenSolarisからファイルサーバーに不要な物を削っただけで基本的にOpenSolarisと同じ、という紹介をよくされています。
たしかに間違ってはいませんが色々OpenSolarisとは違うところがあるのでなかなか簡単にはいきません。
以下、私が気がついたEONの独自仕様部分。

まずFreeNASもそうですが、USBメモリにインストールすることを前提に作られているのでUSBメモリへのアクセスを極力減らすために起動時メインメモリの一部をRAMDiskとして確保し、そこにデータを展開して以後RAMDisk上で動作します。
なので設定ファイルなどを書き換えてもUSBメモリ内のデータは書き換わっていないので再起動すると元に戻ります。
変更をUSBメモリ内のデータに反映させるスクリプトが用意されており、それを実行することによって始めて再起動後も変更が保持されるようになる。
ただし、すべての変更を保存するわけではなく保存するフォルダや、ファイルを設定ファイルで持っており(/mnt/eon0/.backup)、その設定ファイルに記載されていない場所での変更はやっぱり消える。

フォルダ構造なども少々変わっており起動時に実行するコマンドリストをファイルで持っており(/mnt/eon0/.exec)、そこでシンボリックリンクなどをあれこれ作っている。

.backupと.execのファイルはEONにあれこれ機能を追加するときにいじる必要があります。

インストールの仕方は公式にも書いてありますがかなり不親切です。
インストールCDから起動してコマンドラインから
install.sh
インストールが終わったらCDを抜いて再起動して
setup
その後 setup の内容をUSBメモリに反映させるために
updimg.sh

という感じで書かれていますが私は全くこの通り行きませんでした。
まず install.sh setup まではいいんですが updmg.sh がまるでうまくいきません。

そもそも updimg.sh を実行する、みたいに書かれてますが厳密には間違っています。
ただしくは
updimg.sh /mnt/eon0/boot/x86.eon
です。
そしてこれを実行すると私はエラーでまくりでした。
まず そんなファイルない といわれ、再インストールとかあれこれやっていたら次に パーミッションがないから無理 とかいわれました。

で、これらの原因ですが、私の独断で言うと、すべてインストールに失敗しています。成功させるためにはUSBメモリを違う物にする、です。

私も最初は信じられませんでしたが海外のフォーラムとかをあちこちチェックしていたら同じような症状の人がいてUSBメモリを交換したらすんなりいった。と報告されており、半信半疑で私も違うUSBメモリを用意したらすんなりいきました。
原因は分かりませんが最初の3ステップでいきなりこけた人はまずUSBメモリを交換してみると幸せになれるかもしれません。

2011年9月13日火曜日

FreeNASからEONに乗り換え

いろいろ検討した結果。EONに乗り換えました。

候補だったOpenIndianaはまだ開発版しかなく安定版はないのと、OpenIndianaにする場合OSを入れる用のHDをさらに追加しないといけないので候補から除外。
NexentaCEのほうはGUIは商用ベースだけあってしっかりしてるんですが直感的に分かりにくいのと、全体的に動きがもっさりしてる。GUI上もそうですが、コマンドラインからコマンド叩いて結果が帰ってくるのも微妙に遅いのでコレもパス。

結局EONにすることになりました。EONは最初からUSBメモリにインストールすることを前提に作られているのでFreeNASからの乗り換えも簡単と言えば簡単でした。
ただいろいろ苦労してとりあえず現在運用していますが、いまでもあれこれいじってます。

とりあえず私にとって一番気になるiSCSIの結果だけ

HP Proliant Micro Server
2TのHD4台でRAID1+0

compression=ON,dedup=on


compression=ON,dedup=OFF


とりあえずiSCSIのスピードには満足しています。dedupはMicroServerでは負荷が高すぎて一回固まったのでいまはOFFで運用しています。
smbも体感できるぐらい早くなりましたね。大量にファイルが入っているフォルダをWindows側から開いたときや動画ファイルを開いたときFreeNASのときよりきびきび動きます。

EONは導入がFreeNASようには簡単にいきませんでした。今後のエントリで苦労したとこなんかを書いていこうかと思ってます。

2011年8月31日水曜日

FreeNASが遅い・・・

最初にHDDに不良が発生した以外は何の問題もなく運用できていたのですが、
やっぱり遅い。
smbでWindowsからファイルを書き込むとだいたい40Mぐらいの転送速度。転送速度が脈動してるのも気になる。
そしてなによりiSCSI、これが強烈に遅い。とても実用レベルじゃない。動画の再生すらコマ落ちしてまともに再生できない状態。


ってことでFreeNASから乗り換えようかと最近考えています。
FreeBSDはほとんど分からないのでパスして、本家のOpenIndianaかEONあたりでしょうか。
あとはNexentaあたり。
ただどれも一長一短あって悩ましい。
ってことで困ったときのVirtualBox。上記3つのOS全部いれてファイルサーバーとして構築してそれぞれの使い勝手を試してみました。

3つのOSを連続していじってて思ったのはやっぱFreeNASのWebGUIは偉大だったということ。
Nexentaは商用ベースでやってるのでしっかりしたWebGUIが用意されてるんですが、ほかは基本的にCUIのみ、FreeNASなら数秒で設定できることも、あれこれ時間がかかります。

とりあえず強烈に遅いiSCSIをなんとかしたいのでVirtualBox上ではあるんですが、それぞれのiSCSIの速度を簡単に測ってみました。

・VirtualBoxの設定
CPUコア数:2
メモリ:1G

・FreeNAS以外のOSのzfsの初期設定から変更したところ
dedup=on
compression=on
/etc/systemに以下追記

set zfs:zfs_nocacheflush = 1
set zfs:zfs_txg_timeout = 5
set zfs:zil_disable = 1

ほかはすべて初期設定のまま。VirtualBox上での比較に意味はあるのか?とかいろいろつっこみどころはありますが、まあざっくりこんな感じ、という程度で。
FreeNASはcompressionのみon。

まずVirtualBoxのHDイメージがおいてあるHDのベンチ結果。


・・・まあ、ずいぶん昔の300GのHDで総稼働時間も軽く1万時間こえてるボロいHDなので。


FreeNAS0.7.2.6694


おせえ・・・

OpenIndiana dev148


ローカルHDよりスコアがいいのはキャッシュが効いてるせいか?
EON-0.600-130


基本的にOpenSolarisからファイルサーバーに必要ない昨日を削りまくっただけなので
OpenIndianaとほとんど同じスコアですね。zfsのバージョンがこちらの方が若干古い。

NexentaStorCE 3.1.0


こちらもカーネルランドがOpenSolaris、ユーザーランドがUbuntuで、ベースがOpenSolarisなので
zfsのバージョンが若干古い。書き込みが落ちてるのが気になる・・・。


とりあえず簡単にiSCSIの差だけ比べてみましたが、やはりiSCSIは本家Solarisが強いなあ。
もうこれだけで乗り換える気満々。
気になるのはベンチ中はCPU負荷が相当高いこと。dedupとcompressionを有効にしてるからだとは思いますが、非力なProliantMicroServerでどこまで速度出せるのかね。
あ、FreeNASはその点安心の超低負荷で推移してました。

2011年3月31日木曜日

FreeNASその後 2

前回のエントリで書いた代替セクタ出まくりのHDですが、定期的にsmartチェックしてたんですが
日々代替セクタ数がもりもりと増加していき、これは逝く日は近そうなので
交換用HDを追加で注文しておきました。

最終的には代替セクタ数8000オーバーというすごい値になったとこで回復不能セクタとかが発生し、FreeNAS上から見えなくなりました。

今度はSeaToolsの修復処理も不可能。
どちらにせよこんなHDを使い続けるのは怖すぎるのでRMAでメーカーに送り、すでに用意してあった交換用HDと交換しreplaceして終了。

不良セクタが出まくるHDを使用した場合、通常はデータの破損が気になりますが、ZFSにはEnd-to-EndのチェックサムがあるのでZFSのありがたみを早速実感できました。


SeagateはRMA3年保証があるのでSeagateを選んだんですが、どうもRMAで返送されてくるHDは必ずしも同一型番とは限らないそうな。
容量が微妙に違っててpoolに突っ込めないHDがくるんだったら嫌だなあ・・・。


2011年3月17日木曜日

FreeNASその後

とりあえず順調に稼働中

と思いきや、

途中再起動はさんでアップタイム4日くらいでMicroserverからピーピーとビープ音が・・・・・・。
FreeNAS上では特にエラーはいてなかったので再起動したらHD一台がエラーになりZFSが縮退モードに・・・。
問題のHDを抜いてメインPCのWindows機につないでsmartみたら


・・・・・・・・。
SeaToolsでもエラーがでる。DOS起動で修復したら一応成功。
ネットで調べたところ、HD買ったショップもこのぐらいじゃ交換してくれないそうなので
このまま様子見かなー


DOS版SeaToolsで修復してからMicroserverにもどしたら何事もなかったようにpoolは通常状態にもどりました。