Installation guide

Dell Inc.
KVM Virtualization in RHEL 6 Made Easy
4
1. Introduction
1.1 Purpose of this document
This document describes how to quickly setup and manage a virtualized environment with KVM (Kernel-
based Virtual Machine) in Red Hat Enterprise Linux 6 on a Dell PowerEdge server. This is not an in-
depth discussion of virtualization or KVM, but rather an easy-to-follow step-by-step description of how
to install and manage Virtual Machines (VMs) on a physical server.
Perhaps the biggest advantage of virtualization is cost savings. Even with the simplest deployment you
will save hardware ($$) and management (time) costs. For example in my lab I used to have 3 separate
physical servers that ran all my services and apps, now I have only one physical server with 4 VMs and
plenty or resources (CPUs, memory & disk space) to spare. In this article I share the exact same steps I
followed to install and manage the virtual environment in my lab.
Note #1: I don‟t use any Windows VMs in my lab, so I will only cover Linux VMs. The steps for installing
Windows VMs are basically the same, with some additional configuration steps that I will cover in detail
in a future article.
Note #2: I don‟t use GUIs much, so I will only cover using a shell terminal. Come on folks this is Linux,
GUIs are for Windows users
1.2 A very brief overview of KVM
A line or two about KVM and then we‟ll move on to the fun stuff. KVM is a Linux kernel module that
allows a user space program access to the hardware virtualization features of Intel and AMD processors.
With the KVM kernel module, VMs run as ordinary user-space processes.
KVM uses QEMU for I/O hardware emulation. QEMU is a user-space emulator that can emulate a variety
of guest processors on host processors with decent performance. Using the KVM kernel module allows it
to approach native speeds.
KVM is managed via the libvirt API and tools. Some libvirt tools used in this article include virsh, virt-
install and virt-clone.
1.3 Terms & Conventions
Let‟s agree on the terms & conventions I use here:
Host - The hypervisor or physical server where all VMs are installed.
VMs (Virtual Machines) - Virtual servers that are installed on top of a physical server. Some online
documents refer to virtual machines as „domains‟ or „guests‟.
Text in Courier New font preceded by # are commands you type on a shell terminal.
Text in Courier New font is command output or file contents.