the art of sitecore upgrades - sitecore user group .../media/sugnl/meetings/sugnl meeting... · 9...

36
The Art of Sitecore Upgrades Ruud van Falier Co-founder & Senior Consultant @ ParTech Sitecore MVP 2013-2017

Upload: others

Post on 13-Jul-2020

3 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: The Art of Sitecore Upgrades - Sitecore User Group .../media/SUGNL/Meetings/SUGNL Meeting... · 9 • Update Package • Contains added and updated files & items, a record of removed

The Art of Sitecore Upgrades

Ruud van Falier

Co-founder & Senior Consultant @ ParTech

Sitecore MVP 2013-2017

Page 2: The Art of Sitecore Upgrades - Sitecore User Group .../media/SUGNL/Meetings/SUGNL Meeting... · 9 • Update Package • Contains added and updated files & items, a record of removed

2

Who am I?

Ruud van FalierCo-founder ParTech (2011)

Sitecore MVP (2013 – 2017)

E-mail: [email protected]

Twitter: @BrruuD

Page 3: The Art of Sitecore Upgrades - Sitecore User Group .../media/SUGNL/Meetings/SUGNL Meeting... · 9 • Update Package • Contains added and updated files & items, a record of removed

3

• What is a Sitecore upgrade?

• Upgrade methods

• Express Migration Tool

• Upgrade considerations

Overview

Page 4: The Art of Sitecore Upgrades - Sitecore User Group .../media/SUGNL/Meetings/SUGNL Meeting... · 9 • Update Package • Contains added and updated files & items, a record of removed

What is a Sitecore upgrade?

Page 5: The Art of Sitecore Upgrades - Sitecore User Group .../media/SUGNL/Meetings/SUGNL Meeting... · 9 • Update Package • Contains added and updated files & items, a record of removed

5

When a new Sitecore version is released, it means Sitecore has (potentially) modified (added/modified/removed):

• Files (binaries, server-side scripts, client-side scripts, config files)

• Database schema and data

• Items (templates, system items)

Applying these changes to your existing Sitecore implementation is what we consider to be a Sitecore Upgrade.

What is a Sitecore upgrade?

Page 6: The Art of Sitecore Upgrades - Sitecore User Group .../media/SUGNL/Meetings/SUGNL Meeting... · 9 • Update Package • Contains added and updated files & items, a record of removed

Upgrade methods

Page 7: The Art of Sitecore Upgrades - Sitecore User Group .../media/SUGNL/Meetings/SUGNL Meeting... · 9 • Update Package • Contains added and updated files & items, a record of removed

7

There are several methods for upgrading Sitecore to a newer version:

1. Incremental upgrade using Update Packages

2. Migrating content to a clean Sitecore instance (using the latest version)

3. Using the Express Migration Tool

Upgrade methods

Page 8: The Art of Sitecore Upgrades - Sitecore User Group .../media/SUGNL/Meetings/SUGNL Meeting... · 9 • Update Package • Contains added and updated files & items, a record of removed

8

• When a new version is released, Sitecore provides us with an:

• Upgrade Guide

• Release Notes

• Update Package

• Archive with configuration files:

• SQL scripts

• .config files

• You can find these on:https://dev.sitecore.net

1. Incremental upgrade using Update Packages

Page 9: The Art of Sitecore Upgrades - Sitecore User Group .../media/SUGNL/Meetings/SUGNL Meeting... · 9 • Update Package • Contains added and updated files & items, a record of removed

9

• Update Package

• Contains added and updated files & items, a record of removed files & items and post-install logic

• Rename the .update file to .zip to examine its contents

• There is one update package for each revision of Sitecore

• For example:

• There exists Sitecore 7.5 rev 150130, 8.0 rev 141212 and 8.1 rev 151003

• If you need to upgrade from 7.5 rev 150130 to 8.1 rev 151003, you will need 2 update packages:

• 7.5 rev 150130 8.0 rev 141212

• 8.0 rev 141212 8.1 rev 151003

1. Incremental upgrade using Update Packages

