SlideShare a Scribd company logo

Upgrading to Sitecore 9

Mark Lowe
Mark Lowe
Mark LoweSitecore MVP / Architect at KeyCoders GmbH

Presentation on how to manage the upgrade process to Sitecore 9.x

Upgrading to Sitecore 9

1 of 37
Download to read offline
Upgrading to Sitecore 9
The (rocky) road to enlightenment
Disclaimer
All information in this presentation is provided with no warranty of
any kind.
Upgrading to Sitecore 9
Upgrading to Sitecore 9
Where shall I start?
• Read Upgrade Guide on dev.sitecore.net?
• Follow steps from Upgrade Guide on your local machine?
This is likely not going to work on a large solution
Task breakdown
Migrate Codebase
Migrate Infrastructure
Migrate Data
Upgrade Modules
Ad

Recommended

How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024Albert Qian
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsKurio // The Social Media Age(ncy)
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Search Engine Journal
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summarySpeakerHub
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next Tessa Mero
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentLily Ray
 

More Related Content

Recently uploaded

APAN 57: APNIC Report at APAN 57, Bangkok, Thailand
APAN 57: APNIC Report at APAN 57, Bangkok, ThailandAPAN 57: APNIC Report at APAN 57, Bangkok, Thailand
APAN 57: APNIC Report at APAN 57, Bangkok, ThailandAPNIC
 
[Hackersuli]Privacy on the blockchain
[Hackersuli]Privacy on the blockchain[Hackersuli]Privacy on the blockchain
[Hackersuli]Privacy on the blockchainhackersuli
 
Modern Red Teaming - subverting mature defenses on a budget
Modern Red Teaming - subverting mature defenses on a budgetModern Red Teaming - subverting mature defenses on a budget
Modern Red Teaming - subverting mature defenses on a budgetmatt806068
 
Earn 3000 dollars per month
Earn 3000 dollars per monthEarn 3000 dollars per month
Earn 3000 dollars per monthplaycorea108
 
UGBINTERNETBANKING FACILITY LAUNCHED.pptx
UGBINTERNETBANKING FACILITY LAUNCHED.pptxUGBINTERNETBANKING FACILITY LAUNCHED.pptx
UGBINTERNETBANKING FACILITY LAUNCHED.pptxRiteshsahu101
 
history of tau gamma architect.1968.....
history of tau gamma architect.1968.....history of tau gamma architect.1968.....
history of tau gamma architect.1968.....josephiigo
 

Recently uploaded (9)

INTERNET
INTERNETINTERNET
INTERNET
 
APAN 57: APNIC Report at APAN 57, Bangkok, Thailand
APAN 57: APNIC Report at APAN 57, Bangkok, ThailandAPAN 57: APNIC Report at APAN 57, Bangkok, Thailand
APAN 57: APNIC Report at APAN 57, Bangkok, Thailand
 
B1 Evaluation.docx
B1 Evaluation.docxB1 Evaluation.docx
B1 Evaluation.docx
 
Riesgos online
Riesgos onlineRiesgos online
Riesgos online
 
[Hackersuli]Privacy on the blockchain
[Hackersuli]Privacy on the blockchain[Hackersuli]Privacy on the blockchain
[Hackersuli]Privacy on the blockchain
 
Modern Red Teaming - subverting mature defenses on a budget
Modern Red Teaming - subverting mature defenses on a budgetModern Red Teaming - subverting mature defenses on a budget
Modern Red Teaming - subverting mature defenses on a budget
 
Earn 3000 dollars per month
Earn 3000 dollars per monthEarn 3000 dollars per month
Earn 3000 dollars per month
 
UGBINTERNETBANKING FACILITY LAUNCHED.pptx
UGBINTERNETBANKING FACILITY LAUNCHED.pptxUGBINTERNETBANKING FACILITY LAUNCHED.pptx
UGBINTERNETBANKING FACILITY LAUNCHED.pptx
 
history of tau gamma architect.1968.....
history of tau gamma architect.1968.....history of tau gamma architect.1968.....
history of tau gamma architect.1968.....
 

Featured

Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best PracticesVit Horky
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project managementMindGenius
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...RachelPearson36
 
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...Applitools
 
12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at WorkGetSmarter
 
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...DevGAMM Conference
 
