Azure VM load balancing vs Traffic Manager Azure VM load balancing vs Traffic Manager azure azure

Azure VM load balancing vs Traffic Manager


James,

I think you already have most of it figured out.

VM load balancing:

  1. Works only with VMs that are in the same region
  2. Only does Round Robin Uses a hash-based algorithm for distribution of inbound flows
  3. Works at the TCP/UDP level, routing traffic between one or more private endpoints that sit behind a public endpoint

https://www.windowsazure.com/en-us/manage/windows/common-tasks/how-to-load-balance-virtual-machines/

Traffic Manager is different in that:

  1. It can work across regions
  2. It offers traffic management policies other than round robin (e.g. failover, performance)
  3. It works at the DNS level, “routing”** traffic between one or more public endpoints that sit behind a common DNS name

https://azure.microsoft.com/en-us/documentation/articles/traffic-manager-manage-profiles/

You can indeed use the Load Balancer and the Traffic Manager in tandem, you hit the nail on the head there.

--

Vlad

** Traffic manager does not actually route traffic, it just serves to the caller the DNS name of the public endpoint where their traffic should go according to the policies in effect.


Azure Traffic Manager.

The job of Azure Traffic Manager is to route traffic globally based on flexible policies, enabling an excellent user experience that aligns with how you've structured your application across the world. Traffic Manager has several different policies:

Latency. Direct to the "closest service"

Round Robin. Distribute across all services

Failover. Direct to backup if primary fails

Nested. Flexible multi-level policiesenter image description here

Azure Load Balancer

The job of Azure Load Balancer is to direct traffic inside a region. This is combined with Azure Traffic Manager, where traffic manager routes interior to a region between virtual machines. If you combine the two you get global traffic management combined with local failover.enter image description here

Load Balancer differencesThere are different options to distribute network traffic using Microsoft Azure. These options work differently from each other, having a different feature set and support different scenarios. They can each be used in isolation, or combining them.

Load Balancer differences

There are different options to distribute network traffic using Microsoft Azure. These options work differently from each other, having a different feature set and support different scenarios. They can each be used in isolation, or combining them.

Azure Load Balancer works at the transport layer (Layer 4 in the OSI network reference stack). It provides network-level distribution of traffic across instances of an application running in the same Azure data center.

Application Gateway works at the application layer (Layer 7 in the OSI network reference stack). It acts as a reverse-proxy service, terminating the client connection and forwarding requests to back-end endpoints.

Traffic Manager works at the DNS level. It uses DNS responses to direct end-user traffic to globally distributed endpoints. Clients then connect to those endpoints directly.

enter image description here

LINKS:

https://docs.microsoft.com/en-us/azure/traffic-manager/traffic-manager-overview

https://docs.microsoft.com/en-us/azure/load-balancer/load-balancer-overview

https://www.concurrency.com/blog/w/azure-traffic-manager-vs-azure-load-balancer


There are two important items I think needs mentioning. Traffic manager does not load balance, it's intelligent DNS resolver. Azure load balancer doesn't provide any affininty. Second distinction is Traffic Manager can only resolve to Azure Endpoints which doesn't work well if you have hybrid setup where your service endpoints are split between Azure and your datacenter or other public/private cloud locations.

For both shortcomings, you need to rely on partner offerings.