(CentOS)KVMゲストOSイメージのクローン作成

KVM徹底入門の付録virshリファレンスには、"virsh vol-clone"コマンドが記載されていたが、CentOS 5.5のvirshでは"vol-clone"オプションは存在しなかった。
代わりに"virt-clone"コマンドを使用して、クローンを作成した。


(使い方)

$ sudo virt-clone -o <クローン元VM名> -n <クローン先VM名> -f <クローンイメージファイル名>


"dev-cent01"というVMを元に、"dev-cent02"というVMを作成した。

$ sudo virsh list --all
 Id 名前               状態
----------------------------------
  - dev-cent01           シャットオフ
$ sudo virt-clone -o dev-cent01 -n dev-cent02 -f /var/lib/libvirt/images/dev-cent02.img
Cloning /var/lib/libvirt/images/dev-cent01.img                  |  20 GB     02:03     

Clone 'dev-cent02' created successfully.

"/etc/libvirt/qemu"以下に、クローンしたVMの設定ファイル(XML)が作成されている。
UUIDとかMACアドレスとか、クローン元と重複しないように設定ファイルが作成されるので、ドメインを定義する。

$ sudo diff /etc/libvirt/qemu/dev-cent01.xml /etc/libvirt/qemu/dev-cent02.xml
2,3c2,3
<   <name>dev-cent01</name>
<   <uuid>dd8ae813-5ae2-9248-d22a-8073af072aab</uuid>
---
>   <name>dev-cent02</name>
>   <uuid>1880e53f-5ba2-aa9d-8f13-a80ca7a9473e</uuid>
24c24
<       <source file='/var/lib/libvirt/images/dev-cent01.img'/>
---
>       <source file='/var/lib/libvirt/images/dev-cent02.img'/>
32c32
<       <mac address='54:52:00:3a:26:b0'/>
---
>       <mac address='54:52:00:5c:b9:b8'/>
$ sudo virsh define /etc/libvirt/qemu/dev-cent02.xml
ドメイン dev-cent02 が /etc/libvirt/qemu/dev-cent02.xml から定義されました
$ sudo virsh list --all
 Id 名前               状態
----------------------------------
  - dev-cent01           シャットオフ
  - dev-cent02           シャットオフ

あとは、"virsh start"コマンドで起動するだけ。

$ sudo virsh start dev-cent01
ドメイン dev-cent01 が起動されました
$ sudo virsh start dev-cent02
ドメイン dev-cent02 が起動されました