We are currently in the process of moving our entire infrastructure to a different region in Azure. When we first started no datacenter were available in Canada (East), so we went with an hybrid stack Website in Azure (US-East) and a Virtual Machine hosting our DB in the required province. We had an OK experience, but some errors occurred once in a while. With the new datacenter being up and running for a while now in Canada, our client has decided to make the move


Previous Production Setup:

Current Production Setup

We have, of course, already sent out a maintenance email to our clients in order to NOT disrupt their work. Our full infrastructure is created using custom ARM templates and we have everything in place to move our data.

We wanted to do most of the operations before the planned shutdown, some were easily done while others demanded some investigation or just had to be done when the old production was down and the new one was up.

I was responsible for the DNS, Domain Name (in Azure) and SSL, you know the fun ones!! It turned out OK in the end, besides the SSL config from Let’s Encrypt everything else was done prior to the maintenance window:

  • TTL of our site was lowered to 10 minutes two days prior
  • Registered the domain name in our new production site using TXT entries
  • Added the Let’s encrypt extension in the new production while copying the correct values in my Application Settings

Like I mentioned the SSL config using Let’s Encrypt with the extension will generate a certificate once it communicated with the site for which the cert is required, in our case that was already setup and traffic was already transferred to https so that had to wait until the new prod was up anyways.

Production DOWN

Once the production site was taken offline everything else went almost smoothly (it never does). The cert was installed by running the extension, the TTL was increased as well as redirected to the proper AppService, and we just went our merry way.