〜16TBのストレージサーバーの構築を検討しています。現時点では、ファイルシステムとしてZFSとXFSの両方を検討しています。長所と短所は何ですか?何を探す必要がありますか?3番目のより良いオプションはありますか?
〜16TBのストレージサーバーの構築を検討しています。現時点では、ファイルシステムとしてZFSとXFSの両方を検討しています。長所と短所は何ですか?何を探す必要がありますか?3番目のより良いオプションはありますか?
回答:
XFSは、多くの大きなファイルを含む非常に大きなファイルシステムにより適していることがわかりました。私は2年以上機能する3.6TB XFSファイルシステムを問題なく使用してきました。そのサイズでext3などよりも確実に機能します(特に、多くの大きなファイルと大量のI / Oを処理する場合)。
ZFSで得られるのは、ファイルシステム自体に組み込まれたデバイスプーリング、ストライピング、およびその他の高度な機能です。詳細について話すことはできません(他の人にコメントさせていただきます)が、私が伝えることができることから、Solarisをここで最大限に活用したいと思います。既にハードウェアRAIDを使用している場合(私と同じように)、ZFSがどれだけ役立つかはわかりません。
xfs_fsr
「最適化」プログラムです。
ZFSは、ソフトウェアRAIDを超える利点を提供します。コマンド構造は非常に思慮深くレイアウトされ、直感的です。また、メタデータのインデックス作成を高速化するために、圧縮、スナップショット、クローン作成、ファイルシステムの送受信、およびキャッシュデバイス(新しいSSDドライブ)を備えています。
圧縮:
#zfs set compression=on filesystem/home
ライブマウント可能なコピーオンライトスナップショットの簡単な作成をサポートしています。
# zfs snapshot filesystem/home/user@tuesday
# cd filesystem/home/user/.zfs/snapshot/tuesday
ファイルシステムのクローン作成:
# zfs clone filesystem/home/user@tuesday filesystem/home/user2
ファイルシステムの送受信:
# zfs send filesystem/home/user@tuesday | ssh otherserver "zfs receive -v filesystem/home/user"
増分送信/受信:
# zfs send -i filesystem/home/user@tuesday | ssh otherserver "zfs receive -v filesystem/home/user"
キャッシングデバイス:
# zpool add filesystem cache ssddev
これは氷山の一角にすぎません。OpenSolarisのインストールを試してみることを強くお勧めします。
http://www.opensolaris.org/os/TryOpenSolaris/
編集:これは非常に古く、Open Solarisは廃止されました。ZFSを使用する最良の方法は、おそらくLinuxまたはFreeBSD上です。
完全な開示:私はかつてSunストレージアーキテクトでしたが、1年以上働いていませんでした。この製品に興奮しています。
http://opensolaris.org/os/TryOpenSolaris/
ライブファイルシステムでlvmスナップショットとxfsを使用することは、特に非常に大規模なファイルシステムを使用する場合の災害のレシピです。
私は自分のサーバーで過去6年間LVM2とxfsのみを実行しています(zfs-fuseが非常に遅いために自宅でも)...
ただし、スナップショットを使用しているときに発生したさまざまな障害モードをカウントできなくなりました。私はそれらの使用を完全に止めました-それはあまりにも危険です。
私は今、作ってあげる唯一の例外は、私は一時的なスナップショットを使用して、一晩のバックアップをやる私自身の個人的なメールサーバ/ Webサーバのバックアップ、である、それはソースfsの大きさを常に等しく、そして右の後に削除されます。
留意すべき最も重要な側面:
考慮すべきいくつかの追加事項。
ドライブがその上にあるファイルシステムに関係なくハードウェアRAIDアレイで停止した場合、デバイス上のすべてのブロックを再構築する必要があります。データを保持していないものでさえも。一方、ZFSはボリュームマネージャー、ファイルシステムであり、データの冗長性とストライピングを管理します。そのため、データを含むブロックのみをインテリジェントに再構築できます。これにより、ボリュームが100%いっぱいになったとき以外の再構築時間が短縮されます。
ZFSにはバックグラウンドスクラブ機能があり、ディスク上でデータの一貫性を維持し、データが失われる前に見つかった問題を修復します。
ZFSファイルシステムは常に一貫した状態にあるため、fsckは必要ありません。
ZFSは、LVMが提供するスナップショットと比較して、スナップショットとクローンの柔軟性と機能も提供します。
Linux、LVM、XFSスタックでの大判ビデオ制作のために大規模なストレージプールを実行している。私の経験では、ストレージをマイクロ管理するのは簡単です。これにより、使用されていない大量のスペースと、論理ボリュームの管理に関する時間/問題が発生する可能性があります。フルタイムのストレージ管理者がストレージのマイクロ管理を担当している場合、これは大した問題ではないかもしれません。しかし、ZFSのプールストレージアプローチにより、これらの管理の問題が解消されることがわかりました。
どのOSを実行する予定ですか?それとも、考慮事項の別の部分ですか?Solarisを実行している場合、XFSは私が知る限りオプションではありません。Solarisを実行していない場合、ZFSの使用をどのように計画していますか?他のプラットフォームではサポートが制限されています。
Linuxサーバーについて話している場合は、Ext3に個人的なこだわりがありますが、それは、それが最も多くのテストを受けているからです。zfs-fuseはまだ非常に若いです。また、カーネルの更新後にバグが原因でデータが破損したXFSで問題が発生しました。Ext3に対するXFSの利点は、リモートデータセンターにあるマシンの復元に伴うコストを上回るものではありませんでした。
パフォーマンスに集中すべきだとは思わない。XFS、ext4などでデータは安全ですか?いいえ。これらの博士論文と研究論文を読んでください。
XFSはデータ破損に対して安全ではありません:pages.cs.wisc.edu/~vshree/xfs.pdf
ext3、JFS、ReiserFSなどもありません:zdnet.com/blog/storage/how-microsoft-puts-your-data-at-risk/169?p=169&tag=mantle_skin%3bcontent「魅力的な博士論文に出会いましたIRON File SystemsのVijayan Prabhakaranが、NTFS、ext3、ReiserFS、JFS、XFSの5つのコモディティジャーナリングファイルシステムがストレージの問題をどのように処理するかを分析します。
一言で言えば、彼はすべてのファイルシステムが
. . . failure policies that are often inconsistent, sometimes buggy, and generally inadequate in their ability to recover from partial disk failures. "
しかし、ZFSはデータを正常に保護します。これに関するリサーチペーパーを次に示します。zdnet.com/blog/storage/zfs-data-integrity-tested/811
それはあなたが望む機能に依存します...、あなたが言ったように2つの合理的な選択肢はxfsとzfsです、xfsコードはかなりよくテストされています8年前にIRIXで最初に使用しました
xfsからスナップショットを取得することが可能です(lvmとxfs_freezeを使用)
SSDなどの別のログデバイスを使用することもできます。
mkfs.xfs -l logdev=/dev/sdb1,size=10000b /dev/sda1
従来、大規模なxfsはチェックするために大量のメモリを必要とします
ゼロが現れる問題は「セキュリティ」機能でしたが、これは少し前に消えたと思います。
すでに述べたものとは別に、パフォーマンスの観点からは、MDベースRAIDのxfsはストリーミングメディアのzfsよりもパフォーマンスが優れています。私は、xfsで半年間同じハードウェアを使用し、メディアサーバー上のzfsでほぼ同じ時間を使用しました。Intel Atom 330でxfsを使用していると、スタッターは発生しません。複雑なシーンのzfsでは、同じハードウェアが追いつかず、フレームをドロップし始めます。