I am Dale Hayter, a Microsoft and VMware certified Technical Consultant.

My blog has been built up over the years from my experience of working on an IT helpdesk and also from being out on-site.

Create an External Load Balancer in Azure Classic with PowerShell

If you are deploying a service like ADFS Web Application Proxy servers, you will need to load balance them so that if one fails then the other takes over. In this article I will detail the Azure Classic PowerShell commands needed to create this load balancer. Unfortunately you will need to use PowerShell if you have provisioned DSv2 machines in classic as you cannot do this in the GUI.!!

loadbalancing

The servers you want to load balance need to exist in the same cloud service. My cloud service name for this example is “proxyservice”. My 3 servers are called Proxy01, Proxy02 and Proxy03.

Server 1

Get-AzureVM -ServiceName "proxyservice" -Name "proxy01" | Add-AzureEndpoint -Name "HttpIn" -Protocol "tcp" -PublicPort 80 -LocalPort 80 -LBSetName "ProxyHTTP" -ProbePort 80 -ProbeProtocol "tcp" | Update-AzureVM

Server 2

Get-AzureVM -ServiceName "proxyservice" -Name "proxy02" | Add-AzureEndpoint -Name "HttpIn" -Protocol "tcp" -PublicPort 80 -LocalPort 80 -LBSetName "ProxyHTTP" -ProbePort 80 -ProbeProtocol "tcp" | Update-AzureVM

Server 3

Get-AzureVM -ServiceName "proxyservice" -Name "proxy03" | Add-AzureEndpoint -Name "HttpIn" -Protocol "tcp" -PublicPort 80 -LocalPort 80 -LBSetName "ProxyHTTP" -ProbePort 80 -ProbeProtocol "tcp" | Update-AzureVM

The command below was one I used to load balance HTTPS on a Web Application Proxy farm. I ran the same command for each server.

loadbalance