A different road to Sitecore 8 Upgrade

This series of posts will concentrate on the challenges of upgrading from an older version (6.x, 7.0 to 7.2) of Sitecore to the latest and greatest. I don’t need to bore you with all the cool things you get with Sitecore 8. Let me sum it up with one image:

sitecore8

Our journey starts with a lot of decisions:

  • Is the upgrade worth the cost?
  • My current system works fine, can we do the upgrade later?
  • How much is this going to cost?
  • Do we need a new infrastructure?
  • We have no internal resources who know Mongo, What do I do about MongoDB?
  • — and more?

Some of the things which will help you make your decision:

  • Do you purge/archive Analytics database often?
  • Are you on pre-Sitecore 7 version?
  • Do you rely on Sitecore support for your development effort?
  • Are you planning on implementing or enhancing your DMS capabilities/goals?
  • and the ton of features Sitecore 8 provides!

For Sitecore versions 6.5 and 6.6 the main stream support ends this year. Please check out the Sitecore Product Support Lifecycle.

There are several factors to consider before planning for a Sitecore upgrade. A few of them are listed below:

  • Are all your custom config changes isolated in include configs in App_Config\Include folder?
  • Are you using Sitecore shared modules?
  • Do you have third party integrations into Sitecore?
  • Do you have custom Sitecore Support DLL’s for your current solution?
  • Do you have a lot of Sitecore customizations (Pipelines, processors, commands, etc.)?
  • Are your running Sitecore 6.5/6.6 (Search code consideration since Sitecore search changed drastically starting Sitecore 7)?

Assumptions

Our case study is a hypothetical Sitecore 6.5 solution which we will assume that it has been in production for a few years. It was written in Web Forms. With a few shared source modules and a couple of external integrations. Config for the most part was in an external config but some changes needed to be done in the web.config due to the external integrations.

Wants

The wants are simple, we want the best for the site going forward. So in the best interest of the site, Sitecore 8 was picked. Now that release 3 is out, it should be a lot more stable!!

Also we want to move to Sitecore MVC and do it the right way with Dependency Injection with unit testing, the whole 9 yards!

Current Environment in this Hypothetical Situation

A typical Sitecore environment is shown in the images below:

Typical_Development

Typical_QA

Typical_Production

 

As with any upgrade the main concern is the infrastructure and ongoing costs for the upgrade. Along with this concern if we look at the upgrade path for a 6.5 instance to a Sitecore 8 release 3, its mind blowing.

Technology considerations such as SQL Server version minimal requirement for 8 as opposed to an old 6.5 install, search technology like Solr or Coveo, WFFM and Mongo DB among others will come into play.

The normal upgrade path from a Sitecore 6.5 Initial release to Sitecore 8 Update 3 is depicted in the flow below:

sitecore 8 upgrade

Based on all of the above information, it looks like its a huge undertaking and it is. After each version upgrade there is testing to do, may be code changes etc. Is this enough for you to call it quits??

Well wait for my next blog post in this series to find out about a different approach. This might help you make your decision and cut your costs.

As usual if you have any questions or comments, do not hesitate to get in touch with me.

6 thoughts on “A different road to Sitecore 8 Upgrade”

  1. Hi,

    Probably, in your situation, you should consider a different upgrading approach, for example extracting your customization and moving it to the pure Sitecore 8.0 Update-3. There are too many changes in between 6.5 and 8.0 line. Using step by step upgrade require additional testing after every step. Otherwise it would be very difficult to investigate problems after final step.

    In case you don’t keep customized content serialized under the source control you can just serialize your items and compare with clean Sitecore serialization using any diff tool (e.g. winmerge, etc.) or API from Sitecore.Update assembly.

    However just moving your content and configuration to a new Sitecore version might not be enough. You should carefully analyze release notes for every major version and define areas that could affect your solution.

    Thanks

  2. Hi,
    We are upgrading from 7.2 to 8.1.
    Currently upgraded it from 7.2 to 7.5, when trying to integrate MongoDB, we came to know that Client have already setup Mongo 3.0 with SSL Authentication (Which 7.2 doesn’t support, I guess. It is supported by Sitecore 8.0o Update 5 onwards). Please visit the URL below:

    https://kb.sitecore.net/articles/087164
    https://community.sitecore.net/developers/f/5/t/2286

    I tried the solution given by Sean but that dint.

    So here can I upgrade it to Sitecore 8.0 Update 5 first and then perform the following tasks:
    1. MongoDB Integration
    2. Analytics DB conversion
    3. WFM Module Upgrade and Data Conversion

    Please suggest.

Leave a Reply

Your email address will not be published. Required fields are marked *