Page 10: The Art of Sitecore Upgrades - Sitecore User Group .../media/SUGNL/Meetings/SUGNL Meeting... · 9 • Update Package • Contains added and updated files & items, a record of removed

10

• Since Sitecore 8.1, a single Update Package can consist of multiple Update Packages

• Rename the .update file to .zip to examine its contents:

1. Incremental upgrade using Update Packages

Page 11: The Art of Sitecore Upgrades - Sitecore User Group .../media/SUGNL/Meetings/SUGNL Meeting... · 9 • Update Package • Contains added and updated files & items, a record of removed

11

• Steps for an incremental upgrade (in general):

1. Read the Upgrade GuideThis is crucial as the upgrade guide tells you about the prerequisites and what steps are specific to your version. Each version may have different steps!

2. Run pre-install SQL scripts (see Upgrade Guide if this applies to your version)

3. Update the Update Installation Wizard tool (again, see Upgrade Guide whether this step applies to your version)This is done by installing a Sitecore Package.

4. Install the Update Package using the Update Installation Wizard, found at

http://<hostname>/sitecore/admin/UpdateInstallationWizard.aspx

(…continued on next slide)

5. Run post-install SQL scripts (if this applies to your version)

1. Incremental upgrade using Update Packages

Page 12: The Art of Sitecore Upgrades - Sitecore User Group .../media/SUGNL/Meetings/SUGNL Meeting... · 9 • Update Package • Contains added and updated files & items, a record of removed

12

• Let’s take a look at the Update Installation Wizard…

• First we need to upload or select our Update Package

1. Incremental upgrade using Update Packages

Page 13: The Art of Sitecore Upgrades - Sitecore User Group .../media/SUGNL/Meetings/SUGNL Meeting... · 9 • Update Package • Contains added and updated files & items, a record of removed

13

• Sitecore will automatically detect what “sub package” to use for your instance (only for 8.1 rev 151003 and later!)

1. Incremental upgrade using Update Packages

Page 14: The Art of Sitecore Upgrades - Sitecore User Group .../media/SUGNL/Meetings/SUGNL Meeting... · 9 • Update Package • Contains added and updated files & items, a record of removed

14

• Then we must run an Analysis of the update (this is required in the latest version of the Update Installation Wizard)

1. Incremental upgrade using Update Packages

Page 15: The Art of Sitecore Upgrades - Sitecore User Group .../media/SUGNL/Meetings/SUGNL Meeting... · 9 • Update Package • Contains added and updated files & items, a record of removed

15

• After analysis, we can install the package

1. Incremental upgrade using Update Packages

Page 16: The Art of Sitecore Upgrades - Sitecore User Group .../media/SUGNL/Meetings/SUGNL Meeting... · 9 • Update Package • Contains added and updated files & items, a record of removed

16

• Configuration changes are largely applied automatically by the Update Installation Wizard

• You may need to apply some manual changes (web.config changes for example), which will be listed in Configuration files for update and mentioned in the Upgrade Guide

• Upgrades will be less painful if you never modify any of the standard Sitecore configuration (.config) files during development

• However, the latest Update Installation Wizard offers a merge tool that allows you to resolve conflicts due to modified configuration

1. Incremental upgrade using Update Packages

Page 17: The Art of Sitecore Upgrades - Sitecore User Group .../media/SUGNL/Meetings/SUGNL Meeting... · 9 • Update Package • Contains added and updated files & items, a record of removed

17

1. Incremental upgrade using Update Packages

Page 18: The Art of Sitecore Upgrades - Sitecore User Group .../media/SUGNL/Meetings/SUGNL Meeting... · 9 • Update Package • Contains added and updated files & items, a record of removed

18

• I find that it’s less prone to errors when you let the Update Installation Wizard only install items and not files.

• You can easily take the files from the ZIP archive of the Sitecore root of the target version and copy them to your Sitecore instance root, replacing all the old, standard Sitecore files and adding new ones.

• You do have to consider that files may have been removed entirely in the target version. Use a tool like WinMerge to determine if you need to remove any files.

