Azure Load Balancing

Azure Load Balancer is a high-performance, low-latency Layer 4 (TCP/UDP) load balancer that enables you to distribute network traffic effectively across your Azure virtual machines and virtual machine scale sets. It is a fully managed service that ensures the availability and responsiveness of your applications.

High Availability

Distributes traffic across multiple instances, ensuring your application remains accessible even if some instances fail.

Scalability

Handles fluctuating traffic demands by scaling your application resources seamlessly.

Health Probes

Continuously monitors the health of backend instances and routes traffic only to healthy ones.

Key Concepts

Load Balancing Rules

Load balancing rules define how incoming traffic is directed to backend pools. You can configure rules based on protocol (TCP/UDP), port numbers, and session persistence.

Backend Pools

Backend pools consist of the virtual machines or virtual machine scale sets that will receive the inbound traffic. Azure Load Balancer distributes traffic among the healthy instances within these pools.

Health Probes

Health probes are essential for ensuring the availability of your application. They periodically check the status of backend instances. If an instance fails the probe, it is temporarily removed from the load-balancing rotation. Common probe types include TCP, HTTP, and HTTPS.

Network Address Translation (NAT) Rules

For inbound traffic, Azure Load Balancer supports both load balancing rules and direct server return (DSR) configurations. It also provides outbound connectivity for VMs in your virtual network to access the internet.

Tip: For Layer 7 (HTTP/HTTPS) load balancing, consider using Azure Application Gateway, which offers more advanced features like SSL offloading, URL-based routing, and Web Application Firewall (WAF).

Types of Azure Load Balancer

Standard Load Balancer

The Standard Load Balancer SKU provides enhanced features, including zone redundancy, a public IP address per load balancer, and support for Virtual Machine Scale Sets with no downtime. It's recommended for most production workloads.

Basic Load Balancer

The Basic Load Balancer SKU offers essential load balancing capabilities suitable for development and testing environments. It has limitations on features and scale compared to the Standard SKU.

Common Scenarios

Getting Started

You can create and configure an Azure Load Balancer using the Azure portal, Azure CLI, Azure PowerShell, or ARM templates.


az network lb create --name MyLoadBalancer --resource-group MyResourceGroup --frontend-ip-name MyFrontendIP --backend-pool-name MyBackendPool
            

For detailed configuration steps and best practices, refer to the official Azure documentation.