Azure Application Gateway is a web traffic load balancer that enables you to manage traffic to your web applications. A key component of the Application Gateway is the backend pool, which defines the set of backend servers that will receive the traffic. This documentation explains how to configure and manage backend pools.
A backend pool contains the IP addresses or Fully Qualified Domain Names (FQDNs) of the virtual machines, virtual machine scale sets, or app services that host your web application. When Application Gateway receives a request, it forwards it to one of the healthy targets within the configured backend pool based on the routing rules.
You can configure backend pools using the Azure portal, Azure CLI, Azure PowerShell, or ARM templates.
You can also add or remove backend targets from an existing pool by clicking on the pool name and then clicking "Add to backend pool" or by selecting targets and clicking "Remove".
To create a backend pool using Azure CLI:
az network application-gateway backend-pool create \
--resource-group myResourceGroup \
--gateway-name myAppGateway \
--name myBackendPool \
--addresses 10.0.0.1 10.0.0.2
To add an existing IP configuration to a backend pool:
az network application-gateway backend-pool update \
--resource-group myResourceGroup \
--gateway-name myAppGateway \
--name myBackendPool \
--add backendAddresses <(echo '{"ipAddress": "10.0.0.3"}')
The following types of targets can be added to a backend pool:
Application Gateway continuously monitors the health of backend targets using health probes. When a target is deemed unhealthy, Application Gateway stops sending traffic to it until it becomes healthy again. Backend health is crucial for ensuring application availability and resilience.
You can configure health probes to check specific URLs, ports, and protocols. The default health probe checks for a successful HTTP response (status code 200-299) on the configured backend port.