• The latest version of the Update Installation Wizard allows you to choose whether files must be installed. For older versions, you can manually modify the update packages and remove the files from them.

1. Incremental upgrade using Update Packages

Page 19: The Art of Sitecore Upgrades - Sitecore User Group .../media/SUGNL/Meetings/SUGNL Meeting... · 9 • Update Package • Contains added and updated files & items, a record of removed

19

• You take a clean Sitecore instance of the latest version, package all your custom content items (and files) from your old instance and install them into the new instance

• This method is usually a lot faster than installing incremental update packages (especially when upgrading from <8.1)

• However, it is not a recommended method for upgrading.

• The regular upgrade process may include database schema changes and updates to existing, custom content items.If you skip these steps there will be side effects!

• You may not get support from Sitecore

2. Migrating content to a clean Sitecore instance

Page 20: The Art of Sitecore Upgrades - Sitecore User Group .../media/SUGNL/Meetings/SUGNL Meeting... · 9 • Update Package • Contains added and updated files & items, a record of removed

Express Migration Tool

Page 21: The Art of Sitecore Upgrades - Sitecore User Group .../media/SUGNL/Meetings/SUGNL Meeting... · 9 • Update Package • Contains added and updated files & items, a record of removed

21

• Upgrading from 6.6 or 7.2 to the latest version involves a large number of incremental updates

• This makes these upgrades very time consuming and complex

• Sitecore has introduced the Express Migration Tool to help with this process

• This tool is a Windows Executable that you run locally

Express Migration Tool

Page 22: The Art of Sitecore Upgrades - Sitecore User Group .../media/SUGNL/Meetings/SUGNL Meeting... · 9 • Update Package • Contains added and updated files & items, a record of removed

22

• The Express Migration Tool migrates entities from your old instance to a new, clean instance of the latest version:

Express Migration Tool

Page 23: The Art of Sitecore Upgrades - Sitecore User Group .../media/SUGNL/Meetings/SUGNL Meeting... · 9 • Update Package • Contains added and updated files & items, a record of removed

23

Page 24: The Art of Sitecore Upgrades - Sitecore User Group .../media/SUGNL/Meetings/SUGNL Meeting... · 9 • Update Package • Contains added and updated files & items, a record of removed

24

Page 25: The Art of Sitecore Upgrades - Sitecore User Group .../media/SUGNL/Meetings/SUGNL Meeting... · 9 • Update Package • Contains added and updated files & items, a record of removed

25

Page 26: The Art of Sitecore Upgrades - Sitecore User Group .../media/SUGNL/Meetings/SUGNL Meeting... · 9 • Update Package • Contains added and updated files & items, a record of removed

26

Page 27: The Art of Sitecore Upgrades - Sitecore User Group .../media/SUGNL/Meetings/SUGNL Meeting... · 9 • Update Package • Contains added and updated files & items, a record of removed

27

Page 28: The Art of Sitecore Upgrades - Sitecore User Group .../media/SUGNL/Meetings/SUGNL Meeting... · 9 • Update Package • Contains added and updated files & items, a record of removed

28

• Only supports 6.6 & 7.2 revisions as your source (old) version

• Only supports 8.2 update-1 as your target (new) version

• Can also migrate WFFM from 2.4 to 8.2 update-1

• Download at: https://dev.sitecore.net/Downloads/Express_Migration_Tool

Express Migration Tool

Page 29: The Art of Sitecore Upgrades - Sitecore User Group .../media/SUGNL/Meetings/SUGNL Meeting... · 9 • Update Package • Contains added and updated files & items, a record of removed

Upgrade considerations

Page 30: The Art of Sitecore Upgrades - Sitecore User Group .../media/SUGNL/Meetings/SUGNL Meeting... · 9 • Update Package • Contains added and updated files & items, a record of removed

30

• Code compatibility

• Your implementation could potentially contain custom code that uses deprecated API calls or is no longer compatible

• The older your source version is, the more likely you are going to run into code compatibility issues

• Analyze the release notes for all releases between your old version and the target version to determine how your implementation is affected by the changes

