5
votes

If a web application is deployed as an Azure Cloud Service (Web Role) with multiple instances, should I still put a load balancer in front of its endpoints (HTTP and HTTPS)?

On Azure's product page it says load-balancing it taken care by Azure internally:

Once your application is deployed, that’s it: From provisioning, to load-balancing, to health monitoring, Azure handles the rest.

If that's the case, what benefits will adding a load balancer bring?

1

1 Answers

10
votes

No, Cloud Services includes the load balancer in front of your web role instances automatically for external endpoints. Outside of this automatic usage, the load balancer service is also used now for people using Azure Virtual Machines and can also be used internally (as in behind the firewall to load balance work across multiple VMs for back end processing). The internal load balancer feature will come eventually to Cloud Services as well so that you can do things like load balancer across worker roles or web roles not meant to be exposed to the Internet. I think this will be supported once the configuration settings in the Service Definition and Service Configuration are added.

You can read more documentation on MSDN on setting one up for Virtual Machines, and for internal load balancing.

There is also a good Blog post on the service.