Is there an existing issue for this?
Community Note
- Please vote on this issue by adding a 👍 reaction to the original issue to help the community and maintainers prioritize this request.
- Please do not leave comments along the lines of "+1", "me too" or "any updates" — they generate extra noise for issue followers and do not help prioritize the request.
- If you are interested in working on this issue or have submitted a pull request, please leave a comment and review the contribution guide to help.
Feature Request: Support for Azure API Management Backend Load Balancer Pools
Description
Add support in the azurerm_api_management_backend (or a new dedicated resource) for Backend Load Balancer Pools within Azure API Management.
This feature allows users to group multiple backend services into a single logical pool, enabling built-in load balancing, failover, and routing within API Management.
Proposed Resource Example
resource "azurerm_api_management_backend_pool" "example" {
name = "example-backend-pool"
api_management_name = azurerm_api_management.example.name
resource_group_name = azurerm_resource_group.example.name
# Optional description
description = "Load-balanced pool of backend services for internal APIs"
# One or more backend members
backends = [
azurerm_api_management_backend.backend1.id,
azurerm_api_management_backend.backend2.id
]
}
### Description
Azure API Management (APIM) currently allows defining multiple individual backends, but there is no native support in the Terraform provider for grouping those backends into Backend Load Balancer Pools — a logical construct that enables traffic distribution, failover, and routing across multiple backend services.
This feature request proposes adding a new Terraform resource, such as azurerm_api_management_backend_pool, that would allow users to create and manage backend load balancer pools within an API Management instance. A backend pool would act as a single logical target for APIs, simplifying configuration and enabling built-in load balancing behavior within APIM.
Creating a backend pool would involve:
1. Specifying a required name to uniquely identify the pool.
2. Optionally providing a description for documentation and readability.
3. Selecting one or more existing backends (referencing azurerm_api_management_backend resources) to include in the pool.
This enhancement would bring Terraform feature parity with Azure’s native APIM configuration model and enable infrastructure-as-code management of complex backend routing and high availability scenarios. It would particularly benefit users managing microservices or multi-region API deployments, allowing them to declaratively configure pools that distribute traffic across several backend endpoints.
### New or Affected Resource(s)/Data Source(s)
azurerm_api_management_backend_pool
### Potential Terraform Configuration
```hcl
resource "azurerm_api_management_backend_pool" "example" {
name = "example-backend-pool"
api_management_name = azurerm_api_management.example.name
resource_group_name = azurerm_resource_group.example.name
# Optional description
description = "Load-balanced pool of backend services for internal APIs"
# One or more backend members
backends = [
azurerm_api_management_backend.backend1.id,
azurerm_api_management_backend.backend2.id
]
}
References
No response
Is there an existing issue for this?
Community Note
Feature Request: Support for Azure API Management Backend Load Balancer Pools
Description
Add support in the
azurerm_api_management_backend(or a new dedicated resource) for Backend Load Balancer Pools within Azure API Management.This feature allows users to group multiple backend services into a single logical pool, enabling built-in load balancing, failover, and routing within API Management.
Proposed Resource Example
References
No response