web-dev-qa-db-ja.com

他のVMのベースイメージとして使用するには、rawまたはqcow2のどちらがより良いイメージ形式ですか?

私はベースイメージを使用しており、それに基づいて多くのVMを作成しています。そして今、私はベースイメージに使用するのにどちらがより良いか、qcow2またはrawを知りたいです。さらに、ディスク全体を複製するのではなく、このベースイメージのものを使用する利点があるかどうか教えてください。速度は1つの要素になる可能性がありますが、効率の観点から、ベースイメージを使用して、そのベースイメージを使用してVMを作成することに問題はありますか?

編集1:

私はいくつかの実験を行って得ました enter image description hereenter image description hereenter image description here

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: enter image description here

これは、各VMに個別の未加工イメージを提供する場合です。キャッシュをフラッシュした後のグラフです。これは、未加工のベースイメージ+ qcowオーバーレイとほぼ同じです。

ありがとう。

25
A-B

特定のユースケース(ベースイメージ+ qcow2オーバーレイ)の場合、RAW形式をお勧めします。

  1. 高速です:メタデータが関連付けられていないため、可能な限り高速です。一方、Qcow2には2つの間接層があり、実際のデータに到達する前に交差する必要があります。
  2. オーバーレイレイヤーはQcow2ファイルである必要があるため、これまで使用してきたスナップショット機能を失うことはありません(RAW画像はそれ自体ではスナップショットをサポートしていません)

ベースイメージ+ qcow2オーバーレイと複数のフルコピーのどちらを選択するかは、優先度によって異なります。

  1. 絶対的なパフォーマンスを得るには、割り当て済みのRAW画像を使用してください。これには、スナップショットをサポートしないという欠点があります。ほとんどの環境では、高すぎる代償を払う必要があります。
  2. 柔軟性とスペース効率のために、RAWベースイメージ+ Qcow2オーバーレイを使用します。

とにかく、Qcow2ファイルはやや壊れやすいことがわかりました。

私のプロダクションKVMハイパーバイザーの場合、基本的に2つの異なるセットアップを使用します:

  1. パフォーマンスが#1の場合、仮想マシンに直接接続されたLVMボリュームを使用し、LVMスナップショット機能を使用して一貫したバックアップを作成します
  2. 柔軟性を高めるためにパフォーマンスを犠牲にできる場合は、単一の大きなLVMシンプロビジョニングボリューム+ XFS + RAWイメージを使用します

別の可能性は、通常の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シンボリュームの説明

18
shodanshok

注意してください... Linuxを使用している場合は、rawを使用して、サイズに関してはqcow2と同じ利点を得ることができます。

...ファイルシステムがホールをサポートしている場合(Linuxのext2やext3、WindowsのNTFSなど)、書き込まれたセクターのみがスペースを予約します。

https://docs.fedoraproject.org/en-US/Fedora/18/html/Virtualization_Administration_Guide/sect-Virtualization-Tips_and_tricks-Using_qemu_img.html

raw rawディスクイメージ形式(デフォルト)。これは最速のファイルベースのフォーマットです。ファイルシステムがホールをサポートしている場合(Linuxのext2またはext3、WindowsのNTFSなど)、書き込まれたセクターのみがスペースを予約します。 qemu-img infoを使用して、イメージまたはUnix/Linuxのls -lsで使用される実際のサイズを取得します。

6
d hee