How To Install CentOS 6.3 KVM on vSphere 5.1

In the course of building my lab for my Nicira NVP role, I needed to install various hypervisors, in particular Linux KVM so I could install and test the Nicira NVP setup.  Of course I did not want to do this on bare metal and I have no intention of trying to set up OpenStack or CloudStack just yet, I can make do with the hypervisors only.  I will do some other blog posts on the importance of the Cloud Management System to the Nicira NVP components.  For the purposes of this post I wanted to share the documentation I collected on just what is needed to get KVM on CentOS 6.3 up and running specifically for use with Nicira NVP.

Step 1 – Configure the Virtual Machine Shell

This was something I learned the hard way.  With vSphere 5.1 you cannot create a new VM in the Windows vSphere client and allow the virtualization features of the processor to be presented.  This check box option as best I can tell is only available in the new vSphere Web Client.  So you will want to use the web client to create the shell not the windows client.

You can see the Virtualization option below:

 You will also notice this option will only be available if you select Compatibility of ESXi 5.1 and later VM Version 9.  GO ahead and select CentOS (64-Bit) as the guest operating system for now.  Once you have set up your Virtual Machine shell with the memory and other options you want, you can start your OS install.  My basic shell set up:

  • 4 vCPU
  • 6GB RAM
  • 20GB Disk
  • 3 NIC’s (Management, NVP Transport, Storage)

Step 2 – Install CentOS with Virtualization Features

This is pretty easy.  Fire up the CentOS installer and selection “Virtual Host”.  You also want to customize the install and add in the “Virtualization Tools”.  Once the install is completed the real work can begin.  You can also do the “Minimal” install from the smaller ISO file, but then you will need to add all the virtualization group components which is also easy enough using the following command:

# yum groupinstall "Virtualization*"

Step 3 – Install Other Packages, Updates, and Tools

At this point you may want to add and configure a few things so you can clone this VM and be ready for further customization.  Below are some of the updates, packages, and edits you may want to do on this host.

# yum install dejavu-lgc-sans-fonts xorg-x11-xauth openssh-askpass make gcc kernel-headers
# yum update
# reboot

NOTE: – When you SSH use -X to enable X11 redirection to your client for running virt-manager, and you will need an X11 setup on your Mac (XQuartz), or Windows.

Copy the Open vSwitch files to the Host and install them:

# tar zxvf nvp-ovs-*.gzyum 
# install kmod-openvswitch-*.rpm  openvswitch-*.rpm

Personally in my lab I also disabled SELinux and IPTables as I was not sure what they would do to KVM.

Edit /etc/selinux/config and set SELINUX=disabled
# chkconfig iptables off
# chkconfig ip6tables of
# service iptables stop
# service ip6tables stop

Edit the udev rules:

vi /etc/udev/rules.d/70-persistent-net.rules 

delete the lines that begin with SUBSYSTEM=="net"

Edit the ethernet device files:

vi /etc/sysconfig/network-scripts/ifcfg-eth0
vi /etc/sysconfig/network-scripts/ifcfg-eth1
comment out the line that starts with HWADDR=

Once you have updated and rebooted follow the standard operating procedure to install VMware Tools on this Linux Virtual Machine, and at this point you can shutdown and clone the Virtual Machine to a Template and re-clone to a new Virtual Machine.

About Chris Colotti

Chris is active on the VMUG and event speaking circuit and is available for many events if you want to reach out and ask. Previously to this he spent close to a decade working for VMware as a Principal Architect. Previous to his nine plus years at VMware, Chris was a System Administrator that evolved his career into a data center architect. Chris spends a lot of time mentoring co-workers and friends on the benefits of personal growth and professional development. Chris is also amongst the first VMware Certified Design Experts (VCDX#37), and author of multiple white papers. In his spare time he helps his wife Julie run her promotional products as the accountant, book keeper, and IT Support. Chris also believes in both a healthy body and healthy mind, and has become heavily involved with fitness as a Diamond Team Beachbody Coach using P90X and other Beachbody Programs. Although Technology is his day job, Chris is passionate about fitness after losing 60 pounds himself in the last few years.

Leave a Reply

Your email address will not be published. Required fields are marked *