qemu-imgでイメージを作成する際の形式について覚え書きを記載しておきます。
1.raw
指定したサイズ分だけを予め確保する形式。サイズ分だけ確保されるので容量拡張のオーバーヘッドが無いと思っていたが、以外とそうではないということが判明。
$ qemu-img create -f raw Test.img 8G
とかでイメージを作成後、lsで見てみると確かに8Gのサイズとなっている。ところが「ls -ls」で同じように見てみると実体のサイズは0となっている。 i-node上の情報だけ8Gとなっているファイルが作られているのだろうか?というわけで・・・
$ cp --sparse=never Test.img Test-nonsparse.img
としてやれば、実体として8G確保されたファイルが出来上がる。
2. qcow2
ディスク容量をイメージ作成時に設定できるが、初期ファイルサイズは小さい。拡張処理が走るとファイルサイズが次第に肥大化していく。ディスク容量を節約したい時に有効。拡張処理のサイズに関してはqcow2生成時のオプション「cluster_size」で指定が可能。詳しくはman qemu-imgを参照。またsnapshot機能を持っている。vmwareやvirtualboxのようにGUIベースではないがコマンドラインでsnapshotを取ることが可能。
(参考)qcow2についてはパフォーマンスの比較資料が下記ページに掲載されている。
http://www.linux-kvm.org/page/Qcow2
0 件のコメント:
コメントを投稿