私はベースイメージを使用しており、それに基づいて多くのVMを作成しています。そして今、私はベースイメージに使用するのにどちらがより良いか、qcow2またはrawを知りたいです。さらに、ディスク全体を複製するのではなく、このベースイメージのものを使用する利点があるかどうか教えてください。速度は1つの要素になる可能性がありますが、効率の観点から、ベースイメージを使用して、そのベースイメージを使用してVMを作成することに問題はありますか?
編集1:
私はいくつかの実験を行って得ました
1つ目は、ベースイメージとオーバーレイの両方がqcow2である場合です。 2つ目は、baseimageはrawですが、オーバーレイはqcow2です。3つ目は、各VMに個別のrawディスクイメージを与えています。驚くべきことに、最後のケースは他の2つと比較してはるかに効率的です。
試験的なセットアップ: OS in baseimage:Ubuntu Server 14.04 64 bit。 Host OS:Ubuntu 12.04 64bit RAM:8GB プロセッサー:Intel®Core™i5- 4440 CPU @ 3.10GHz×4 ディスク:500 GB
X軸上:VMが同時にブートされた数。1から始まり、15まで増加します。
Y軸上: "x"台のマシンを起動する合計時間。
グラフから、フルディスクイメージをVM=に与えることは、他の2つの方法よりもはるかに効率的であるようです。
編集2:
これは、各VMに個別の未加工イメージを提供する場合です。キャッシュをフラッシュした後のグラフです。これは、未加工のベースイメージ+ qcowオーバーレイとほぼ同じです。
ありがとう。
特定のユースケース(ベースイメージ+ qcow2オーバーレイ)の場合、RAW形式をお勧めします。
ベースイメージ+ qcow2オーバーレイと複数のフルコピーのどちらを選択するかは、優先度によって異なります。
とにかく、Qcow2ファイルはやや壊れやすいことがわかりました。
私のプロダクションKVMハイパーバイザーの場合、基本的に2つの異なるセットアップを使用します:
別の可能性は、通常のLVMボリューム+ XFS + RAWイメージを使用することです。唯一の欠点は、通常の(非シン)LVMスナップショットが非常に遅く、ビジーな通常のLVMボリュームのスナップショットを作成すると、(スナップショットの存続期間中)パフォーマンスが低下することです。とにかく、スナップショットを散発的に使用することを計画している場合は、これがより簡単で安全な方法です。
いくつかの参照:
RHEL 6でのKVM I/Oの速度低下
RHEL 6.1およびFedora 16でのKVMストレージのパフォーマンスとQcow2の事前割り当て
Red Hat Enterprise Linux 6.2でのKVMストレージのパフォーマンスとキャッシュ設定
LVMシンボリュームの説明
注意してください... Linuxを使用している場合は、raw
を使用して、サイズに関してはqcow2
と同じ利点を得ることができます。
...ファイルシステムがホールをサポートしている場合(Linuxのext2やext3、WindowsのNTFSなど)、書き込まれたセクターのみがスペースを予約します。
raw rawディスクイメージ形式(デフォルト)。これは最速のファイルベースのフォーマットです。ファイルシステムがホールをサポートしている場合(Linuxのext2またはext3、WindowsのNTFSなど)、書き込まれたセクターのみがスペースを予約します。 qemu-img infoを使用して、イメージまたはUnix/Linuxのls -lsで使用される実際のサイズを取得します。