web-dev-qa-db-ja.com

仮想マシンを格納するためのZFSとrawディスク:トレードオフ

バックグラウンド:

同じワークステーションでWindowsとLinuxを実行するようにKVMをセットアップすることを計画していますが、ディスクのセットアップ方法については未定です。rawディスクは通常パフォーマンスを向上させると理解しています。I I/Oを多用する作業が多いため、パフォーマンスが重要です。ただし、計画しているセットアップでは、セットアップに多くの作業が必要になるため、次の場合は2回行う必要はありません。必要はありません。VboxとVMwarePlayerを使用したデスクトップ仮想化の経験では、起動しないVMファイルが破損しているため、何度か火傷を負いました。これは、データの破損に対する堅牢な保護と優れた復元機能を備えたセットアップ。これは私をZFSに惹きつけます。

これらのベンチマークに基づくと、ZFSは他のファイルシステムよりもVMストレージに適していますが、rawディスクパススルーとは比較されません。 http://www.ilsistemista.net/index。 php/virtualization/47-zfs-btrfs-xfs-ext4-and-lvm-with-kvm-a-storage-performance-comparison.html

私の質問:

  1. ZFSプールから実行されるVMファイルの速度は、特にゲストとしてWinodws/NTFSを使用する場合、rawディスクモードと比較してどうですか?

  2. デュアルOSワークステーションを構築している場合、これら2つのセットアップのメリットをどのように比較検討しますか?

  3. これに関して私が考えていないように思われる重要なことはありますか?

The two set-up I am considering:

3
Stonecraft

ZFSは、次の状況で(はるかに)高速または安全になります。

  • 他のソフトウェアRAIDまたはbiosRAIDソリューションの使用を検討している場合(たとえば、比較的強力なRAIDプロセッサを搭載した専用ハードウェアではなく、重要なDRAMキャッシュなど)-ZFSには最もパフォーマンスの高いソフトウェアRAIDがあります

  • 特定のワークロードが、他のファイルシステム(およびrawディスクブロック)が使用する 最近使用されていない ページキャッシュアルゴリズムと比較して、ZFSが使用する 適応置換キャッシュ アルゴリズムから大幅に恩恵を受ける場合。 LinuxカーネルでLRUの代わりにARCまたは同様のアルゴリズムを使用することについての議論がありましたが、私はこれまで何もわかりません それができました

  • ソフトウェアRAID-5の代わりにZFS独自のRAIDzを使用して、書き込みホールの問題を解決する場合。

  • 低速の大容量HDDの前に高速のドライブ(通常はSSD)を配置する階層型ストレージソリューションをセットアップする場合。 L2ARC および/または [〜#〜] zil [〜#〜] を取得するため、ZFSはこれに最適です。これはに要約されます。 )より大きなHDDの利用可能な合計ストレージ容量の恩恵を受けながら、「SSDのような」と感じるパフォーマンスを提供する読み取りおよび書き込みキャッシュのレイヤー。例:2 x 6 TB RAID-1のHDD、その前に2 x 250 GB SSDがあり、パーティションがL2ARCとZILに分割されています。

  • ZVOLに配置するファイルシステムまたはZFS内のファイルが、(効率的な)ブロック層の可逆圧縮をサポートしていない場合。 LZ4は高速で、ディスク容量を大幅に節約できます。ファイルシステムが劣ったアルゴリズム(圧縮率が遅いか悪いか、またはその両方)を使用している場合は、内部ファイルシステム内ではなく、ZFSレイヤーでLZ4を使用すると有利な場合があります。

また、VMの保存には、「ファイル内のファイルシステム」の代わりに [〜#〜] zvol [〜#〜] を使用することをお勧めします。

VMがLinuxであり、ZFSデータセットを直接使用できる場合は、それを使用するか、データセットを直接使用します(これが最も効率的です)。

5
allquixotic