You are designing an upgrade strategy for a Windows Azure application that includes one web role with one instance.
You have the following requirements:
– Test the application on the Windows Azure platform.
– Ensure that application upgrades can be rolled back.
– Ensure that upgrade and rollback processes do not cause downtime.
You need to recommend an approach for upgrading the application.
What should you recommend?
A.
Deploy to the Production slot.
Test the application, and then perform a VIP swap.
B.
Deploy to the Staging slot.
Test the application, and then perform a VIP swap.
C.
Deploy to the Staging slot.
Test the application, and then perform a manual in-place upgrade to the Production slot.
D.
Deploy to the Staging slot.
Test the application, and then perform an automatic in-place upgrade to the Production slot.
Explanation:
Run Set-AzureDeploymentSlot from the service directory to set the deployment environment for the current service to either Staging or Production. This updates the DeploymentSettings.json file for the service.
A hosted service is a service that runs your code in the Windows Azure environment. It has two separate deployment slots: staging and production. The staging deployment slot allows you to test your service in the Windows Azure environment before you deploy it to production.You can upgrade your service by deploying a new package to the staging environment and then swapping the staging and production deployments. This type of upgrade is called a Virtual IP or VIP swap, as it swaps the addresses of the two deployments. Both deployments remain online during the swap process. You can swap VIPs using the Windows Azure Platform Management Portal, or by using the Service Management API.
If you are upgrading your service with a new service definition file, you must swap VIPs; you cannot perform an in-place upgrade. However, you can swap VIPs only if the number of endpoints specified by the service definition is identical for both deployments. For example, if you add an HTTPS endpoint to a web role that previously exposed only an HTTP endpoint, you cannot upgrade your service using a VIP swap; you’ll need to delete your production deployment and redeploy instead