4 Introduction to KVM virtualization #
4.1 Basic components #
KVM is a full virtualization solution for hardware architectures that support hardware virtualization (refer to Section 7.1, “Architecture support” for more details on supported architectures).
VM Guests (virtual machines), virtual storage and virtual networks can
be managed with QEMU tools directly or with the libvirt
-based stack.
The QEMU tools include qemu-system-ARCH
, the QEMU
monitor, qemu-img
, and qemu-ndb
. A
libvirt
-based stack includes libvirt
itself, along with
libvirt
-based applications such as virsh
,
virt-manager
, virt-install
, and
virt-viewer
.
4.2 KVM virtualization architecture #
This full virtualization solution consists of two main components:
A set of kernel modules (
kvm.ko
,kvm-intel.ko
, andkvm-amd.ko
) that provides the core virtualization infrastructure and processor-specific drivers.A user space program (
qemu-system-ARCH
) that provides emulation for virtual devices and control mechanisms to manage VM Guests (virtual machines).
The term KVM more properly refers to the kernel level virtualization functionality, but is in practice more commonly used to refer to the user space component.