When was the last time you popped the hood on your virtual machine and had a look at your virtual machine hardware? If you haven’t in 3 years or so, a tune up is far overdue. The past three consulting jobs that I’ve taken on have been just that, upgrading all of the virtual hardware. Upgrading to hardware version 7, moving the VMware E1000 ethernet adapters to the new VMware VMXNET3 adapters, and installing the VMware Paravirtual SCSI adapter can all be done in a short amount of time. Since I’ve been doing these upgrades for the past 2 months or so, I thought I would share my step-by-step instructions with you in order to make life easier for the even the most inexperienced VMware administrator.
How to Upgrade Your VM Hardware Step-by-step
Obviously the first thing you want to do is log into your vCenter via the vSphere client. From here you can navigate to the VM that you are upgrading, right-click on it and “open console”. If you are running dual monitors I find it easier to just RDP into the VM and put it on one of my screens, sometimes the console window is a bit choppy and small. As soon as you have your display up, complete the following steps:
- 1. From the command line, run ipconfig /all > c:ipinfo.txt. Also run netsh interface ip dump > c:ipconfig.txt This will dump the IP info of your interfaces into a text file that you can use to rebuild the info.
2. Create a snapshot of the guest os. PLEASE do this, if somehow it all goes south, you’ll want to revert to a clean snapshot and start over.
3. 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.
4. 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. Wait until shutdown is complete then go to step 5.
5. Upgrade the virtual machine hardware by right-clicking the virtual machine and selecting Upgrade Virtual Hardware.
6. Right click on the virtual machine and select Edit Settings. Add a new network adapter of the type VMXNET3 and attach it to the same network as the first network adapter. (Repeat for multiple adapters in order).
7. Remove the original network adapter (make sure you’ve done your documentation of the IP information for the adapters!)
8. Add a new virtual hard disk to the virtual machine. Be sure to attach it to SCSI node 1:0; this will add a second SCSI adapter to the virtual machine. The size of the virtual hard disk doesn’t matter. You should change it from the default 8 GB to 8 MB to reduce the chance of causing space issues on the SAN.
9. Change the type of the newly added second SCSI adapter to VMware Paravirtual.
10. Click OK to commit the changes you’ve made to the virtual machine, power the virtual machine on and log in to its console. The system should detect hardware changes and install drivers. It should ask you to reboot when it completes installing the drivers. Reboot the system
11. When the guest operating system is fully booted, log in and recreate the network configuration(s) you recorded for the guest. The easiest way to do this is to rename the interfaces to what they were before (see the files you created in Step 2 for this information). Once you’ve renamed them, type netsh –c interface –f c:ipconfig.txt.
12. Right click on the virtual machine and select Edit Settings. Remove the hard disk was added earlier. The second SCSI controller will disappear when the drive is removed. Change the remaining SCSI controller to VMware Paravirtual.
13. Power on the virtual machine. When the guest operating system is fully booted up, log in. Right click My Computer, go to Properties and select Environmental Variables. Click on new under system environment variables and create a variable DEVMGR_SHOW_NONPRESENT_DEVICES and set the value to 1. This will allow you to see hidden devices in device manager so that you can clean up all of the old hardware you just upgraded from (not sure this step is totally necessary, I just like to clean everything up).
14. Launch Device Manager and from the View menu select Show Hidden Devices. Remove the devices for the old disk drives, the old storage volumes, the old network adapters and old SCSI adapters. Close Device Manager .
15. Ensure network connectivity
- a. Ping to at least the default gateway for all interfaces (if they have a default gateway)
b. Do a nslookup on the server to ensure that there is an A record and PTR record.
i. From the command line: type nslookup and hit return
ii. Type in the server name and ensure that it gives you the address you expect.
iii. Type set type=ptr and hit return
iv. Type in the ip address(es) of the server and insure that it returns the address expected.
That about covers it. Depending on what your systems are like, you may have to do a few extra housecleaning steps, but this should give you the bulk of what you need to complete a VM Tools and hardware upgrade. If I’ve missed anything, please leave a comment and let me know, I’m open to criticism.
For more info on the newest VMware virtual machine hardware you can click on the links below: