In-place upgrading an Hyper-v host from Windows Server 2012 to Windows Server 2012 R2

With the overwhelming R2 release on October 18th I had to prepare my lab for several sessions I had to deliver on R2. One of the first tasks was to upgrade my hosts to Windows Server 2012 R2. Alas this upgrade was not as smooth as it should be, so to keep with “what hurts teaches”, this is the lesson I learned.

Warning. If possible, perform a clean installation. Windows Server 2012 R2 has been designed to be interoperable with Windows Server 2012, so the best approach is a swing or leap frog migration for both single hosts and clusters:

          Live migrate the hosted VMs to a different host

          Reinstall the host to Windows Server 2012 R2, perform a clean installation

          Reconfigure the host with the proper settings, especially regarding the logical switches

          Live Migrate back the VMs and proceed with the next host

In the case this is not possible, as it was for my lab be prepared to do some dirty work. The major issue I faced after upgrade is the networking layer completely messed up. This manifest in network teaming misconfiguration, logical switch configuration gone and worst of all ghost entries for vNIC at the host layer. In many cases these vNICs are marked as network cable unplugged. What’s worst they cannot be deleted from the UI, nor their configuration changed.

So these are the steps I found to successfully in-place upgrade a Windows Server 2012 Hyper-v host to Windows Server 2012 R2:

1)      Shutdown all the VMs

2)      Remove the VMM agent if present

3)      Check if the hardware vendor has released any specific firmware or BIOS for Windows Server 2012 R2 and in this case apply the bits

4)      inplace upgrade to Windows Server 2012 R2

5)      Check if the hardware vendor has released any specific driver for Windows Server 2012 R2 and in this case install the drivers

6)      Check or any vNIC at the host level, if they are ok you can proceed to step 8)

7)      If the vNic aren’t ok you should remove the virtual switch protocol and add it again:

a.       netcfg –u vms_pp

b.      netcfg –c p –i vms_pp

c.       reboot

8)      If the host was managed by VMM add it back

9)      Reconfigure the NIC teaming (if it was present) and the logical switches. If the host is managed by VMM do not configure in the same step the management vNIC (i.e. the vNIC used to manage the host) and the other logical switches, there are chances the communication is lost between the VMM agent and the VMM server and the logical switch configuration aborted

10)   Eventually restart your VMs


– Daniele

This posting is provided “AS IS” with no warranties, and confers no rights.

  1. Leave a comment

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: