This article details the steps which I performed to migrate (storage vMotion) a bunch of VMs running Windows Server 2003 Enterprise/Standard (32-bit) from a standalone ESX 3.5.0 host to and ESXi 4.1.0 cluster. With respect to OSes, I’m primarily a Linux Admin and since I encountered a few hiccups which would not have occurred on Linux systems (for the same exercise), I decided to blog this stuff.

STEP 1: Get the VM ready to leave ESX 3.5.0

Shutdown the Windows Server 2003 OS on the VM hosted on the standalone ESX 3.5.0 host.

STEP 2: Move the VM off the ESX 3.5.0 host

Migrate the VM (host and datastore) to an ESXi 4.1.0 cluster host which has access to the same networks as the ESX 3.5.0 host. This step could take a while depending on your environment.

NOTE: All the remaining steps are performed on the ESXi 4.1.0 cluster host.

STEP 3: Upgrade the VM’s VMware Tools

Edit Settings and select the appropriate network for the NIC.

Power on the VM

Upgrade VMware Tools (because your VM is now on a higher version hypervisor). You may do this by either clicking the VMware Tools icon in the system tray or by using the vSphere client to mount the VMware Tools CD and install.

STEP 4: Some tweaks to avoid issues

With the newer version of VMware Tools, you’ll be able to use the vmxnet3 NIC driver. However, switching drivers requires removing/adding a NIC and this causes IP address clashes in Windows Server 2003 (the IP address is still associated with the old adapter, although not visible in “Network Connections”). Refer this Microsoft KB article. So, to avoid this issue, I did the following:

Execute the command “ipconfig /all” at the MSDOS prompt and collect/store all the network configuration for later reference.

Open the Network Connection settings, click on TCP/IP Properties and select the options “Obtain an IP address automatically” and “Obtain DNS server address automatically”. Basically, remove the static IP and switch to dynamic IP and DNS. This action clears any configuration associated with the static IP address from the Windows system.

Shutdown (not restart!) the OS.

STEP 5: Upgrade the VM’s Virtual Hardware

Right-click the powered down VM and select the option to upgrade the virtual hardware. This action will upgrade your virtual hardware from version 4 to version 7.

Edit settings for the VM and do the following:

Remove the existing NIC (which was configured when the VM was on ESX 3.5.0).

Add a new NIC and select the VMXNET 3 driver as well as the appropriate network.

Power on the VM. As soon as the VM powers on, you will be prompted to restart the OS for the new hardware to work properly. Click “Yes” to reboot.

STEP 6: Configure the VM’s Network Connection

When the VM powers up after the previous step, open the Network Connection settings and using the settings stored earlier (STEP 4), configure the vmxnet 3 adapter.

STEP 7: Test the VM after migration

NOTE:

A storage vMotion had to be performed since the standalone ESX 3.5.0 and the cluster ESXi 4.1.0 hosts did not share storage. Although this migration can be done in 2 steps without downtime (first change host and then change datastore or vice versa), downtime is required for upgrading VMware Tools and the Virtual Hardware.

The standalone ESX 3.5.0 host and the ESXi 4.1.0 cluster hosts did not have access to the same dedicated vMotion network. However, since all the hosts were on the same Management network, this network was used for the migrations (competing with other management traffic) and thus this exercise took a long time.