These instructions are a subset of instruction found here: http://blogs.vmware.com/vmtn/2009/06/vsphere-virtual-machine-upgrade-process.html
The above instructions are for Windows server upgrade. These have been modified for Linux vm hosts.
Upgrading a VMware Infrastructure 3.x environment to VMware vSphere 4 involves more than just upgrading vCenter Server and upgrading your ESX/ESXi hosts (as if that wasn’t enough). You should also plan on upgrading your virtual machines. VMware vSphere introduces a new hardware version (version 7), and vSphere also introduces a new paravirtualized network driver (VMXNET3) as well as a new paravirtualized SCSI driver (PVSCSI). To take advantage of these new drivers as well as other new features, you’ll need to upgrade your virtual machines. If you are running a mixed environment of ESX 3.5 and ESX 4.0 be careful upgrading the hardware version of your virtual machines. Hardware version 7 virtual machines will NOT run on ESX 3.5 hosts!!! In addition, VMOTION is not supported for paravirt (VMI) or enhanced networking (VMXNET3) devices so take that into consideration before using those devices.
For those upgrading VMware tools in a Linux environment(Especially Oracle NFS shops!!!). Make sure to backup your /etc/fstab file before applying the upgrade. Went to upgrade vmware tools while I was upgrading the hardware versions to 7 in our dev/test environments and wiped out all of the nfs mount paths for our Oracle DB servers. Each VM had like 8 mount path’s too! It’s a good thing we started with vSphere in dev/test and didn’t jump the gun
- Backup VirtualCenter Server database just to be safe.
- Perform an upgrade from VirtualCenter Server 2.5 to vCenter Server 4.0
- Download latest ESX 4.x update .iso from VMware. You will need your license account to login
- Login to vSphere client and enable the Upgrade Manager
- Browse to the Upgrade Manager tab
- Click on Admin View -> Download the patches from VMware through Upgrade Manager
- Exit Admin view
- Click on “Attach …” and create a baseline with the .iso you downloaded. Finish the install instructions.
- Create a Baseline group
- Select “Scan …” NOTE: Non-compliant means the ESX host or virtual machine is unpatched or out of date
- Make sure the host is in maintenance mode and there are no running virtual machines on it
- Select “Remediate …”
- Choose to update to upgrade to 4.0
- Upgrade VMware Tools in the guest operating system. You can do this by right-clicking on the virtual machine and selecting Guest > Install/Upgrade VMware Tools. When prompted, choose to perform an automatic tools upgrade. When the VMware Tools upgrade is complete, the virtual machine will reboot.
- After the guest operating system reboots and is back up again, shutdown the guest operating system. You can do this by right-clicking on the virtual machine and selecting Power > Shutdown Guest.
- Upgrade the virtual machine hardware by right-clicking the virtual machine and selecting Upgrade Virtual Hardware.
- Click OK to commit the changes you’ve made to the virtual machine.
- Power on the virtual machine. When the guest operating system is fully booted up, log in.
If you perform these steps on a template, then you can be assured that all future virtual machines cloned from this template also have the latest paravirtualized drivers installed for maximum performance. UPDATE: Per this VMware KB article, VMware doesn’t support using the PVSCSI adapter for boot devices. That is not to say that it doesn’t work (it does work), but that it is not supported. Thanks to Eddy for pointing that out in the comments!