Forum Discussion
ISSUE - FIXED - Hyper-V VM In-Place Upgrade (IPU) WS 2022 to WS 2025 b26063 fails
- Mar 20, 2024Update on this investigation:
The Windows Boot team looked over logs from my repro and noticed that the upgrade sequence depends on creating a large (500MB) RAM disk and that ramdisk creation is failing due to not enough memory. Since the documented recommendation for Windows Server with Desktop Experience is 2GB, I turned off Dynamic Memory and set the RAM to 2048 GB.
This resolved the issue for me - in-place upgrade now succeeds.
Karl, can you please see if that same mitigation works for you?
If so, I can follow up with the MSLab owners to see if they can change the memory configuration.
Thanks,
Michael
MSBernstein I am thankful you are investigating this.
If you like we can have a remote session to figure this out.
I am using mslab (github) with Windows Server 2025 on the metal / host OS and Windows Server 2022 guest VMs. The ISO Origins from 2025 Insider portal and WS 2022 from latest Visual Studio subscription. So no VL / EVAL.
You can contact me via Teams if you like, for a remote session, also if you have questions on mslab.
MSBernstein could this note from 26080 be related to the issue we're discussing here?
"If you are validating upgrades from Windows Server 2019 or 2022, we do not recommend that you use this build as intermittent upgrade failures have been identified for this build."
- MSBernsteinMar 13, 2024MicrosoftPerhaps, but you saw the same issue on 26053.
I looked up what MSLab is, which I had not been familiar with. I had been running the repro by hand. I'll plan to retry it with MSLab a little later in the week. I do want to get to the bottom of this.- MSBernsteinMar 13, 2024Microsoft
I'm working through the process of doing this in MSLab. Based on the pictures you documented, I assume it is the 'DC' VM that I need to update - but I am getting a strange complaint about an additional step I need to take for the domain controller. Did you see this as well? Is there a reasonable way to address this? (I can see that the link documents a set of steps, but this seems rather far off the track of a simple upgrade.)
- Karl-WEMar 14, 2024MVP
MSBernstein thank you for going the extra mile with mslab. as there is even a session on this on WS summit supposed it is still supported.
When running Deploy.ps1 with the default labconfig it will create the base, virtual disks templates with WS2022 core and GUI, and a DC template VM
1. please rename the existing labconfig file
2. and create a new one with code below
3. run deploy.ps1
this will create the "lab" with the DC and 2 VMs used for Management (GUI) and WAC (Core)
plain and naked and AD join them.
As we do not need the azure stack hci hosts for this lab these are # out.
We can play the upgrade repro on these.
DC IPU is possible but in fact you need a cmdline command for forest prep executed from the ISO tools folder. This is by design.
At the time of writing I am updating WS 2022 to b26080. Online phase was always ok.
This is the management VM config (vTPM could be optional) does not cause it. Just adopting it from what I learned these days about new security features.#basic config for Windows Server 2022, that creates VMs for S2D Hyperconverged scenario https://github.com/Microsoft/MSLab/tree/master/Scenarios/S2D%20Hyperconverged $LabConfig=@{AllowedVLANs="1-10,711-719" ; DomainAdminName='LabAdmin'; AdminPassword='LS1setup!' ; DCEdition='4'; Internet=$true ; TelemetryLevel='Full' ; TelemetryNickname='' ; AdditionalNetworksConfig=@() ; SecureBoot=$true ; VMs=@() ; CustomDnsForwarders=@("1.1.1.1","1.0.0.1")} #Azure Stack HCI 22H2 #1..2 | ForEach-Object {$LABConfig.VMs += @{ VMName="AzSHCI$_" ; Configuration='S2D' ; ParentVHD='AzSHCI22H2_G2.vhdx' ; HDDNumber=4 ; HDDSize=1TB ; MemoryStartupBytes=1GB; VMProcessorCount=4 ; vTPM=$true}} #Azure Stack HCI 22H2 with nested virtualization #1..2 | ForEach-Object {$LABConfig.VMs += @{ VMName="AzSHCI$_" ; Configuration='S2D' ; ParentVHD='AzSHCI22H2_G2.vhdx' ; HDDNumber=4 ; HDDSize=1TB ; MemoryStartupBytes=32GB ; VMProcessorCount=8 ; vTPM=$true ; NestedVirt=$true}} #Windows Admin Center in GW mode $LabConfig.VMs += @{ VMName = 'WACGW' ; ParentVHD = 'Win2022Core_G2.vhdx'; MGMTNICs=1} #Management machine $LabConfig.VMs += @{ VMName = 'Management' ; ParentVHD = 'Win2022_G2.vhdx'; MGMTNICs=1}