virt-cloneでVMのクローンを作ったときのメモ
Date 2011-10-23 0:05:04 | Topic: Linux (Sientific)
| 私の構成は LVMを2つ使用し、root用とSwap用としている。xmlのvncの設定は固定portにしている。IPアドレスは固定。kvmで作られるvirbr0はVM側では使っていない。でクローンの作成は(クローンされたVMで使うLVMは事前に作っておく) # virt-clone -o 元になるVMの名前 -n クローンされたVMの名前 -f イメージファイル又はLVMのpath -f 2つ目のLVMのpath ここで、-fのオプションが2つあるのは、LVMでroot用とswap用がある為(もちろんオリジナル側も同じ) 但し、訂正が必要 1:eth0がudevでeth1リネームされ、eth0がないのでエラーになる(起動画面で青いバーが長くなるときにAlt+dで詳細が表示される。この時eth0が無いのでイニシャライズを遅らせるとの表示が出る) 2:IPアドレスが同じになっている 3:ホストの名前が同じになっている。 4:/etc/libvirt/qemuに出来るホストの設定ファイル(VM名.xml)のvncの設定を変更する必要がある。(私はvncポートを固定で使っている) 対処 1:/etc/udev/rules.d/70-persistent-net.rulesの中のeth0の記述がある部分の行をコメントアウト(オリジナルのVMが2つ持っていればeth1も)。eth1の記述をeth0に変更する(2つなら2、3を0、1に)。 2:/etc/sysconfig/network-scripts/eth0のIPADDRをユニークな固定IPに変更する。この時MACアドレスがあればコメントアウトしておく。(/etc/livbirt/qemuにある設定ファイルで設定しておいくべき) 3:/etc/sysconfig/networkのHOSTNAMEをユニークな名前に変更する。 4:/etc/libvirt/qemuに出来るホストの設定ファイルの <graphics にあるport=をユニークなポートに、但し他のサービスとかぶらないように5900〜5909くらいが良い。/etc/servicesにあるポートとかぶらないようにする。又、iptablesが有効になっているときは設定したportを空ける事。 以上を設定し(xmlファイルを変更しているので)、新しいVMを停止し、 # service libvirt restart でlibvirtを再起動し、その後新しいクローンされたVMを起動する。 追記:centos 6.2のGUIから同じ事をしていた時、[Errno 28] デバイスに空き領域がありません。とエラーが出た。同じ事をvirt-cloneからすると Error cloning diskimage /dev/mapper/vgkvm-webroot to /dev/vgkvm/testboot1: [Errno 28] デバイスに空き領域がありません と出た。つまりwebroot(10GB)をtestboot1(100M)にコピーをしようとしてサイズが足りないと起こられた (この時はコピーされる側のLVMは3つ、/boot用(100M)、/用(10G)、swap用(2G))。つまり /etc/libvirt/qemuにある設定ファイル(xml)に書いてある順番通りに、クローンされる側のdisk(私はLVM)も指定しないとダメだって事。
|
|