I apologize for the length. I guess I like telling stories :(
As Server 2016 is nearing EOL, we decided to perform IPUs on all of our servers. We have a small environment with ~2700 systems managed across 5 sites. We have a Primary server with 4 DPs, all running Server 2016. All are VMs.
I tested with one Distribution Point.
For that one (and ultimately the rest), a snapshot was taken and the upgrade was performed. The upgrade took about an hour and 30 minutes, which included installing the pending updates, rebooting, upgrading the OS, rebooting, and installing updates after the upgrade and yet another reboot. I waited a few weeks to ensure stability, then quickly upgraded the other 3 Distribution points.
The Site System holds the DB, Patch My PC, WSUS, and a few other things.
When I was doing my initial research, I had planned to go to Server 2019. I had the plan all mapped out and verified everything would work with 2019 (Version of MECM, SQL, Patch My PC and our other software). I compiled a document with most common issues encountered and resolutions, along with alternative recovery methods if the snapshot managed to fail. Throughout all of this, what I didn't concentrate on was that instead of Server 2019, we'd be going to Server 2022 (I'm still not sure how I constantly overlooked this).
The steps I took:
A few weeks prior to the IPU I upgraded to the most recent MECM baseline version and let all clients upgrade, then ensured there was no instability.
On the day of the IPU, I went through the checklist and it dawned on me that SQL Server 2016 wasn't supported on Server 2022. I decided to roll with that punch and go ahead anyway.
SQL Server 2016 was upgraded to 2022 and SSRS 2022 was installed. Testing was done and everything except reports was working. I could image a system, deploy software, Site and Component status were all good and everything looked healthy.
*The fix*
Copy SrsResources.dll from C:\Program Files\SMS_SRSRP to C:\Program Files\Microsoft SQL Server Reporting Services\SSRS\ReportServer\bin
Edit C:\Program Files\Microsoft SQL Server Reporting Services\SSRS\ReportServer\rssrvpolicy.config and add this near the end of the file:
<CodeGroup class="UnionCodeGroup" version="1" PermissionSetName="FullTrust" Name="SRSResources"><IMembershipCondition class="UrlMembershipCondition" version="1" Url="C:\Program Files\Microsoft SQL Server Reporting Services\SSRS\ReportServer\bin\SrsResources.dll" />
</CodeGroup>
Afterwards, I restarted SQL Server Reporting Services service. *I likely could have reinstalled the Reporting Services Role to fix this.*
After I verified everything was good, I grabbed the Startup Type for SMS and SQL services and disabled them. I rebooted afterwards and performed the 2016 to 2022 IPU.
After the upgrade, I set the Startup Type for all SMS and SQL services back to their original state and rebooted.
After the server came back up, I performed WSUS "Post-Installation tasks" through Server Manager and rebooted once it was done.
Once the server was up, I performed a Site Reset. I Run Setup.exe from C:\Program Files\Microsoft Configuration Manager\cd.latest\SMSSETUP\BIN\X64. Probably not required, but I rebooted afterwards.
I tested imaging, creating a Program/Application, deploying a Program/Application, WSUS Update, Downloading an update and many other things. For Patch My PC, under Software Update Point Component Properties, There was a 2nd Patch My PC that needed a check mark in it's box.
Everything was healthy. No issues found. I monitored over the weekend and on Monday, we looked to be good.
Later in the day, I found out that our Help Desk had lost access. They don't have Admin rights and only use Remote Tools. I hadn't seen this pop up in any in my research.
*The fix*
Open wmimgmt.msc on the Site Server
Give ‘Execute Methods’, ‘Provider Write’, ‘Enable Account’, and ‘Remote Enable’ permission to Root\SMS & Root\SMS\<Site> for SMS Admin.
Open dcomcnfg on the Site Server
Give ‘remote launch’, and ‘remote activation’ to SMS Admins in Component Services > Computers > My Computer, in the COM security tab, ‘Launch and Activation Permissions’
Give ‘remote access’ to SMS Admins in Component Services > Computers > My Computer, in the COM security tab, ‘Access Permissions’.
I hope this post helps others if they decide to go the In-place Upgrade route instead of rebuilding.
In total, I spent maybe 5-6 hours troubleshooting (mostly the Primary Server) and waiting for upgrades to finish and maybe another 5-6 hours of prepping for the upgrades.