Manually Preparing a CentOS Server with KVM Virtualization
This tutorial describes how to manually prepare a CentOS physical server with KVM virtualization, and other auxiliary packages.
Installing Package Dependencies Individually
To use virtualization on CentOS you require the qemu-kvm and qemu-img packages at minimum. These packages provide the user-level KVM emulator and disk image manager on the CentOS system.
Install the qemu-kvm and qemu-img packages on your CentOS server:
Following additional virtualization packages are recommended.
Provides the virt-install command for creating virtual machines.
The libvirt package provides the server and host side libraries for interacting with hypervisors and host systems. The libvirt package provides the libvirtd daemon that handles the library calls, manages virtual machines and controls the hypervisor.
The libvirt-python package contains a module that permits applications written in the Python programming language to use the interface supplied by the libvirt API.
virt-manager, also known as Virtual Machine Manager, provides a graphical tool for administering virtual machines. It uses libvirt-client library as the management API.
The libvirt-client package provides the client-side APIs and libraries for accessing libvirt servers. Thelibvirt-client package includes the virsh command line tool to manage and control virtual machines and hypervisors from the command line or a special virtualization shell.
Install all of these recommended virtualization packages:
Installing Package Dependencies as a Group
The virtualization packages can also be installed from package groups. The follow table describes the virtualization package groups and what they provide.
|Package Group||Description||Mandatory Packages||Optional Packages|
|Virtualization||Provides an environment for hosting virtual machines||qemu-kvm||qemu-guest-agent, qemu-kvm-tools|
|Virtualization Client||Clients for installing and managing virtualization instances||python-virtinst, virt-manager, virt-viewer||virt-top|
|Virtualization Platform||Provides an interface for accessing and controlling virtual machines and containers||libvirt, libvirt-client, virt-who, virt-what||fence-virtd-libvirt, fence-virtd-multicast, fence-virtd-serial, libvirt-cim, libvirt-java, libvirt-qmf, libvirt-snmp, perl-Sys-Virt|
|Virtualization Tools||Tools for offline virtual image management|
To install a package group, run the yum groupinstall