結論: 圧倒的じゃないか、我が軍 (–accelerateオプション)は!
ddコマンドさん、疑ってすみませんでした。むしろ、 virt-install に –accelerate をつけたときの比較では、最初にddでイメージ作ったほうが速かったです。<つぶやき>まるで真っ先に石狩の障害原因としてzfsが疑われたような扱いでしたね・・・</つぶやき>
というわけで、前回のエントリの続きです。4つのインストール方法ごとの結果を公表いたしまする。。。今日の作業も下北沢オープンソースCafeで行なっとりやす。
■ [1] ddコマンドでイメージを作ってから–accelerateオプションをつけずにインストール (約45分)
PORT=10000 ;
sudo dd if=/dev/zero \
of=/opt/vmimg/${INSTANCE}.img \
bs=1048576 \
count=1 seek=19456 ; \
sudo virt-install \
--connect qemu:///system \
--name=${INSTANCE} \
--ram=1536 \
--vcpus=1 \
--network=bridge:br0 \
--file=/opt/vmimg/${INSTANCE}.img \
--file-size=20 \
--nonsparse \
--hvm \
--os-type=linux \
--vnc \
--vncport=$PORT \
--cdrom=${HOME}/tmp/CentOS-5.6-x86_64-bin-DVD-1of2.iso
■ [2] ddコマンドを使わず–accelerateオプションをつけずにインストール (約60分)
なんと、ddコマンドを使わないほうが遅かった!こないだ速かったのはイメージファイルがすでにあったから?
PORT=10001 ; \
sudo virt-install \
--connect qemu:///system \
--name=${INSTANCE} \
--ram=1536 \
--vcpus=1 \
--network=bridge:br0 \
--file=/opt/vmimg/${INSTANCE}.img \
--file-size=20 \
--nonsparse \
--hvm \
--os-type=linux \
--vnc \
--vncport=$PORT \
--cdrom=${HOME}/tmp/CentOS-5.6-x86_64-bin-DVD-1of2.iso
■ [3] ddコマンドでイメージを作ってから–accelerateオプションをつけてインストール (約10分)
PORT=10002 ;
sudo dd if=/dev/zero \
of=/opt/vmimg/${INSTANCE}.img \
bs=1048576 \
count=1 seek=19456 ; \
sudo virt-install \
--connect qemu:///system \
--name=${INSTANCE} \
--accelerate \
--ram=1536 \
--vcpus=1 \
--network=bridge:br0 \
--file=/opt/vmimg/${INSTANCE}.img \
--file-size=20 \
--nonsparse \
--hvm \
--os-type=linux \
--vnc \
--vncport=$PORT \
--cdrom=${HOME}/tmp/CentOS-5.6-x86_64-bin-DVD-1of2.iso
■ [4] ddコマンドを使わず–accelerateオプションをつけてインストール (約15分)
あれ?やっぱり先にddコマンドでイメージ作ったほうが早い?
PORT=10003 ;
sudo virt-install \
--connect qemu:///system \
--name=${INSTANCE} \
--accelerate \
--ram=1536 \
--vcpus=1 \
--network=bridge:br0 \
--file=/opt/vmimg/${INSTANCE}.img \
--file-size=20 \
--nonsparse \
--hvm \
--os-type=linux \
--vnc \
--vncport=$PORT \
--cdrom=${HOME}/tmp/CentOS-5.6-x86_64-bin-DVD-1of2.iso
というわけで、インストールにかかった時間の短さは [3]>[4]>>(越えられない壁)>>[1]>>>>>>>>[2] といったアンバイでございました。ddコマンドで先にイメージ作ったほうがよかったです。ddコマンドで /dev/zero からイメージ作ったほうが virshコマンドを介さないぶん速いのかもですね。
各イメージファイルについての違いについても記録しておきます。
1.example.com.img
1.7G 1.example.com.img
-rw-r--r-- 1 root root 19923968 Jan 13 02:03 1.example.com.img
-rw-r--r-- 1 root root 20G Jan 13 02:03 1.example.com.img
1.example.com.img: x86 boot sector; partition 1: ID=0x83, active, starthead 1, startsector 63, 208782 sectors; partition 2: ID=0x8e, starthead 0, startsector 208845, 39632355 sectors, code offset 0x48
2.example.com.img
21G 2.example.com.img
-rwxr-xr-x 1 root root 20971520 Jan 13 06:36 2.example.com.img
-rwxr-xr-x 1 root root 20G Jan 13 06:36 2.example.com.img
2.example.com.img: x86 boot sector; partition 1: ID=0x83, active, starthead 1, startsector 63, 208782 sectors; partition 2: ID=0x8e, starthead 0, startsector 208845, 41720805 sectors, code offset 0x48
3.example.com.img
1.7G 3.example.com.img
-rw-r--r-- 1 root root 19923968 Jan 14 13:30 3.example.com.img
-rw-r--r-- 1 root root 20G Jan 14 13:30 3.example.com.img
3.example.com.img: x86 boot sector; partition 1: ID=0x83, active, starthead 1, startsector 63, 208782 sectors; partition 2: ID=0x8e, starthead 0, startsector 208845, 39632355 sectors, code offset 0x48
4.example.com.img
21G 4.example.com.img
-rwxr-xr-x 1 root root 20971520 Jan 14 13:58 4.example.com.img
-rwxr-xr-x 1 root root 20G Jan 14 13:58 4.example.com.img
4.example.com.img: x86 boot sector; partition 1: ID=0x83, active, starthead 1, startsector 63, 208782 sectors; partition 2: ID=0x8e, starthead 0, startsector 208845, 41720805 sectors, code offset 0x48
しかし、1つナゾなのが、ddコマンドでスパースファイルを作った上でインストールしたイメージはスパースファイルのままで、ddコマンドでスパースファイルを作らずにインストールしたほうのイメージは、スパースファイルのままだ。ちなみに、4台とも
--nonsparse
オプションをつけている、にも関わらずだ。これはつけるだけ無駄なオプションなの?というわけで、そろそろホストOS側のディスクも不足気味なので、これら4台をundefineしてイメージ削除してもっかい検証してみようかな。
最後になりましたが、アドバイスいただきました いの さん、 たけひろ さん、加藤さん、平さん、長谷川さん、もりわかさん、中井さん、アドバイスありがとうございます!
https://twitter.com/#!/hasegaw/status/157469062170034176
https://twitter.com/#!/hasegaw/status/157471588781015040
https://twitter.com/#!/hasegaw/status/157478710071660544
https://twitter.com/#!/moriwaka/status/157479098753617920
https://twitter.com/#!/moriwaka/status/157481789378666496
https://twitter.com/#!/enakai00/status/157602118570754048
https://twitter.com/#!/enakai00/status/157603168228880385
https://twitter.com/#!/enakai00/status/157605328589037568
No comment