KVM is an open source virtualization solution in a kernel module. KVM can virtualize x86, PowerPC, and S390 guests.
It is possible to install just qemu and libvirt for local management
but most users will probably want to manage it via a GUI with virt-manager (remotely or not).
If you want to use other disk image formats than raw, you need qemu-img
Enable the KVM kernel module
Service start on boot
Set libvirtd and dbus to start on startup
by defaults kvm use bridge to nat vm, if you want network with the default configuration, you need to load the tun module
but if you prefer bridging kvm over your ethernet interface, you need to make a bridge
Groups and user
Add your user to the follwing groups so you can mange the vms
PolicyKit for Remote User
In order to use libvirtd to remotely control KVM over ssh PolicyKit needs a .pkla informing it that this is allowed. Write the following file to /etc/polkit-1/localauthority/50-local.d/50-libvirt-ssh-remote-access-policy.pkla