Thursday, March 30, 2023

Sitecore upgradation process for 9.x to 10.x

  

Sitecore Platform Upgrade Solution: To perform clean platform upgrade. If the current version of is Sitecore 9.x, needs to be migrated to Sitecore 10.x. Platform Upgraded and testing will be handled in isolation of the current production instance. This will sweetly avoid any major down time. This approach requires Additional Infrastructure (new environments) which will run in parallel 

 

Sitecore Migration is solution is to break down into 6 Phases. 

  1. Preparation 

  1. Discovery 

  1. Backup Everything 

  1. Environment Setup 

  1. Migration 

  1. After Migration 


 

  1. Preparation:  

  1. Assessment of Sitecore v.10.x: High level Task to be discuss and Performed 

  • Sitecore 10.x has more focus on Sitecore Headless Solution which offers an improved Authoring Experience. 

  • Improved JSS Solution Implementation 

  • Solar Search instates of Azure Search. Sitecore is planning to depreciate Azure Search 

  • A lot of improvement w.r.t XConnect performance 

 

  1. Transition Plan on the local machine (Task ticket creation): High level Task to per discuss and Performed 

  • Technical assessment of your current implementation 

  • List of modules does the solution currently utilize 

  • List of Items Module / Feature decommissions by Platform. 

  • Clear understanding w.r.t Marking Feature used from Sitecore platform and 3rd Marketing platform Integration  

  • Application Integration details. Stakeholders Engagement 

 

  1. Stakeholder Communication 

  • Communication to business group about goals. 

  • Communicate deadlines and improvement areas. 

  • Plan with stakeholders how to smoothly platform migration.  

 

  1. Sitecore Upgrade considerations (Backups consideration, custom data migration etc) 

  • Process & High-level approach will be provided in flowchart w.r.t platform upgrade in various environment.

  • Proper Back Process / Rollback Approach will be defined in case of any challenges. 

 

  1. Discovery:  

  1. Prerequisites, as per the Upgradation guide 

 

  1. CMS Items Complexity Catalog: List of Modules and pages to be Migrated in Sitecore 10.2

  1. Sitecore Modules: Entire solution build using all the Sitecore offer OOTB feature and functionality.

  1. Sitecore Customization: As Applicable  

  1. 3rd Party Library Used: As Applicable 

  1. Patch Files (Configuration Changes): All patch files will be backed up before platform upgrade to ensure that they are not lost.  

  1. Azure Search Removal / Migration: Support for the Azure search provider, including any related policies and configuration, is removed in Sitecore XC 10.x. Hence it is necessary to install / configure and use Solr search. 

  1. Identify the code and configuration artefacts that can go through the deployment pipeline: Analysis needs to be done at the time of upgrade and notify all the pipeline related changes to team. 

  1. Identify the code and configuration artefacts that cannot go through the deployment pipeline, categorized in: 

  • Can be done by the developer 

  • Can be done by the devops (Environment change and Infrastructure change) 

 

  1. Identify the items which can be changed in 9.3 and cannot be merged in 10.2: Opportunity to clean Sitecore content tree and remove unused Sitecore items or exclude Sitecore items which is not really required in new Sitecore platform. 

 

  1. Backup Everything: The new version of Sitecore might contain some breaking changes. To separate the upgrade of Sitecore from the upgrade of any customizations you have made, move your custom DLLs and configuration files out of the Sitecore \bin and \app_config folders. When the upgrade is completed, you can adapt your code according to a list of breaking changes and move the files back. 

 

  1. Sitecore Database Backup: All the database needs to be backed up before we run database upgrade scripts contain the changes that must be applied to the Sitecore databases to ensure compatibility. When we upgrade Sitecore platform following database will get updated and created.  

  • : Core / Master / Web / Experienceforms (New DB will get created. 

  • xDB: Same will be applicable to XB where in multiple database will get created and upgrade.  

  • *: New DB Create and upgrade details will be provided in supporting document provided by Sitecore. Upgrade_Guide_Sitecore.pdf. Sitecore database upgrade will be done by executing Sitecore 10.xrev. 00xxxx (upgrade files).zip file from Databases.zip package 

  1. Codebase Backup: Helix code base doesn’t have much changes from Sitecore 9.x to Sitecore 10.x. However, it is good practice to have backup. 

  1. Sitecore root directory Backup: It is good practice to have backup. (Website folder) 

  1. Sitecore Package Build: Good to build Packages of all the sitecore items. It is good to have separate packages and needs to be categorize as follows: 

  • Template 

  • Media 

  • Rendering 

  • Dictionary 

  • Content 

 

  1. Environment Setup: You must upgrade or deploy all the appropriate databases. Before environment setup 

  1. Download All Required Module & Packages Required for Sitecore 10.2.0 upgrade 

  1. Download Required version of S/W from Sitecore SPE 

  1. New Environment Setup: Need to Provision Replica of Production Environment to start Platform Migration Process. Build new environment using existing DevOps pipeline.  

  1. Migration: 

  1. Upgrade Solution and Dependency: Required upgrade or deploy all the appropriate databases. work with Sitecore 10.x. This will involve but not limited to the following tasks: 

  1. Database upgrade: 

  • Read the instructions for the database 

  • Extract the database upgrade scripts from the Database Upgrade Script.zip 

  • Run the scripts in a required sequence 

  1. The XM databases 

  • Core: CMS_core.sql 

  • Master: CMS_master.sql 

  • Web: CMS_web.sql 

  1. xDB databases update: Deploy or Run ONLY required DB Script. 

  1. Install Upgrade Package required for 10.2.0: Update Installation Wizard would be used to platform upgrade.  

  1. Login to as Administrator user & from Sitecore Launchpad, click Control Panel, and in the Administration section, click Install a package 

  1. Sitecore Update Installation Wizard 4.0.x rev. 00xx for 9.x-10.x.zip is recommended. Install package 

  1. Open Update Installation Wizard page using URL: http://<hostname>/sitecore/admin/UpdateInstallationWizard.aspx 

  1. Select Package Sitecore XP 10.x.zip 

  1. Select Sitecore Version: Sitecore 10.x rev. 00xxxx (update package for 9.x).update & Package information 

  1. Analyze the package and fix any code break. 

  1. Resolve Configuration details 

  1. Install Upgrade Package  

 

  1. Review the changes and update the configuration files: Review some configuration settings and update details which include 

  1. Helix folder structure 

  1. Configuration file 

  1. Path file 

  1. web.config 

  1. Upgrade Solr: Solr upgrade is required from version 8.1 to 8.8.x followed by Index refresh. 

  1. Upgrade .Net Solution with New Sitecore DLL's: Replace new Sitecore dll into helix folder rebuild solution and validate functionality  

  1. Enable the patch files: Enable all the Patch files so that all configuration changes will get reflect with solution  

  1. Build Solution & Test: Build .Net solution deploy the solution and validate 

  1. Fix After Migration Eros: Fix Any Error or Code break 

  1. Clean Code. Remove Old Files: Delete all unwanted file from solution folder. 

 

 

  1. Migration: 

  1. Setup Test Plan: Setup plan for Testing validate standalone solution. 

  1. End 2 End Functionality Testing: E2E which include Smoke Test, Unit Test, Functionality Test, Device Test, Security Test. 

  1. Soft Launch solution for Testing