Forum Discussion
Microsoft Recommendation on Upgrade Path from 2012R2 to 2022?
- Apr 11, 2022Did a in-place upgrade from 2012 R2 to 2019 just last week for two servers, no issues.. It just depends on the installed software/drivers/anti-virus etc if it will work. But nobody thinks twice about upgrading Windows 7 tot 8 to 8.1 to 10 to 11 😉 Upgrading does work and having issues in the future because of it is something of the past in my experience. If you can migrate to a new server without a lot of work.. Please do so, but it is still an option (But keep your backup and snapshots close)
Harm_Veenstra I appreciate the responses. My concern is that is there a official recommendation from Microsoft? Does Microsoft 'standby' that this upgrade path should work, or what I'm reading from other responses is that, it's better to do a clean install, or perform both routes just in case...
Thank you
- Apr 11, 2022Did a in-place upgrade from 2012 R2 to 2019 just last week for two servers, no issues.. It just depends on the installed software/drivers/anti-virus etc if it will work. But nobody thinks twice about upgrading Windows 7 tot 8 to 8.1 to 10 to 11 😉 Upgrading does work and having issues in the future because of it is something of the past in my experience. If you can migrate to a new server without a lot of work.. Please do so, but it is still an option (But keep your backup and snapshots close)
- cespirituJan 18, 2024Copper Contributor
- Karl-WEJan 18, 2024MVP
cespiritu Zach_B635 it depends on the workloads and antivirus apps.
If this is a correctly setup server like "no Domain Controller + Certificate Authority at the same Server or VM it is a simple as
some general guidelines from my numerous migration projects:- Check compatibility with software and vendors and dependencies such as .net., does your backup software, security solution, monitoring support the OS etc.
Do vendors expressively not allow IPU, such as Citrix (workaround uninstall software, upgrade, install software such as Citrix VAD) - Check your licensing eligibility! Are you licensed? How, which contract, do you introduce an OEM / CSP VL Server to your Enterprise Agreement environment.
Do you have SA or CSP Subscription or VL with obligatory SA like OVS, MPSA or EA?
And do you need other licenses (still) like (RDS) CALs and are they covered under SA or licensed for the future version? - Avoid (final) upgrades to OS that are not in Mainstream Support such as WS 2016 or WS 2019. Exception: interim version needed for the upgrade path.
There will be no help, but self-help resources and you don't want to pay extended support fees. - Have a recent and working full backup. A VM snapshot is nice but do not consider it a backup equivalency.
- Always download the LASTEST Windows (Server) ISO in your OS language or at best en-us language, see below. There is NO patched ISO for Windows Server 2016. Avoid this OS at all costs on your path (and in general, too).
Updated ISO is also true when using one OS as bridge like 2012R2 > 2019 > 2022 / 2022 Azure Edition in eligible systems.
The upgrade path supported is always your base version + 2 (so 2016 > 2022, 2012R2 > 2019) - Edit: base version + 4 starting with Windows Server 2025
This is most crucial for successful upgrades as the PG is also fixing issues in the upgrade and setup procedure - Even though the ISO contains the latest CUs, do allow dynamic upgrades in the setup wizard. Without this .net or other components like language packs won't be upgraded properly. Caveat this may update drivers. Citrix VAD masters don't like updating NICs.
- If the OS Language is not en-us consider side by side migration instead o in-place upgrade in this language and use language packs (thank me later) you can find out the language by Win + X > PowerShell (Admin) > (Get-Computerinfo).OSLanguage
The important thing on the why en-us: - Microsoft and even Microsoft PowerShell Scripts are rarely to none tested against other native languages of an OS such as security groups, account names (even though SID exist but rarely used in code)
- Windows Feature names are localized, too.
- Some ancient code Windows Roles and Features are language dependent when exporting the configuration and cannot then easily migrated such as DHCP (for sure), AD CS, eventually Print
- It is harder to find workarounds on the net in other language even more due to arbitrary translation.
- The MS Support with thank you, too, as only Eventlogs can be saved in other localization.
Error messages are harder to understand due localization. - Windows Admin Center and extensions dislike non en-US language installation and greet you with random failures.
- You can find Group Policies in the Azure based search engine only in this language. Translation makes is pretty hard to find them.
- How to tame admins on changing the language:
- apply language packs (fixed translation, little to no fixes / LIPs (language interface packs, these can be patched via updates)
- use local keyboard and regional options in the setup (this does not change anything on the OS language for Windows Server)
- You can leverage group policy to assign OS language, keyboard and regional settings based on user, or AD group membership.
- if the Server has a GUI check documentation if you really need it. Prefer Server Core option where possible. While possible do not bother with print server, some Version 3 drivers are horribly legacy coded and "require" GUI elements.
Remote Management via Server Manager, DSAC and WAC is king using a special PAWS (privileged Admin Workstation / VM / Windows Server VM), incl. RDSH if licensed), for all tools needed.
- Update the base system to the latest patch, including SSU if separately available.
- is the Component Store (WinSXS) is broken? Good.
Repair-WindowsHealth -Online (-scanhealth / -checkhealth) do not repair.
In-place upgrade will fix this most of the times. - If Windows Server 2012 (R2) or later run a chkdsk /f on C drive and restart.
You'll never now! (Unexpected shutdowns, and other catastrophes. - Spare enough free space usually 20 GB is enough.
- Use Microsoft Defender (free) or P1/ P2 if possible.
Remove third party "security" solutions before any upgrade, at best with the vendors removal tool. You can roll the third-party solution out after the upgrade. - if you could afford use the rule one VM for one "task" especially if security related such as File, Print, AD DS (DC), AD CS (CA), DHCP. You can put them all together, but you will regret this. in the lastest MSFT finally forbid the installation of AD CS on AD DS
- when using ReFS mind there is no way back, IPU will upgrade all online mounted volumes (and should so). Mind there is no upgrade path from ReFS Windows Server 2012 (R2) to any later version. You need to start over to gain ReFS improvements.
- Do not upgrade the OS on Exchange Server, see above about vendor comments. It is NOT supported as per docs (too many dependencies on PowerShell / WMF and .net). this could become more relaxed starting with WS 2022 and later and Exchange vNext.
- If you used Azure Arc e. g. for ESU, Defender, Monitoring etc, uninstall the agent and remove Azure references / resources. In-place upgrades are not supported by the otherwise modern connected machine agent, as per docs.
Following this you will have a remarkable success rate, better than other described.
Hope this helped! Good luck on the tasks to come!
- Check compatibility with software and vendors and dependencies such as .net., does your backup software, security solution, monitoring support the OS etc.
- Alban1999Apr 13, 2022Iron Contributor
Actually migrating to Windows 11 needs much planning and considerations due to heavy changes to the underlying hardware security stack (TPM 2.0, UEFI, Secure Boot, VBS etc.).
Same is true for Windows Server 2022.
Just because it "works" doesn't mean it is properly configured, secured and optimized.
You certainly doesn't want your brand new Windows Server 2022 relying BIOS/MBR model by example. - Zach_B635Apr 11, 2022Copper ContributorWe'll keep these options in mind. Thanks for all the helpful replies here!
- Alban1999Apr 13, 2022Iron ContributorTo sum it up : imho, in-place upgrade is a quick-and-dirty way of migrating something.
It trades reduced initial migration costs for increased operational risks.
It's up to you to select it or not as the preferred migration method.