• Also take into account Support Patch DLL’s, workarounds for known bugs and changes in configuration

Upgrade considerations

Page 31: The Art of Sitecore Upgrades - Sitecore User Group .../media/SUGNL/Meetings/SUGNL Meeting... · 9 • Update Package • Contains added and updated files & items, a record of removed

31

• Upgrading from 6.x, 7.0, 7.1 or 7.2 to the latest version will require additional infrastructure

• MongoDB is required since 7.5

• Important role of the Analytics search index for xDB (Experience Profile) and EXM may require you to use SOLR instead of Lucene

• Aggregation framework (xDB Processing) may require an additional instance

Upgrade considerations

Page 32: The Art of Sitecore Upgrades - Sitecore User Group .../media/SUGNL/Meetings/SUGNL Meeting... · 9 • Update Package • Contains added and updated files & items, a record of removed

32

• Perform upgrades locally and deploy the result when it’s finished

• This requires a content stop (period in which no content editing is allowed)

• A simplified (!) upgrade process would be:• Take a copy of the production databases

• Upgrade the databases

• Upgrade your instance files and configuration

• Test, fix, test, fix, test…

• When you are ready to go live, start the content stop

• Take a copy of the latest production databases again

• Upgrade the database

• Deploy all the things!

• End the content stop

Upgrade considerations

Page 33: The Art of Sitecore Upgrades - Sitecore User Group .../media/SUGNL/Meetings/SUGNL Meeting... · 9 • Update Package • Contains added and updated files & items, a record of removed

33

Considerations per version• 6.x

Seriously consider rewriting the implementation (6.6 was first released nearly 5 years ago)Your solution is most likely not set up in a way to allows you to leverage all the new features that have come available in the later versions.

• 7.0 – 7.1Are you using MVC? Are you leveraging Page Editor? Have you separated your solution from your instance? Do you consider your solution to be future proof?You can consider upgrading, but you will first need to upgrade to 7.2 manually. Once upgraded to 7.2 you can use the Express Migration ToolTake into account that DMS architecture has changed significantly!

• 7.2Are you using MVC? Are you leveraging Page Editor? Have you separated your solution from your instance? Do you consider your solution to be future proof?Upgrade using the Express Migration ToolTake into account that DMS architecture has changed significantly!

• 7.5Upgrading should be relatively painless, but you will need to manually upgrade from 7.5 to 8.0 rev 141212 to 8.1 rev 151003 and then to 8.2

• 8.0Upgrading should be relatively painless, but you will need to manually upgrade from 8.0 rev 141212 to 8.1 rev 151003 and then to 8.2

• 8.1+Upgrading should be relatively painless. You can upgrade using one Update Package.

Upgrade considerations

Page 34: The Art of Sitecore Upgrades - Sitecore User Group .../media/SUGNL/Meetings/SUGNL Meeting... · 9 • Update Package • Contains added and updated files & items, a record of removed

34

• Keep your solution separated from your Sitecore instance.

• This allows you to easily replace all the standard (out-of-the-box) Sitecore files with those from the latest version

• Never modify any standard Sitecore .config files during development

• Never modify any of the other standard Sitecore files (stuff that is in /sitecore) during development

• First update your databases (using the Update Package(s)), then update your files.

• This applies especially to upgrades that require multiple update packages

Upgrade considerations

Page 35: The Art of Sitecore Upgrades - Sitecore User Group .../media/SUGNL/Meetings/SUGNL Meeting... · 9 • Update Package • Contains added and updated files & items, a record of removed

35

• No upgrade is the same!

• Always read the Upgrade Instructions thoroughly

• Treat every step as required. You never know what consequences missing a step may have

• Analyze the release notes for all releases between your old version and the target version

Upgrade considerations

Page 36: The Art of Sitecore Upgrades - Sitecore User Group .../media/SUGNL/Meetings/SUGNL Meeting... · 9 • Update Package • Contains added and updated files & items, a record of removed

Thanks!

Contact me:

@BrruuD

[email protected]