3 ms·
How? KVM and Xen are kernel level. QEMU uses KVM but also has a software virtualization capability. Libvirt is an API abstraction over it all. virt-manager is a
by gabereiser 3y ago
How? KVM and Xen are kernel level. QEMU uses KVM but also has a software virtualization capability. Libvirt is an API abstraction over it all. virt-manager is a gui app to manage libvirt machines. Proxmox as well. Proxmox VE talks to VMHost via libvirt.
- bonzini 3y agoLibvirt does not use KVM. Libvirt uses either QEMU (which in turn might or might not use KVM) or Xen or other hypervisors. So it's incorrect to say that Libvirt abstracts over KVM. And virt-manager indeed manages Libvirt machines so it's not at the level of QEMU as you wrote in the parent comment: > Proxmox is a virtual machine manager (like QEMU, virt-manager)
- gabereiser 3y agoSemantics, libvirt abstracts over KVM via QEMU because QEMU/KVM/HVT is all one driver.
- bonzini 3y agoKVM is not enough to create a virtual machine. KVM only virtualizes the processor, not a whole machine.
- reactordev 3y ago>Using KVM, one can run multiple virtual machines running unmodified Linux or Windows images. Each virtual machine has private virtualized hardware: a network card, disk, graphics adapter, etc. Straight from their site. QEMU is the user space interface, KVM the kernel space driver. It’s enough to run whatever OS. That’s the point. For libvirt: https://libvirt.org/drivers.html https://libvirt.org/drivers.html They support a bunch as well.
- bonzini 3y agoExactly, it's QEMU that abstracts over the processor virtualization APIs of KVM, Microsoft WHPX, Apple Hypervisor.framework etc. Not Libvirt.
- cthalupa 3y agoI don't want to necessarily make this an argument to/from authority, but for some context here - you are discussing this with Paolo Bonzini, maintainer of KVM, contributor to QEMU. In the list of people that best understand the difference and demarcation points between KVM and QEMU, he's pretty far up there.