Sitecore Upgrade from 8.1 XP to 10.4 XM Scaled - Part 1
I have seen many questions about upgrading Sitecore
from 8.1 to 10.4. I will share my experience upgrading Sitecore with tips and
tricks that will help the upgrade process go smoothly.
This contains multiple parts to get started with the upgrade
activity.
- Steps
for Sitecore and Solution Upgrade Checklist
- Sitecore
8.1 Local instance setup with Solr and verification
- Sitecore
10.4 Code upgrade issues and resolution
Steps for Sitecore and Solution Upgrade Checklist:
Solution Upgrade Checklist:
Task |
Comments / Findings |
Comments |
1 |
.Net 4.8 upgrade to all the projects in the solution |
|
2 |
Install SQL Server 2022 |
|
3 |
.NET Core 6.0 Windows Hosting Bundle |
|
4 |
Install Compatible Solr version for 8.1 and 10.4 |
|
5 |
Update the Nuget package of Sitecore from 8.1 to 10.4 |
|
6 |
Update the link manager, and media manager to 10.4 |
|
7 |
Validate if any custom pipeline is used and its compatibility, Upgrade
it accordingly |
Obsolete methods/functions if any |
8 |
Validate Custom solr fields used and update the schema accordingly |
|
9 |
Validate any API routes created and migrate them if needed |
API routes internal |
10 |
Check the web.config file if any direct settings are added and update
using the xdt file |
Compare with the prod web.config |
11 |
Verify the commands.config if any custom commands are created. |
Merge with 10.4 if any added commands in commands.config |
12 |
update the cache items configuration in prefetch/master/web/core in
file system |
|
13 |
Verify the Custom rewrite/redirect rule used |
IIS level, config level |
14 |
Code refactoring and code cleaning |
Settings, Tasks, caching, etc |
15 |
Verify the logging mechanism available |
like app insights apart from default Sitecore logs |
16 |
Update the 3rd party integration credentials to access the features
like (Google tag manager, Hotjar, maps, captcha, etc) |
|
17 |
Verify email sending by configuring our own Gmail SMTP if the client
does not provide their SMTP during development |
SMTP/GMAIL, or client one |
18 |
Verify the custom patch dll provided by Sitecore, remove it if it is
not valid, as we will be using 10.4 |
Proper validation |
19 |
Verify the ignorepageurl Sitecore settings is properly configured and
used |
|
20 |
Appsettings / web.config / Redirects config transformation |
|
21 |
Verify all the API routes available in the solution |
|
22 |
Obsolete function replacement with new functions |
|
23 |
Update any dependencies as required |
|
Not compatible old code related to 8.1 removal from the repo Identify
external integrations. |
||
Identify the Sitecore marketplace module. (Check it's compatible with
Sitecore 10.4) |
||
Custom config patch |
||
Custom Solr fields |
||
Custom Sitecore fields |
||
Analysis of custom Cache implementation. |
||
24 |
Verify the website and resolve any errors |
|
Custom Pipelines not compatible with 10.4 |
||
Glass mapper support from 8.1 to 10.4 |
||
Verify Dynamic placeholder support from 8.1 to 10.4 |
||
Verify Dictionary |
||
Media link manager |
||
Verify images loading |
||
Custom Config patch |
||
|
Sitecore Upgrade Checklist |
||
|
Tasks |
Comments |
1 |
Download the following database for upgrade activities |
|
master |
||
core |
||
web |
||
2 |
Install the XP version of Sitecore 8.1 |
|
3 |
Install XM Scaled Sitecore 10.4 |
|
4 |
Make sure to run in CMS Only mode by removing analytics and tracking
(no xconnect, processing, reporting roles, etc) |
|
5 |
Attach the downloaded database to the locally installed 8.1 instance
(don't delete the vanilla databases) |
|
6 |
Update the connection strings to access these databases by updating
the credentials information and providing dbo.Admin access to the users |
If we cannot log in to Sitecore
CMS, run the script in the core database to reset the Sitecore admin
password. script provided below. |
7 |
Verify the Sitecore works, and randomly check the items loaded without
any issue |
|
8 |
Verify any default Sitecore items got customized like rendering,
settings, home, etc this is important for IAR conversion |
|
9 |
Check if this is SXA or a normal site |
Make sure of this, if we upgrade from Sitecore XP without SXA and install Sitecore with SXA, then we will create a problem during an upgrade |
10 |
Check any specific site settings available in the <sites> node
or in the SXA site config node |
|
11 |
Check Experience editor is working |
|
12 |
Check if the Custom Solr index is available to verify it is working |
|
13 |
Update the Publishing target in Sitecore based on the connection
string name, so that the publishing will work |
|
14 |
Execute Sitecore Update Tool on 8.1 instance only |
Sitecore upgrade tool (package 1.4.1 for 8.1.0) |
15 |
Follow the setup in the document on Page 14 for the Sitecore update
tool |
|
16 |
Upgrade Scrips for the (web, Master, and core) databases
are available from the following zip
folder Sitecore 10.4.0 rev. 00XXXX (upgrade files).zip. |
On Sitecore, 8.1 instances only, Refer to page 16 from the upgrade
guide to run the SQL scripts on the databases(master, core, and web) |
19 |
Once validation is completed, take the upgraded database from 8.1
(master, core, web, and live) |
|
20 |
Attach these databases to 10.4 instances, and update the connection
string |
|
21 |
Deploy the upgraded source code and configure necessary site settings
like hostname, etc |
In Sitecore 10.4 |
22 |
Post upgrade activity like (Rebuild index, Cache clear, Link database) |
|
23 |
Validate the Sitecore CMS and site with Solr search |
Sitecore 10.4 |
24 |
Validate the Sitecore roles and workflow |
|
SQL Admin Password Reset in core database:
UPDATE dbo.aspnet_Membership SET [Password]='qOvF8m8F2IcWMvfOBjJYHmfLABc=', [PasswordSalt]='OM5gu45RQuJ76itRvkSPFw==', [IsApproved] = '1', [IsLockedOut] = '0'WHERE UserId IN (SELECT UserId FROM dbo.aspnet_Users WHERE UserName = 'sitecore\Admin')
Note:
We need the update the connection string of the Sitecore 10.4 Identity server to make sure the Sitecore CMS login works without any problem.
The config file is available in the following location sc10.4.dev.local\Config\production\Sitecore.IdentityServer.Host.xml
Update the same core/security connection string to the config file like below.
Sitecore 8.1 Local instance setup with Solr and verification
Let's learn and grow together, happy programming 😊
Comments
Post a Comment