web-dev-qa-db-ja.com

ドライブサイズが異なるZFSプール

2つの2 TBドライブと2つの1TBドライブを使用してFreeNAS ZFSプールをセットアップすることを計画しています。どういうわけかデータの冗長性が欲しいのですが。私は2つのオプションがRAIDZを使用して2 TBドライブごとに1 TBを失うか、またはこのコマンドを使用する(データの冗長性に必要なスペースを2倍にする)ことを示唆している this 投稿を読みました。

zfs set copies=2 poolname

これを処理し、DroboのBeyond RAIDまたはNetgearのXRAIDのようなものを実現するより良い方法はありますか?または、各2 TBドライブを1 TBパーティションに分割して、両方のパーティションをプールに入れることはできますか?

9

より良い方法は、2つのミラーで構成される単一の3 TBプールを作成することです。

zpool create test mirror disk1 disk2 mirror disk3 disk4

disk1とdisk2は1TBのディスクであり、disk3とdisk4は2であるTB ones。

編集:

サイズを最大化したいがパフォーマンスやベストプラクティスをあまり気にしない場合は、すべてのドライブを同じサイズのパーティション(またはスライス)でパーティション化し、4 TB 4つのvdev RAIDZと2つのvdevミラー。

zpool create -f test raidz d0p1 d1p1 d2p1 d3p1 mirror d0p2 d1p2

コマンドがレプリケーションレベルの不一致を受け入れるように強制するために必要な「-f」オプションに注意してください。

13
jlliagre

これは、必要なデータストレージの量によって異なります。 RAID 1を使用して、それぞれ1TBと2TBの2つのプールを作成できます。そうでない場合は、同じサイズのディスクを取得できるかどうかを確認し、RAID 1 + 0またはRAIDZを試してください。

4
ewwhite

ZFS管理ガイドから:

「デバイスは、事前にフォーマットされたディスク上の個別のスライスにすることも、ZFSが単一の大きなスライスとしてフォーマットするディスク全体にすることもできます。」

つまり、2 TBのドライブに2つの1 TBパーティションを作成し、それらをRAID-Z vdevに使用し、残りのスペースを非冗長ストレージに使用できます。

ただし、ZFSベストプラクティスガイドによると、パフォーマンスが低下する可能性があります。

本番システムでは、次の理由により、ストレージプールにスライスではなくディスク全体を使用します。

  • ZFSが書き込みキャッシュを持つディスクに対してディスクの書き込みキャッシュを有効にできるようにします。不揮発性書き込みキャッシュを備えたRAIDアレイを使用している場合、vdevがアレイの書き込みキャッシュのメリットを引き続き享受できるため、これは問題の少ないスライスです。

  • ディスクキャッシュが有効になっているJBOD接続ストレージの場合、複数のディスク書き込みとそれに続く単一のキャッシュフラッシュとしていくつかの同期書き込みを発行できるため、ディスクコントローラーはI/Oスケジューリングを最適化できます。これとは別に、SATA NCQまたはSCSI TCQを適切にサポートしていないシステムでは、書き込みキャッシュを有効にすると、ホストが物理I/Oから非同期で単一のI/O操作を発行できるようになります。

  • スライス上にZFSとUFSの両方のファイルシステムがディスクに含まれている場合、故障したディスクを交換する回復プロセスはより複雑になります。

2
Terlisimo