FreeNAS のディスクはどう構成すればいいか

現在はパーソナルユース程度なら、RaidZやRaidZ2構成にするより、Mirrorセットを作って複数Stripeにしたりするのがいいかと思っています。
FreeNASのディスク構成をもう一度考える



FreeNAS は ZFS による、ソフトウェアRAIDがあるおかげで、特殊なハードウェアを持たないお下がりのパソコンみたいなのをNAS化できるという寸法なワケですが、メモリがあんまり積めない場合だと、ZFSはキツイという記述を見ることがあります。(実際大量のファイル転送をするとメモリ食いつぶすので、メモリは積めるだけいっぱい積んだ方がいい、っていうのはその通りなのですが。ドキュメントによると、ZFSを使うには最低8GBで、ホーム/SOHOユースには16GBが適当、2GBとか4GBの場合は、UFSの利用を検討、1GBとかしかない場合はもっとパワフルなハードウェアにするべき、だとか)

実際にはお古のパソコンに新たにメモリを追加するのはメモリが今の半額ぐらいのイメージだった一昔前ならまだしも、今はちょっと…という気もします。
(MicroServerを買ってきて、と言う人はメモリも一緒に買えばいいと思いますが)

また、ZFSのボリュームを一旦構成してしまったら、データを保持したまま構成を変更することは今のところできないので、最初の構成はよく考えて行う必要があります。
新しくドライブを調達する場合も何台用意するのかに直結しますし。
そうでない場合も、一旦構成したボリュームに転送したデータをバックアップして、ボリュームを再構成してまたリストアするとなると、その手間に気が遠くなるというものです。

そこで、ちょっと思いついて、 MicroServer の ESXi 上に 4GBメモリ設定の仮想マシンを設定して各構成をしてみてみました。そのため、そんなにパワフルでもないと思います。

ちなみに、 RaidZ が Raid5 相当、 RaidZ2 が Raid6 相当なのはパリティドライブの台数の話で、 RaidZ の RaidZ たる部分の差が本当はあるんですよ、と。

2ドライブ

ufs_mirror.jpg

UFS ミラー


zfs_mirror.jpg

ZFS ミラー

2ドライブの場合、NAS化するならミラーの一手。
UFSだと ZFS Dataset が作れないので、共有フォルダを複数作ったり、共有フォルダ毎にアクセス権を制御したりが FreeNAS の GUI でできないっぽい。
これくらいのスコアの差なら管理の便利さをとって ZFS でいいんじゃないかと。なお、メモリはどちらでも1GB位消費なので、UFSとZFSの違いはあんまりなさそう。
さらに非力な環境とか、複数から大量にアクセスのある環境だとどうか、かな…。

3ドライブ

zfs_raidz_3drive.jpg

RaidZ

3ドライブで構成できるのは、パリティドライブが1台のRAID 5相当の RaidZ のみ。
MicroServer だと、ドライブベイが余ってしまう構成になるのと、RaidZに後から1台追加してもRaidZ2にしたり、容量アップ、とはいかないので、ちょっとどうかな、と。

4ドライブ

zfs_raidz2.jpg

RaidZ2

zfs_mirror_stripe.jpg

ZFS ミラー ストライプ
(まず2ドライブでミラーを構成して、改めて2ドライブを選択して、既存のボリュームの容量を追加する操作をすると構成できる。手間の割にパフォーマンスもイマイチで、耐障害性でもRAID-Z2に比べて譲るのでわざわざやらなくてもいい気がする)

zfs_raidz_4drive.jpg

RaidZ 4ドライブ
(ZFS Volume Manager が RaidZ2 を選択するプルダウンをわざわざ RaidZ に変更することで構成できる)

ZFS Volume Manager のおすすめだと、RaidZ2 のはずなのですが、あんがい non-Optimal な RaidZ も健闘しているので、無理に5台目を搭載しない環境としては、容量3台分の選択肢はアリではないかと思います。

5ドライブ

zfs_raidz.jpg

RaidZ 5ドライブ

5ドライブにするのは、4台分の容量を有効にするためで、 RaidZ 一択かと思います。
MicroServerだと、5インチベイも使っている想定になります。

