我正在创建一个Azure负载平衡器,我需要将传入的流量路由到由虚拟机组成的后端池。
我正在使用Terraform来做这件事。
到目前为止,我创建了以下内容:
1.负载均衡器
1.负载均衡器规则
1.后端地址池
1.健康探测器
但是在后端的terraform
中,我无法设置VM的IP地址。
这是我的代码。我该怎么做?
resource "azurerm_lb" "example" {
name = "TestLoadBalancer"
resource_group_name = azurerm_resource_group.example.name
location = azurerm_resource_group.example.location
sku = "Standard"
frontend_ip_configuration {
name = "classiclb"
subnet_id = azurerm_subnet.vm.id
private_ip_address_allocation = "Dynamic"
}
}
resource "azurerm_lb_backend_address_pool" "example" {
loadbalancer_id = azurerm_lb.example.id
name = "classiclb"
}
resource "azurerm_lb_probe" "example" {
resource_group_name = azurerm_resource_group.example.name
loadbalancer_id = azurerm_lb.example.id
name = "classiclb"
port = 80
interval_in_seconds = 10
number_of_probes = 3
protocol = "Http"
request_path = "/"
}
resource "azurerm_lb_rule" "example" {
resource_group_name = azurerm_resource_group.example.name
loadbalancer_id = azurerm_lb.example.id
name = "classiclb"
protocol = "Tcp"
frontend_port = 80
backend_port = 80
frontend_ip_configuration_name = "classiclb"
backend_address_pool_id = azurerm_lb_backend_address_pool.example.id
probe_id = azurerm_lb_probe.example.id
}
2条答案
按热度按时间8yoxcaq71#
根据注解,使用azurerm_lb_backend_address_pool_address添加地址。
4xy9mtcn2#
我认为在后端地址池中添加网络接口的正确方法是使用network_interface_backend_address_pool_association。