0

What's the best practice for routing traffic away from an Azure website / role when you want to run an update.

Would you simply route away traffic using the Traffic Manager and wait the 5 minutes or however long you have the DNS TTL set to? That would work fine but it adds a lot of delay to deployments. Is there a better/faster way to route traffic away during a deployment?

Mr. Flibble
  • 723
  • 3
  • 13
  • 23

1 Answers1

1

You need to use what is called "Staged Deployment" in Azure.

When you create a site/role on Azure, you're actually using a production environment to host your site/roles in, this production environment is live and is serving people in real time, thus you can't actually do testing and bug fixing on it.

The Staged Deployment solution, you can create a replica of your production environment, this environment is live but it is not being used to serve people on the internet, so you may use it for your testing and bug fixing purposes.

Once your testing and fixing is done, you can "swap" both environment by a click of a button, where the production will become a staged environment, and the staged environment will become a production.

The benefit of this approach is that

  1. You will be avoiding all downtime for your end users when moving from testing to production.
  2. You can swap back the environments back to the way they were in case you found a problem in your new sites or app.
  3. You will have an environment that matches your production for your testing purposes that can be later used as a production site.

More info can be found here on how to use and activate the feature: http://azure.microsoft.com/en-us/documentation/articles/web-sites-staged-publishing/

Hope this helps.

Noor Khaldi
  • 3,869
  • 3
  • 19
  • 28