libvirt虚拟化开发简介

libvirt是一个虚拟化开发的工具库,提供了底层的kvm,xen,vmware esx等虚拟化的统一封装。可以通过libvirt提供的api对不同的底层实现进行同一的管理。除了原生的c api,还有c#, go, java, ocaml. perl, python, php, ruby的api,用户可自主选择自己熟悉的语言。 要使用libvirt首先要安装libvirtd,这是一个后台守护进程,负责管理虚拟机系统以及和客户端交互。libvirt还包含了virsh命令行工具,供用户通过shell手动管理。另外,还可以通过图形界面方式进行管理,该工具是virt-manager,如果您想要通过python的api进行开发,需要安装python3-libvirt或python-libvirt。在debian下,可通过下列指令安装这些包: apt-get install libvirt-daemon libvirt-daemon-system libvirt-clients python3-libvirt virt-manager 启动libvirtd: systemctl start libvirtd 接下来我们就可以通过virt-manager创建一个虚拟机。熟悉vmware或者virtualbox的同学,可以看到virt-manager和这些软件很类似,安装系统就不再介绍了。 系统安装完成之后,我们就可以通过virsh工具进行基本的操作了。运行virsh,回车,进入virsh的命令行,可通过help查看virsh支持的操作。 virsh # help Grouped commands: Domain Management (help keyword 'domain'): attach-device attach device from an XML file attach-disk attach disk device attach-interface attach network interface autostart autostart a domain blkdeviotune Set or query a block device I/O tuning parameters. blkiotune Get or set blkio parameters blockcommit…