一応、RaidZ2もやってみました。

zfs_raidz2_5.jpg

容量的には今ひとつだけど、ディスクのresilver中も安心という意味では、 MicroServer の搭載能力をフルに活かしていると言えなくもないかな。

以降 MicroServer には通常積めない構成なのでオマケ。

zfs_raidz2_6drive.jpg

RaidZ2 6ドライブ
外に出てるeSATAを内部に引き込んで、5インチベイに2.5インチを2台積むとか、
eSATAに外付けのハードディスクを接続するとかすれば構成できなくもないけど…。
そうまでして「台数」を搭載したいかというと疑問。

7ドライブは RaidZ3 、7ドライブも使って容量4台分に対してパリティドライブ3台っていうニーズもあまりないかと。
8ドライブは RaidZ で non-Optimal なので割愛。

zfs_raidz_9drive.jpg

RAID-Z 9ドライブ

zfs_raidz2_10drive.jpg

RaidZ2 10ドライブ

11ドライブは RaidZ3
12ドライブは RaidZ で non-Optimal なので割愛。

10ドライブで CrystalDiskMark を取ってもメモリ消費は 2GB いってなかった。
(ネットワーク越しのベンチなので100MBで実施してるからだろうけど、
 1000MBとか時間がかかりすぎてやりたくない)

結論としてはMicroServerでありそうな、3~5台程度で構成するのなら、パリティドライブが1台でいいのか2台欲しいのか、で決めてしまってよさそうな感じです。
スペアのドライブを用意しておける、とかすぐ買ってこれる、という場合はRaidZ、リビルド中が不安とか、買うまでに稟議が必要(家庭内も含めて)という場合はRaidZ2、みたいなイメージでしょうか。


また、同時に購入した同一機種のドライブで構成する場合は、お亡くなりになるのも同時期だったりすることもありますので、RaidZ2にしておいたほうがいいかもしれません。


ZFSにSSDを追加して、 Log(ZIL)、Cache(L2ARC) を構成できるのですが、それについては
FreeNAS に SSD を搭載する
で。

オマケ。

zts_ssd_stripe_1.jpg

ZFSでSSDを1ドライブでStripe構成。
やっぱ書き込みに差があるのがわかるけど、FreeNASで構成するのは速度を求めてじゃないと思うんだけど。


その後、FreeNASの動画などを見て思い直した。

FreeNASのディスク構成をもう一度考える

コメント (2)

くわ:

初めまして

貴殿のzfs構築考察を参考にさせて頂きましてnasの組み立てに取り組みさせて頂いておりますくわと申します

HPのMicroseverを5ベイ使えるようにしてxigmanasをインストールしてみようかと思うのですが、HDDを5本(6tb×5)とした時、xigmanasをインストールするディスクは別に用意する必要があるでしょうか?(6tb×5+SSD120gなど)

それとも5本の内の1台にインストールして余った領域を別パーティションとして記憶領域に使えるのでしょうか?その場合、1台はXigmanas分だけ容量が少ないですが大丈夫なものでしょうか?

お手数でございませんでしたらアドバイス頂けますと幸いです
よろしくお願い致します

きりしま:

XigmaNASに詳しいわけではありませんので、
TrueNAS/FreeNAS の場合ですと、当然「システム用のディスクは別に用意する必要がある」となります。

システムをインストールするディスクをパーティション分割してストレージ容量に割り当てることはできません。

下記などを参照ください。

TrueNAS 12.0 のハードウェア要件
https://kirishima.it/mt/2020/11/truenas_120_2.html
TrueNAS 12.0 のインストール
https://kirishima.it/mt/2020/11/truenas_120_install.html

コメントを投稿

(コメントは、オーナーが承認するまで表示されません)

About

2014年09月10日 22:16に投稿されたエントリーのページです。

ひとつ前の投稿は「コールマン アルミライスクッカーを試す」です。

次の投稿は「ESXi 上の FreeNAS に MiniDLNA をインストールしても見えない(ESXiの設定変更で見えるように)」です。

他にも多くのエントリーがあります。メインページアーカイブページも見てください。

Powered by
Movable Type 3.35