Completing the Rolling Cluster Upgrade – How to Deploy Windows Server 2016 (Part 3)

by

Ch.1 — Plain OS installation
Ch.2 — Rolling Cluster Upgrades
Ch.3 — Completing the Rolling Cluster Upgrade

In the previous posts of this multi-post blog series, I highlighted the basic installation of Windows Server 2016 as well as a brand new, slightly more advanced approach to upgrade your Hyper-V Cluster to the latest iteration of Windows Server 2016. Windows Server 2016 is set to become generally available (GA) at some point this year. Over the course of the last few months, Microsoft has been releasing Technical Preview versions of Windows Server 2016 with the current TP being version 5 (TP5). If you have not begun testing Windows Server 2016, my question is what are you waiting for? This blog post series arms you with all the tools needed to get up and running on Windows Server 2016 in an extremely easy fashion.

NOTE: Technical preview versions of software packages are provided before the final release of a product so IT pros can learn and test new features and functionality and provide development teams with active feedback. In addition, companies, such as Microsoft in this case, are able to gather insight into additional use cases that might not have been considered earlier.

This blog post will wrap up the series and focus on completing the Rolling Cluster OS Upgrade process from the previous post by adding in the necessary details required to:

  • Upgrade the Cluster Functional Level
  • Upgrade the VM Hardware Version

Let's go for it!

Before we jump into upgrading our Cluster Functional Level and VM Hardware Versions, let's quickly recap. Version 8 of a Windows Server Cluster indicates that features and functionality of Windows Server 2012 R2 are in place, whereas a Version 9 Cluster Functional Level represents Windows Server 2016. Utilize the Get-Cluster | select ClusterFunctionalLevel PowerShell to obtain the level of YOUR cluster.

Get-Cluster | select ClusterFunctionalLevel

The Get-VM PowerShell command, when run directly on the Hyper-V hosts, returns the necessary information which indicates the Hardware Version our VMs are currently set at.

Get-VM

Get-VM

Now we're ready to upgrade the Cluster Functional Level of our 5 Node Hyper-V Cluster since all of the hosts have been “upgraded” to Server 2016 TP5. The upgrade procedure as outlined in the second post of our series is comprised of a multi-step process. To begin the upgrade of the Cluster Functional Level, execute the PowerShell command. As an option, the -Force parameter will bypass the confirmation prompt and execute the command immediately.

Get-Cluster -Name localdemo.demo.local | Update-ClusterFunctionalLevel

Update Cluster functional level

The screen capture above illustrates the prompt and recognition that this process is not reversible, however, it is quite a simple procedure. At this point, an administrator still needs to upgrade the hardware versions of the VMs that will be running on these Hyper-V Hosts. Some of the new features are only available to VMs running VM Hardware version 7.1 (Latest hardware version for TP5). For example, RCT (Resilient Change Tracking) is a new feature of Hyper-V 2016 that provides native change block tracking for backup software vendors to take advantage of. Only once the VM Hardware Version is 7.1 will this feature become available.

Hyper-V VM hardware versions can be upgraded by first backing up the VM and Application, turning off the virtual machines, and then executing the Update-VMVersion PowerShell cmdlet. This PowerShell command will subsequently update the virtual machine version, and enable new Hyper-V features. This PowerShell command can be run from the Hyper-V node that is hosting the VM or executed remotely via PowerShell with the use of the  –ComputerName parameter. As we can see in the screenshot below, upgrading the VM Hardware Version is an irreversible process that DOES require the VM to be powered off. Again the optional -Force parameter will bypass the confirmation prompt and execute the command immediately.

Update-VMVersion -ComputerName VMName

Update Hyper-V VM version
Update Hyper-V VM version

The resulting output provides confirmation that the VM Hardware Version has been upgraded. The entire process of upgrading the VM Hardware Version takes just a few seconds to complete, however, note this does require the VMs to be powered off before execution.

Getting your environment upgraded to Windows Server 2016 can be a pain-free process if the correct steps to reduce risk in the environment are followed. If you've not had the chance to begin testing Server 2016 in your environment, there's no better time than now! What testing have you done? Is Nano Server an area of interest? What about Windows Server Containers? Let me know what Windows Server and Hyper-V 2016 topics you’re interested in reading about.

Get 30 days trial of Veeam Backup & Replication now

About the author
VeeamVeeam Logo
Clint Wyckoff is a Product Strategy Evangelist at Veeam focused on all things Microsoft. He is an avid technologist and virtualization fanatic with over a decade of Enterprise Data Center Architecture experience. Clint is an energetic and engaging speaker that places a large emphasis on solving real-world IT challenges. Additionally, he has been awarded VMware vExpert designation for 2015 and is also a VMCE and MCP. Follow Clint on Twitter @ClintWyckoff or @Veeam.