Microsoft has made a significant change when it comes to updating the VM configuration version. The VM configuration...
version is not upgraded automatically when you upgrade a Windows Server 2012 R2 Hyper-V host to a Windows Server 2016 Hyper-V host, or when you migrate VMs from Windows Server 2012 R2 to a Windows Server 2016 Hyper-V host. In the past, the VM configuration version would automatically be updated when you upgraded a Hyper-V host. The reason for not updating the VM configuration version automatically on a Windows Server 2016 Hyper-V host is to ensure organizations can move back VMs to earlier versions of Hyper-V hosts, if required, and run VMs in compatibility mode of earlier versions of Hyper-V.
Windows Server 2012 R2 supports VMs running with configuration version 5.0. However, Windows Server 2016 supports versions 5.0, 6.2, 7.0 and 7.1, allowing you to host different types of VM versions. It's important to understand VMs might not see new features if they are not upgraded to the required or latest VM configuration version. For example, new features of Windows Server 2016, such as Hot Add/Remove Memory, Secure Boot for Linux VMs, Production Checkpoints and PowerShell Direct features, are available only if a VM is upgraded to 6.2 or a higher version.
Before starting the VM configuration version upgrade process, you can run a PowerShell command that shows you the current VM configuration version level for each VM, as listed below:
Get-VM * | Select-Object Name, Version
To upgrade the VM configuration version, you can either run a PowerShell command or upgrade the VM configuration version by using Hyper-V Manager. To update a particular VM to the current VM configuration version, just execute the below command:
Update-VMVersion –Name “ProductionVM1” –confirm $false
Note that Update-VMVersion cmdlet also supports upgrading the configuration version for a VM running on a remote Hyper-V host, as shown in the command below:
Update-VMVersion –ComputerName “ITDynamicPacks.Net” –Name “ProductionVM1” –confirm $false
When upgrading VM versions using Hyper-V Manager, shut down the VM, then select the "Upgrade Configuration Version" action available on the right-click context menu of a VM. The "Upgrade Configuration Version" action will not be available for VMs that have already been upgraded to the latest VM configuration version.
Microsoft did provide a way to disable upgrading VMs to the latest configuration version when migrating VMs from older to new Hyper-V versions, but Windows Server 2016 brings in a lot of new VM features, which can be supported only if the VM is running at the required configuration version level. With that in mind, there aren't any significant reasons as to why organizations wouldn’t want to upgrade VMs to the new VM configuration version.
Build a Hyper-V home lab
Save time with Hyper-V PowerShell
Dig Deeper on Microsoft Hyper-V management
Related Q&A from Nirmal Sharma
Use the Get-EventLog PowerShell cmdlet with the desired parameters to retrieve a Hyper-V event log. This command gets errors and warnings and exports...continue reading
PowerShell commands save time and enable admins to migrate multiple VMs outside a Hyper-V failover cluster from one host to another, as well as VMs ...continue reading
System Center Orchestrator provides Run .Net Script activity, which can be used to call PowerShell scripts, but there are limitations you should know.continue reading
Have a question for an expert?
Please add a title for your question
Get answers from a TechTarget expert on whatever's puzzling you.