使用python-libvirt启动一个空磁盘的虚拟机可以按照以下步骤进行:
import libvirt
import os
conn = libvirt.open()
xml = """
<domain type='kvm'>
<name>my_vm</name>
<memory unit='KiB'>1048576</memory>
<vcpu placement='static'>1</vcpu>
<os>
<type arch='x86_64' machine='pc-i440fx-2.9'>hvm</type>
<boot dev='hd'/>
</os>
<devices>
<disk type='file' device='disk'>
<driver name='qemu' type='qcow2'/>
<source file='/path/to/empty_disk.qcow2'/>
<target dev='vda' bus='virtio'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x04' function='0x0'/>
</disk>
<interface type='network'>
<mac address='52:54:00:00:00:01'/>
<source network='default'/>
<model type='virtio'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/>
</interface>
</devices>
</domain>
"""
在上述XML描述文件中,<name>
指定虚拟机的名称,<memory>
指定虚拟机的内存大小,<vcpu>
指定虚拟机的CPU核心数,<source file>
指定虚拟机的磁盘镜像文件路径,<mac address>
指定虚拟机的网卡MAC地址,<source network>
指定虚拟机的网络连接。
conn.createXML(xml, 0)
其中,createXML()
方法用于创建虚拟机,第一个参数为XML描述文件,第二个参数为创建虚拟机的标志,0表示立即启动虚拟机。
完整的示例代码如下:
import libvirt
import os
conn = libvirt.open()
xml = """
<domain type='kvm'>
<name>my_vm</name>
<memory unit='KiB'>1048576</memory>
<vcpu placement='static'>1</vcpu>
<os>
<type arch='x86_64' machine='pc-i440fx-2.9'>hvm</type>
<boot dev='hd'/>
</os>
<devices>
<disk type='file' device='disk'>
<driver name='qemu' type='qcow2'/>
<source file='/path/to/empty_disk.qcow2'/>
<target dev='vda' bus='virtio'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x04' function='0x0'/>
</disk>
<interface type='network'>
<mac address='52:54:00:00:00:01'/>
<source network='default'/>
<model type='virtio'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/>
</interface>
</devices>
</domain>
"""
conn.createXML(xml, 0)
注意:上述代码中的/path/to/empty_disk.qcow2
需要替换为实际的空磁盘镜像文件路径。
推荐的腾讯云相关产品:腾讯云虚拟机(云服务器)产品,详情请参考腾讯云虚拟机产品介绍。
领取专属 10元无门槛券
手把手带您无忧上云