web-dev-qa-db-ja.com

Linuxを実行しているXenゲストでZFSまたはXFSを使用する

背景:

私は、バックアップとロールバックの目的でスナップショットを実行する機能を備えた、ext3/4以外のファイルシステムを使用することの実行可能性を調査しています。検討中のサーバーは、LinodeのXenベースのVPSプラットフォームで実行されているメールボックスサーバーノードです。特に、データの整合性と、LinuxでのネイティブZFSサポートの今年の安定したリリースに関してZFSが提供するさまざまな公開された利点に惹かれます http://zfsonlinux.org

ZFSは、(LVM + XFSの代わりに)利点と単純さの点でより徹底的なオプションのようです。私はZFS(ローカルのFreeNASインストールで使用している)の経験がほとんどなく、XFSの経験がないため、投稿していることに注意してください。現在まで、私のサーバーはLVMで管理されていないext3ファイルシステムを使用しています。

詳細な質問:

それで、私は2つの質問があります。


(1)Xen Linuxゲストで実行する、次の3つの側面すべての最良のものとして、2つのファイルシステムのどちらがより良い選択でしょうか?

  • スナップショット
  • データの整合性
  • パフォーマンス

(2)ZFSが実行可能なオプションである場合、データ整合性のソリューションをさらに強化するためにXenディスクイメージ全体でRAIDZを使用することは実用的ですか?


注:実稼働システムでBTRFSを使用する際に読んだ多くの警告を考えると、BTRFSを検討することには消極的です。

3
zoot

Linodeでこれらのソリューションのいずれも使用できなかった理由はありませんが、LinodeはLinodeが管理するディスクサービスと互換性がなくなります。 Linodeはext3のみをサポートします。 Linodeバックアップやディスクサイズ変更がない場合、移行に影響を与える可能性があります(ただし、ディスクイメージレベルで機能すると思われます)。 ZFSのメリットがデメリットを上回るかどうかはあなた次第です。 LVMが行う奇妙なハッキーなことではなく、実際のスナップショットのように、コピーオンライトファイルシステムを使用していくつかの巧妙なことを行うことができます。

Raidzの使用に関しては、おそらくスペースを節約する以外に本当のメリットはありません。すべてのディスクイメージは、Linodeのホストマシン上の同じraid10ボリューム上にあるため、raidzよりもdittoブロックを使用する方が理にかなっています。 ZFSは、特定のブロックの複数のコピーを保持します。グローバルメタデータの3つのコピー、ファイルシステムメタデータの2つのコピー、およびユーザーデータの1つのコピーです。 ZFSファイルシステムの「copies」プロパティを設定して、ユーザーコピーの数を制御できます。 2に設定すると、すべてのユーザーデータが複製され、他の2つの値も1つずつバンプされ、上限は3になります(つまり、ファイルシステムメタデータのコピーが3つ)。これは、ファイルシステムレベルごと、またはプール全体で設定できるため、ミラーリングするのに十分重要なデータを選択できます。

ZFSは、ディットブロックを互いに可能な限り離しておくようにします。プールに複数のvdevがある場合は異なるvdev、1つのvdevだけの場合はvdevの少なくとも1/8離れている(Linodeのように)。

3
Adam