I have split this guide into three parts. Part one deals with installing KVM/Libvirt.
Part two installs VNC to connect to your remote host to use Virtual Machine Manager (VMM), Useful if you are accessing the hypervisor via a Windows or Mac computer, Linux has a installable version of VMM, making this step optional or you can manage KVM/libvirt using the CLI tool virsh. Part three deals with installing Vagrant, again this is a optional step as you can just spin up virtual devices and connect them together.
Vagrant is used to spin up a virtual environment using KVM in this instance as a Hypervisor. it can be very useful as you can build a lab that is the same as your prod network or a reproducible lab used for your studies that can easily be destroyed and rebuilt in minutes.
This guide is based on a clean install of CentOS 7.3
Your machine must have a processor that can support environment.
Step 1 KVM/Libvirt CentOS packages to install
Update all packages
yum update -y
Install KVM/Libvirt packages
yum install -y qemu-kvm qemu-img libvirt virt-install libvirt-python libguestfs libguestfs-tools virt-manager
Start KVM/Libvirt and set to start on boot
systemctl enable libvirtd && systemctl start libvirtd
Check status of libvirtd - should show as active (running)
systemctl status libvirtd
Step 2 Create a bridge interface
A bridge interface is required for allowing VMs to access network that the hypervisor is connected to.
Find your machines physical by running the command
Create your bridge interface file
Add physical interface to bridge
Restart the network service
systemctl restart network
Verify br0 has the static IP address you have set
Step 3 Optional useful utilities
Some useful packages to install
yum install wget net-tools nano ntp
systemctl enable ntpd && systemctl start ntpd