Hello everyone, my name is John Clyburn and I am a Sr. consultant in MCS. I’ve recently been working with System Center Virtual Machine Manager 2019. While attempting to migrate virtual machines (VM) from a standalone Windows Server 2019 (version 1809) Hyper-V host to another, some of the VMs failed with the VMM Error 23008. The Windows Hyper-V hosts were recently upgraded from Windows 2016.
I ran into this problem and I would like to share how I resolved it in hopes that this will save you some time if you ever run into it while troubleshooting.
PROBLEM:
When attempting to migrate VMs from one Windows 2019 Hyper-V host to another, some would migrate, and others would fail. The steps I used were as follows:
- Open the VMM console and navigate to the target VM.
- Right click the VM and select: Migrate Virtual Machine.
- I selected the options I wanted and selected Move.
- Some of the VMs would fail with the following Error 23008:
I compared the successfully migrated VMs to the ones that failed but could not detect any real difference (OS, Size, Number of CPUs, RAM, Etc.). I check the Allow migration to a virtual machine host with a different version option in VMM and it was set.
I then checked the VM versions and determined they were 5.0. As I understand it, this is supported on Windows Server, version 1809. To check the version:
Using SCVMM:
- Open the VMM console and navigate to the VM.
- Right click the VM and select Properties.
- Click on the General tab.
Using POWERSHELL:
On the Hyper-V host, open an administrative PowerShell command prompt and type:
Get-VM * | Format-Table Name, Version
SOLUTION:
There are several reasons you could receive the VMM Error 23008 error above. This is just the solution I used to resolve it.
FIRST TRY:
Confirm that the option Allow migration to a virtual machine host with a different version is selected.
- Open the VMM console and navigate to the VM that is producing the error.
- Right click it and select Properties.
- Select Hardware Configuration-Processor.
- Confirm/Select the option: Allow migration to a virtual machine host with a different version
- Now try the migration again.
- If migration fails, proceed to the SECOND TRY section below.
SECOND TRY:
Upgrade the VM Configuration versions. There are several ways to upgrade it. Below are a few ways.
Note before proceeding with this option, make sure you read the following article:
Upgrade virtual machine version in Hyper-V on Windows 10 or Windows Server
Note if present, the upgrade process will remove all checkpoints of the VM.
Upgrade the Configuration Version using SCVMM.
- Open the VMM console and navigate to the target VM <VM1> .
- Shutdown the virtual machine <VM1> .
- Right click the virtual machine and select: Update Functional Level
- Click Ok to confirm the upgrade.
- Now try the migration again.
Upgrade the Configuration Version using Hyper-V Manager.
- On the Hyper-V host the virtual machine is assigned, open Hyper-V manager.
- Shutdown the virtual machine <VM1> .
- Right click the virtual machine and select Upgrade Configuration Version.
- Click Ok to confirm the upgrade.
- Now try the migration again.
Upgrade the Configuration Version using PowerShell.
1. Shut down the virtual machine in Hyper-V Manager.
2. On the Hyper-V host the virtual machine is assigned, open Hyper-V manager.
3. Shutdown the virtual machine <VM1>.
4. Open an administrative PowerShell prompt and run the following command:
a. Update-VMVersion <vmname>
b. where vmname is the name of the virtual machine:
5. Example:
a. Update-VMVersion <VM1>
6. Now try the migration again.
Note on a Windows Server 2019 1809, the VM is upgraded to Configuration Version 9.0.
And that’s it. The steps above were successful for me to resolve the VM migrations. I hope this post saves you time if you ever encounter these errors.
Updated Feb 03, 2020
Version 1.0John_Clyburn
Microsoft
Joined December 12, 2019
Core Infrastructure and Security Blog
Follow this blog board to get notified when there's new activity