Daniel Ovaska
Nov 22, 2023
  2555
(1 votes)

Change datacenter for DXP

Did you know it is actually possible to switch DXP datacenter to a new one? I didn't. But a customer of mine really needed to switch to a data center in Sweden from a North Europe one to avoid some geofencing issues as well as speed up response times for end customer and this is actually possible using the migration tool from Optimizely. If you didn't know already, using an Azure data center in Sweden has been possible only for a year or two so older customers in Sweden has been forced to use the North Europe one instead.

The main intent of the migration tool is to be able to migrate a site from CMS 11 => 12 but it can also be used to only switch data centers if you really need to. 

As a tech lead for this project I had a few concerns about this.

  1. How long downtime would it be?
  2. How well can content be synched and tested? Can it be done multiple times?
  3. How are certificates and custom domain handled? Do we have to redo those for new environments from scratch?
  4. Is it as easy as it seems with the migration tool or does it have a million hidden bugs that I will step on when actually doing it?
  5. What about build pipelines? Will they need to be redone?

The short answer, it worked great!

The process on a high level is:

  1. Let Optimizely set up a new DXP instance and prepare the migration tool.
  2. Click the start button on migration tool
  3. Rebuild deploy pipeline and deploy code to new site environments (integration, preprod, production) using new access tokens
  4. Sync content and files to new site. Integration => new integration. Preproduction => new preproduction and finally for production.
  5. Test. At this time you still have temporary hostnames on new site.
  6. Go live! Move hostnames for integration => new integration, continue with the other environments. Sync content again if needed.
  7. Be happy!

You can read more in detail about each single step in the link above about the migration tool.

The old environments will still be there if you need to rollback for any reasons. We didn't so I haven't tried that part of the process.

Downtime was short. A handful of minutes for production environment in total. It will need to be in maintainance mode for last step when moving hostnames.

During the testing phase it was easy to move content and files multiple times between the old DXP to the new DXP instance. It took approximately 20 minutes for a large site to synch both db and blobs. Certificates and custom hostnames were moved by the tool and I didn't have to do any actions for that. Custom X509 client certificates used to identify the servers need to be reinstalled in new environment. We had one of those which support helped us to move. Make sure to get a pfx file that includes private key in that case. A cer file won't cut it. 

The tool to migrate between new and old solution worked flawlessly in our case. I was definitely impressed. 

Build pipeline from Azure devops => integration had to be redone. You need to generate some new access token for the new DXP instance and use those to deploy instead. This was done before lunch one day and no major hazzle. You can clone the existing pipeline and do a few variable changes and that is it.

So there you have it! If you need to switch datacenter to get close to your end users when Microsoft decides to open a new one closer to your location; Do it! Overall it was actually a surprisingly smooth experience.

Optimizely has you covered for this scenario.

Nov 22, 2023

Comments

Please login to comment.
Latest blogs
AEO/GEO: A practical guide

Search changed. People ask AI tools. AI answers. Your content must be understandable, citable, and accessible to both humans and machines. That’s...

Naveed Ul-Haq | Feb 17, 2026 |

We Cloned Our Best Analyst with AI: How Our Opal Hackathon Grand Prize Winner is Changing Experimentation

Every experimentation team knows the feeling. You have a backlog of experiment ideas, but progress is bottlenecked by one critical team member, the...

Polly Walton | Feb 16, 2026

Architecting AI in Optimizely CMS: When to Use Opal vs Custom Integration

AI is rapidly becoming a core capability in modern digital experience platforms. As developers working with Optimizely CMS 12 (.NET Core), the real...

Keshav Dave | Feb 15, 2026

Reducing Web Experimentation MAU Using the REST API

Overview Optimizely Web Experimentation counts an MAU based upon the script snippet rendering for evauluation of web experiement. Therefore when yo...

Scott Reed | Feb 13, 2026

Install the new AI Assistant Chat for Optimizely

AI Assistant Chat is a revolutionary feature introduced in version 3.0 of Epicweb.Optimizely.AIAssistant that brings conversational AI directly int...

Luc Gosso (MVP) | Feb 12, 2026 |

Building a TwoColumnWideLeftSection in Optimizely CMS 13 Visual Builder

This post walks through a practical “66% / 33%” section built for Visual Builder using the composition tag helpers: , , , and . Visual Builder is...

Francisco Quintanilla | Feb 12, 2026 |