virshコマンドで仮想マシンの起動を行う際にはXML形式の仮想マシン定義ファイルが必要です。しかしVirtual Machine Managerで生成した仮想マシン定義ファイルはXML形式のものではなく従来のPython形式のものです。
XML形式の仮想マシン定義ファイルを簡単に作る方法は、仮想マシンが起動している状態でvirsh dumpxmlコマンドを実行してXML形式の仮想マシン定義ファイルのダンプを行います。
# virsh dumpxml rhel5 > /etc/xen/rhel5.xml
上記コマンドの出力結果はファイル1のようになります。
ファイル1:XML形式の仮想マシン定義ファイル
<domain type='xen' id='1'>
<name>rhel5</name>
<uuid>1e060d25e3d79f8d0d4dcbf96f69ea8e</uuid>
<os>
<type>hvm</type>
<loader>/usr/lib/xen/boot/hvmloader</loader>
<boot dev='hd'/>
</os>
<memory>1048576</memory>
<vcpu>1</vcpu>
<on_poweroff>destroy</on_poweroff>
<on_reboot>restart</on_reboot>
<on_crash>restart</on_crash>
<features>
<acpi/>
<apic/>
<pae/>
</features>
<devices>
<emulator>/usr/lib64/xen/bin/qemu-dm</emulator>
<interface type='bridge'>
<source bridge='xenbr0'/>
<mac address='00:16:3e:5a:57:32'/>
<script path='vif-bridge'/>
</interface>
<disk type='block' device='disk'>
<driver name='phy'/>
<source dev='/dev/VolGroup01/rhel5-hda'/>
<target dev='hda'/>
</disk>
<graphics type='vnc' port='5901'/>
<console tty='/dev/pts/1'/>
</devices>
</domain>
このコマンドでは仮想マシンの現在の状態をそのままダンプしてしまうので、一部編集する必要があります。具体的には仮想マシンのID、VNCのディスプレイ番号、仮想コンソールの番号を消去します(ファイル2)。
ファイル2:XML形式の仮想マシン定義ファイル(修正後)
<domain type='xen'>
<name>rhel5</name>
<uuid>1e060d25e3d79f8d0d4dcbf96f69ea8e</uuid>
<os>
<type>hvm</type>
<loader>/usr/lib/xen/boot/hvmloader</loader>
<boot dev='hd'/>
</os>
<memory>1048576</memory>
<vcpu>1</vcpu>
<on_poweroff>destroy</on_poweroff>
<on_reboot>restart</on_reboot>
<on_crash>restart</on_crash>
<features>
<acpi/>
<apic/>
<pae/>
</features>
<devices>
<emulator>/usr/lib64/xen/bin/qemu-dm</emulator>
<interface type='bridge'>
<source bridge='xenbr0'/>
<mac address='00:16:3e:5a:57:32'/>
<script path='vif-bridge'/>
</interface>
<disk type='block' device='disk'>
<driver name='phy'/>
<source dev='/dev/VolGroup01/rhel5-hda'/>
<target dev='hda'/>
</disk>
<graphics type='vnc'/>
</devices>
</domain>
このような変換作業を行うことによりvirsh createコマンドで起動することが可能になります。
# virsh create /etc/xen/rhel5.xml
|