VMware – The leading industry Virtualization Provider. It comes in two flavors VMWare ESX and VMWare Server (formerly GSX). The former comes at a cost and the latter FREE!
In a low cost setup Vmware server (Free version) is the best recommended solution. Although I must mention that the ESX server provides additional much wanted enterprise features such as support for Network attached SAN, iscsi, clustering and resource pooling.
VMWare is supported on many OSes, Windows, Redhat, CentOS, Ubuntu and more.
In this setup I recommend using CentOS as the base operating system as it is built from the stable Redhat Enterprise Linux source and is free!
Below are steps that should be followed to prepare for VMWare installation.
1. Prepare mirrored hardware RAID if available.
2. Partition the system as follows during OS installation:
– Boot (ext3,primary) = 100 mb
– LVM (LVM,primary) = All remaining space
– LVM name = RAID1
– SWAP = 2G (or 2 x RAM)
– TMP (/TMP) ext3 = 1G
– VAR_LOG (/var/log) ext3 = 2G
– ROOT (/) ext3 = 5G
– VAR_LIB_VMWARE (/var/lib/vmware) ext3 = 100G+
– Leave Free space or allocate all to VAR_LIB_VMWARE
In this setup there are two logical partitions Boot and LVM. Inside LVM contains additional logical partitions with the key note that VAR_LIB_VMWARE is where all the guest OS images reside. This mount point should be in it’s own partition in order to prevent allocating too much space affecting the host OS.
A LVM is a Logical Volume Manager. In current releases of Linux, LVM is installed by default for partitioning. LVM allows an administrator to dynamically resize partitions much like partition magic for windows. Conventional Linux partitions suffer from the inability to resize easily. Using Fdisk often requires the system to be booted in rescue mode and risk loss of data. By using LVM, logical volumes are now grouped into a single resource pool. In this pool is a collection of logical extents, these extents are fixed in size and are usually several megabytes. This pool of extents are then allocated to each logical volume to form a partition. When more space is needed, additional free logical extents can be added to those volumes live.