web-dev-qa-db-ja.com

mdadm + zfsとmdadm + lvm

私はこれに不慣れで、mdadm + zfsに関する結果が見つからないため、これは単純な質問かもしれませんが、いくつかのテストの後、それは機能する可能性があります:

ユースケースは、バックアップの頻度がやや低い一部のデータ用のRAID6を備えたサーバーです。私はZFSまたはRAID6のいずれかによって十分にサービスを受けていると思います。プラットフォームはLinuxです。 パフォーマンスは二次的です。したがって、私が検討している2つのセットアップは次のとおりです。

  • RAID6アレイと通常のLVMおよびext4
  • RAID6アレイとZFS(冗長性なし)。この2番目のオプションは、まったく説明されていません。

なぜZFS + RAID6なのか?これは主に、ZFSが新しいディスクでraidz2を拡張できないためです。ディスクをより大きなディスクに交換することはできますが、別のディスクを追加することはできません。冗長層としてmdadmを使用すると、2ディスクの冗長性とZFSディスクの拡張を実現できます。

その要点に加えて(そうでなければ、RAIDなしで直接raidz2に行くことができます)、これらは私が各オプションについて見る賛否両論です:

  • ZFSには、事前に割り当てられたスペースのないスナップショットがあります。 LVMには事前割り当てが必要です(正しくない可能性があります)。
  • ZFSには、チェックサム(これに非常に興味があります)と圧縮(素晴らしいボーナス)があります。
  • LVMにはオンラインファイルシステムの拡張があります(ZFSはexport/mdadm --grow/importを使用してオフラインで実行できます)。
  • LVMには暗号化があります(ZFS-on-Linuxにはありません)。これは私が見るこのコンボの唯一の主要な欠点です。 RAID6 + LVM + ZFSに行くことができると思います...重すぎるように見えますか?

したがって、適切な質問で締めくくります。

1)RAID6 + ZFSを本質的に阻止または排除するものはありますか?誰もがこのようなセットアップの経験がありますか?

2)ZFSを不要にする(ファイルシステムの拡張の可能性を維持する)チェックサムと圧縮の可能性はありますか? RAID6 + LVMコンボは、認可され、テストされた方法のように見えるためです。

5
Álex

MDADM raid6 + ZFSソリューションを使用する場合、copys = 2以上(2倍のストレージを使用する)を設定しない限り、ZFSには破損したデータブロックを再計算/復元する方法に関するデータがないため、自己回復が失われます。 ZFSストレージは、データの不整合のみを報告します。

つまり、データブロックを正しく読み取れない場合、ZFSは影響を受けるファイルを通知します。メタデータは二重冗長であり、不整合が検出された場合は自己修復できるため、ファイルシステム全体が危険にさらされることはありません。

プールにvdevを追加して、動的にストライプ化することで、ZFSファイルシステムを拡張することもできます。たとえば、4〜8個のディスクを使用して新しいraidz2 vdevを作成し、それをプールに追加できます。ミラーリングされたvdevを追加することもできます。