Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Why does Azure deployment take so long?

People also ask

How long does an Azure deployment take?

It takes approximately 10-15 minutes to complete the deployment. Provide all the necessary information as is shown. Once the deployment is successful, the list of all the resources will be displayed on the Azure Portal.

How long does it take to redeploy an Azure VM?

Clicking Redeploy will take the VM offline and start the Redeploy process. It takes just a few minutes to complete. Once finished, the VM is running on a new host. The Activity Logs will show that the Redeploy ran and if it was successful.

How long does it take to deploy Azure firewall?

How long does it take for Azure Firewall to scale out? Azure Firewall gradually scales when average throughput or CPU consumption is at 60%. A default deployment maximum throughput is approximately 2.5 - 3 Gbps and starts to scale out when it reaches 60% of that number. Scale out takes five to seven minutes.

Why are Azure VMs so slow?

Why are still things going slow? There might still be configuration issues related to the VM that can impact performance. One is what kind of VM SKU that you use. Within Azure you have different VM SKU's which use different CPU architectures (and some with GPU) and they also have different horsepower as well.


As a fellow Azure user, I share your pain - deploying isn't "quick"/"painless" - and this hurts especially when you're in a development cycle and want to test dev iterations on Azure. However, in general deployments should take much less than 60 minutes - and less than 20 minutes too.

Steve Marx provided a brief overview of the steps involved in deployment: http://blog.smarx.com/posts/what-happens-when-you-deploy-on-windows-azure

And he references a deeper level explanation at: http://channel9.msdn.com/blogs/pdc2008/es19


There's a lot that goes on behind the scenes when you deploy an application to the Azure cloud. I don't have any special insight into what's going on behind the curtain, but having worked on the VS tools to upload projects to the Azure cloud, these are my impressions as an outsider looking in:

Among other things:

  1. Hardware must be allocated from the available pool of servers
  2. The VHD of the core OS must be uploaded to the machine
  3. A VM instance must be initialized and booted off that VHD image
  4. Your application package must be copied to the VM and installed
  5. The VM monitor must wait for your service to start up, or fail
  6. The data center load balancer and firewall must be made aware of your application's service endpoints
  7. Once all of that has synchronized, your app is accessible from the web.

The VHD image is probably gigabytes in size, much larger than your app upload. Even on a superfast datacenter network, it takes time to move that much stuff into the VM, unpack it, and boot from it. Also, the load balancer and firewall are probably optimized to make routing requests the highest priority. Reconfiguring the firewall and load balancer is lower priority, and has to be done without interrupting traffic flow.

Also note that all this work only has to be done for a new deployment. Updating an existing deployment rolls out much faster - 2 to 3 minutes instead of 20 to 30 minutes.


Check out this PDC10 video by Mark Russinovich. He goes into great detail on what's going on inside Azure with some insights into the (admittedly slow) deployment process.

Original link is no longer working. Here's another link to a version of the same presentation: https://channel9.msdn.com/events/Build/BUILD2011/SAC-853T