Barbie - Brand Strategy Presentation
Barbie - Brand Strategy PresentationBarbie - Brand Strategy Presentation
Barbie - Brand Strategy PresentationErica Santiago
 
Good Stuff Happens in 1:1 Meetings: Why you need them and how to do them well
Good Stuff Happens in 1:1 Meetings: Why you need them and how to do them wellGood Stuff Happens in 1:1 Meetings: Why you need them and how to do them well
Good Stuff Happens in 1:1 Meetings: Why you need them and how to do them wellSaba Software
 
Introduction to C Programming Language
Introduction to C Programming LanguageIntroduction to C Programming Language
Introduction to C Programming LanguageSimplilearn
 
The Pixar Way: 37 Quotes on Developing and Maintaining a Creative Company (fr...
The Pixar Way: 37 Quotes on Developing and Maintaining a Creative Company (fr...The Pixar Way: 37 Quotes on Developing and Maintaining a Creative Company (fr...
The Pixar Way: 37 Quotes on Developing and Maintaining a Creative Company (fr...Palo Alto Software
 
9 Tips for a Work-free Vacation
9 Tips for a Work-free Vacation9 Tips for a Work-free Vacation
9 Tips for a Work-free VacationWeekdone.com
 
I Rock Therefore I Am. 20 Legendary Quotes from Prince
I Rock Therefore I Am. 20 Legendary Quotes from PrinceI Rock Therefore I Am. 20 Legendary Quotes from Prince
I Rock Therefore I Am. 20 Legendary Quotes from PrinceEmpowered Presentations
 
How to Map Your Future
How to Map Your FutureHow to Map Your Future
How to Map Your FutureSlideShop.com
 
Beyond Pride: Making Digital Marketing & SEO Authentically LGBTQ+ Inclusive -...
Beyond Pride: Making Digital Marketing & SEO Authentically LGBTQ+ Inclusive -...Beyond Pride: Making Digital Marketing & SEO Authentically LGBTQ+ Inclusive -...
Beyond Pride: Making Digital Marketing & SEO Authentically LGBTQ+ Inclusive -...AccuraCast
 
Read with Pride | LGBTQ+ Reads
Read with Pride | LGBTQ+ ReadsRead with Pride | LGBTQ+ Reads
Read with Pride | LGBTQ+ ReadsKayla Martin-Gant
 
Exploring ChatGPT for Effective Teaching and Learning.pptx
Exploring ChatGPT for Effective Teaching and Learning.pptxExploring ChatGPT for Effective Teaching and Learning.pptx
Exploring ChatGPT for Effective Teaching and Learning.pptxStan Skrabut, Ed.D.
 
How to train your robot (with Deep Reinforcement Learning)
How to train your robot (with Deep Reinforcement Learning)How to train your robot (with Deep Reinforcement Learning)
How to train your robot (with Deep Reinforcement Learning)Lucas García, PhD
 

Featured (20)

Introduction to Data Science
Introduction to Data ScienceIntroduction to Data Science
Introduction to Data Science
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best Practices
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project management
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
 
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
 
12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work
 
ChatGPT webinar slides
ChatGPT webinar slidesChatGPT webinar slides
ChatGPT webinar slides
 
More than Just Lines on a Map: Best Practices for U.S Bike Routes
More than Just Lines on a Map: Best Practices for U.S Bike RoutesMore than Just Lines on a Map: Best Practices for U.S Bike Routes
More than Just Lines on a Map: Best Practices for U.S Bike Routes
 
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
 
Barbie - Brand Strategy Presentation
Barbie - Brand Strategy PresentationBarbie - Brand Strategy Presentation
Barbie - Brand Strategy Presentation
 
Good Stuff Happens in 1:1 Meetings: Why you need them and how to do them well
Good Stuff Happens in 1:1 Meetings: Why you need them and how to do them wellGood Stuff Happens in 1:1 Meetings: Why you need them and how to do them well
Good Stuff Happens in 1:1 Meetings: Why you need them and how to do them well
 
Introduction to C Programming Language
Introduction to C Programming LanguageIntroduction to C Programming Language
Introduction to C Programming Language
 
The Pixar Way: 37 Quotes on Developing and Maintaining a Creative Company (fr...
The Pixar Way: 37 Quotes on Developing and Maintaining a Creative Company (fr...The Pixar Way: 37 Quotes on Developing and Maintaining a Creative Company (fr...
The Pixar Way: 37 Quotes on Developing and Maintaining a Creative Company (fr...
 
9 Tips for a Work-free Vacation
9 Tips for a Work-free Vacation9 Tips for a Work-free Vacation
9 Tips for a Work-free Vacation
 
I Rock Therefore I Am. 20 Legendary Quotes from Prince
I Rock Therefore I Am. 20 Legendary Quotes from PrinceI Rock Therefore I Am. 20 Legendary Quotes from Prince
I Rock Therefore I Am. 20 Legendary Quotes from Prince
 
How to Map Your Future
How to Map Your FutureHow to Map Your Future
How to Map Your Future
 
Beyond Pride: Making Digital Marketing & SEO Authentically LGBTQ+ Inclusive -...
Beyond Pride: Making Digital Marketing & SEO Authentically LGBTQ+ Inclusive -...Beyond Pride: Making Digital Marketing & SEO Authentically LGBTQ+ Inclusive -...
Beyond Pride: Making Digital Marketing & SEO Authentically LGBTQ+ Inclusive -...
 
Read with Pride | LGBTQ+ Reads
Read with Pride | LGBTQ+ ReadsRead with Pride | LGBTQ+ Reads
Read with Pride | LGBTQ+ Reads
 
Exploring ChatGPT for Effective Teaching and Learning.pptx
Exploring ChatGPT for Effective Teaching and Learning.pptxExploring ChatGPT for Effective Teaching and Learning.pptx
Exploring ChatGPT for Effective Teaching and Learning.pptx
 
How to train your robot (with Deep Reinforcement Learning)
How to train your robot (with Deep Reinforcement Learning)How to train your robot (with Deep Reinforcement Learning)
How to train your robot (with Deep Reinforcement Learning)
 

Upgrading to Sitecore 9

  • 1. Upgrading to Sitecore 9 The (rocky) road to enlightenment
  • 2. Disclaimer All information in this presentation is provided with no warranty of any kind.
  • 5. Where shall I start? • Read Upgrade Guide on dev.sitecore.net? • Follow steps from Upgrade Guide on your local machine? This is likely not going to work on a large solution
  • 6. Task breakdown Migrate Codebase Migrate Infrastructure Migrate Data Upgrade Modules
  • 7. How long will it take? • «It depends» (but not by Monday!) • Customizations (Speak-Apps, Custom dialogs,…) • Modules (EXM, WFFM, Commerce, 3rd party) • Complexity of codebase • Complexity of environments / roles (Staging, QA, Processing) Plan for several sprints
  • 8. Project planning Migrate Codebase Migrate Data Migrate Infrastructure Partial Regression testing Regression testing Load testing Final testing Go live Migrate Codebase Migrate Infrastructure Migrate Data Upgrade Modules Content Freeze Repeat as needed Disable modules at first
  • 9. Expect things to fail! • Smoke tests are not enough! • Thorough regression testing • Authoring functionality • Modules and 3rd party code • Customizations (Dialogs, Ribbons, Pipelines…) • In-depth technical testing • Load tests • Log analysis • Background jobs • Indexing • xConnect • Monitoring tools • Disaster recovery plans
  • 10. Expect things to fail! • Manage expectations of Business users and Stakeholders
  • 12. Express or Standard? • Express Migration Tool https://dev.sitecore.net/Downloads/Express_Migration_Tool.aspx • Applies to Sitecore 6.6,7.2, 7.5 or 8.0 • Migrates content items and media • Migrates All users, roles and security permissions • Assists with configuration migrations • Migrates Web Forms For Marketers items and data • Update Package (Standard) • Applies to Sitecore 8.1, 8.2, 9.x • Migates master + core databases • Assists with configuration migrations • No WFFM migration
  • 13. Update Package • All required steps are described in the Upgrade Guide of the version you’re upgrading to Must read and follow!! • Package Installation Wizard • Assists with config transformations • Migrates databases • Warns if modified items will be overwritten • Warns if items are missing • Warns if deprecated API is used (less useful)
  • 14. Update Package • Speed up things 1. Set up a clean Sitecore solution with same revision as yours (i.E. 8.1 Update-2) 2. Point connection strings to core + master database that need to be upgraded 3. Run Update Package only with option «Install items» 300GB Master database in 45mins
  • 15. Migrate xDB to xConnect • Use xDB Data Migration Tool • Process will take several days! • Likely to fail • Backup plan? • Identify exactly what data Business needs • Manually extract specific data from MongoDB and create xConnect interactions / contacts • Dump all other data xDB Useful data Other data
  • 17. Apply best Practices first • Always patch configs, never change them directly Helix Docs • Separate implementation files from standard frameworks and files • Separate repository from webroot  Helix Docs
  • 18. Update dependencies • Update Target framework • Use Nuget Packages from sitecore.myget.org • Use .NoReferences packages! • Good practice: Remove all Sitecore dlls from your repo • Update common Nuget packages to match versions used by Sitecore • Newtonsoft.json • Antlr • … • Apply Assembly redirects in web.config
  • 19. Cleanup Support dlls/patches • Remove all obsolete Sitecore Support patches • Patch configs • References in Items • Files (i.E. override xmls) • How do I know if it is obsolete? • Not always easy • My Documentaion of Support Tickets • Sitecore Support Github https://github.com/SitecoreSupport/ • Sitecore Release notes • Decompile code of Support dll
  • 20. Apply API changes • xDB Identify()  new source field • xDB Facets • Caution: Code will still compile and work, but facets aren’t saved after session ends. Saving facets needs to be done through xConnect Details Dynamic placeholders Migrate with Powershell depending on your implementation Example • Most API changes around Sitecore 8.2 • IoC  Details • Caching  Details • Code in Globals.asax ignored Use initialize pipeline instead
  • 21. Apply config changes • New layered configuration Details • Sitecore • Modules • Custom (include) • Environment Do not touch! Your config goes here
  • 22. Apply config changes • Rule-based config  Details • No need for custom config transformation for CM/CD/Processing,… • Preview config transformations with new Admin Page «Show Config Layers»
  • 23. Apply config changes • .patch.config files for modified Sitecore configs • Manually check each .patch.config for plausibility • Manally check if .patch.configs need to be required to specific role (CD / CM / …) • SOLR Config changes Details • Example config provided in App_config/Include/Examples • New DocumentOptions node
  • 24. Modified Sitecore.config? «You’re on your own, mate» • Only configs in App_Config/Include are transformed to .patch.config files • Manually extract your config changes to patch configs • Prefetch.config & Co Manually merge
  • 26. Migrate WFFM • When not using Express Migration, install update packages Step-By-Step • To 8.2 initial  UpgradePostSteps for 8.2 will fail! Use my Admin page instead • To 9.0 initial • To 9.0 Update-2 • Very little API change
  • 27. Migrate WFFM to SC Forms?
  • 28. Migrate EXM • Email Experience Manager is now integrated into standard installation • Payed subscription still required though • Migration tool for legacy lists to xConnect See documentation
  • 30. New server requirements • SQL Server 2016 • Solr 6 with SSL • IIS • SSL bindings • Multiple hosts (xConnect, Site) • Windows Services Details see Upgrade Guide
  • 31. MongoDB or SQL? «It depends» • SQL as data storage for xConnect • No separate server to maintain • SQL Server Know-how usually already in-house • MongoDB hosting in cloud can be tricky • MongoDB for xConnect • Is officially supported since Sitecore 9.0 Update-2
  • 33. Infrastructure • Create SIF Scripts for each role • Based on XP Scaled • Protip: disable Database deployment in archive.xml of Web Deploy packages • Include your certificates • Extend monitoring • xConnect endpoint • Marketing Automation service
  • 34. SOLR Managed Schema • New managed schema  Details • Still possible to use legacy schema.xml files  Details • Customizations on Schema • Add / Remove / Modify field types and fields  Solr docs • Blogpost with example implementation Details
  • 35. Recap Migrate Codebase Migrate Data Migrate Infrastructure Partial Regression testing Regression testing Load testing Final testing Go live Migrate Codebase Migrate Infrastructure Migrate Data Upgrade Modules Content Freeze Repeat as needed Disable modules at first
  • 36. Key takeaways • Applying best practices helps greatly with upgrades • Expect things to fail: Thorough testing is required • Splitting Upgrade process into separate steps makes process more manageable • Migrating xDB data to xConnect is currently shaky