qemu、kvm、libvirt之间的区别
qemu、kvm、libvirt之间的区别
- qemu : 虚拟机仿真器。通过软件模拟出 cpu、内存、磁盘、主板、网卡等设备。
- kvm : 高性能的 cpu 仿真器。由于软件模拟的 cpu 性能很差,因此出现了 kvm ,这是通过硬件与内核的支持实现接近 native 性能的 cpu 仿真器,可以理解为虚拟机里的 cpu 任务直接交给物理机cpu完成。
- libvirt : 虚拟机管理平台。能纳管qemu、lxc、esx等虚拟化软件,通过编写 xml 实现对虚拟机、存储、网络等进行配置和管理。
上面只描述最核心的功能,另有一些高级功能,以及互相重叠的功能在这里不做描述,否则容易混淆
qemu 对外提供了一个socket接口,称为 qemu monitor ,通过该接口,可以对虚拟机实例的整个生命周期进行管理 , 通过该 socket 接口传递交互的协议是 qmp (qemu monitor protocol),这是基于 json 格式的协议