Upgrading a Windows 2003 Guest VM to Windows 2008
June 13, 2011
Posted by on
A sensible approach to upgrading aging operating systems is to virtualize first and upgrade later. Upgrading an operating system is never a light undertaking under any circumstances. Doing so in a virtual environment gives you the comfort of a snapshot safety net, but adds its own challenges.
DO NOT PERFORM THIS PROCEDURE ON A DOMAIN CONTROLLER. A domain controller should never be snapshotted, especially in a multiple DC environment. If the domain controller has never done anything except function as a domain controller, it is highly likely that it will survive the upgrade process just fine, but it really isn’t worth the effort or risk. Instead of upgrading DCs, create a new VM with the new operating system you wish to use and promote it to be a DC in the existing forest. If your ultimate goal is eliminating the initial DC(s), you can move the Global Catalog and DNS functions and FSMO roles to the newly created DC(s), then decommission the original(s). In most cases this is a downtime-free process and is much safer than an in-place upgrade.
- Take a snapshot (checkpoint in SCVMM) of the VM.
- Perform any clean-up desired. Performance of the VM will be highly degraded after following the next step, so you’ll want to do as little as possible after finishing step 3.
- Go to Control Panel and open “Add/Remove Programs”. Remove “Hyper-V Integration Components”. If you do not, on the first reboot after upgrade, you will encounter a blue screen regarding the VMBus driver. Cancel any hardware detection dialog boxes and reboot. After logging in, cancel any further hardware detection dialogs.
- If your Windows 2003 environment is on SP2, the compatibility checker will stop the process and indicate that you need to uninstall PowerShell before you proceed, but you probably won’t have a line item for PowerShell so that you can uninstall it. Go to Control Panel and open Add/Remove Programs. Click the check box in the top right to “Show updates”. Remove “Windows Management Framework Core”. It will warn you about several applications that will no longer function properly; ignore this warning. Once uninstalled, do not reboot until the upgrade is complete. If you do, the .NET Framework will automatically repair itself and you’ll have to start this step over.
- Insert the Windows Server 2008 DVD and run the upgrade as normal. Because you removed the integration components, this will take a fair bit of time.
- Once the upgrade has completed and you boot into Server 2008 for the first time, you may be greeted with the following message: “Setup has detected that the .NET Framework version 4 needs to be repaired. Do not restart your computer until Setup is complete.” This will be fairly slow since integration components aren’t installed, but it is best to let it finish.
- Install the Integration Components from Hyper-V Manager or SCVMM. Even though you removed it in step 3, you will still get “A previous version of Hyper-V integration services has been detected. Click OK to upgrade or repair this installation.”.
- Don’t forget to remove the snapshot when you’re satisfied that the upgrade worked.