Невозможно назначить виртуальные машины azurerm_lb_backend_address_pool

Мне удалось создать 2 виртуальные машины Linux в azurerm_availability_set, и теперь я хотел бы присоединить эти виртуальные машины к azurerm_lb_backend_address_pool, но кроме параметров, перечисленных ниже в моем коде. Я не вижу параметр набора доступности, но когда я перехожу на портал Azure, я вижу параметр набора доступности через портал. Не уверен, что я здесь что-то не так делаю.

Просмотрите приведенный ниже код и дайте мне знать, где я могу добавить параметр набора доступности. Так что я могу подключить 2 виртуальные машины.

resource "azurerm_lb_backend_address_pool" "backend_pool" {
  resource_group_name = "${azurerm_resource_group.test.name}"
  loadbalancer_id     = "${azurerm_lb.lb.id}"
  name                = "webBackendPool"
}

person Karthik    schedule 18.09.2019    source источник


Ответы (1)


Назначение виртуальных машин в серверном пуле балансировщика нагрузки фактически означает назначение сетевых интерфейсов виртуальных машин внутреннему пулу, поэтому вы можете использовать azurerm_network_interface_backend_address_pool_association для привязки сетевых адаптеров виртуальных машин к внутреннему пулу.

Например,

...
resource "azurerm_network_interface" "test" {
  name                = "${var.prefix}-nic"
  location            = "${azurerm_resource_group.test.location}"
  resource_group_name = "${azurerm_resource_group.test.name}"

  ip_configuration {
    name                          = "testconfiguration1"
    subnet_id                     = "${azurerm_subnet.internal.id}"
    private_ip_address_allocation = "Dynamic"
    public_ip_address_id = "${azurerm_public_ip.test.id}"
  }
}
...

 resource "azurerm_network_interface_backend_address_pool_association" "test" {
      network_interface_id    = "${azurerm_network_interface.test.id}"
      ip_configuration_name   = "testconfiguration1"
      backend_address_pool_id = "${azurerm_lb_backend_address_pool.backend_pool.id}"
    }

resource "azurerm_lb" "lb" {
  name                = "weblb"
  resource_group_name = "${azurerm_resource_group.test.name}"
  location            = "${azurerm_resource_group.test.location}"  
  sku                 = "${var.lb_sku}"

   frontend_ip_configuration {
    name                          = "${var.frontend_name}"
    subnet_id                     = "${azurerm_subnet.frontend.id}"
    private_ip_address            = "10.0.1.10"
    private_ip_address_allocation = "Static"
  }
}
resource "azurerm_lb_backend_address_pool" "backend_pool" {
  resource_group_name = "${azurerm_resource_group.test.name}"
  loadbalancer_id     = "${azurerm_lb.lb.id}"
  name                = "webBackendPool"
}
person Nancy Xiong    schedule 18.09.2019
comment
Я попробовал network_interface_id / s и получил следующую ошибку: 1 ошибка (и): * azurerm_lb_backend_address_pool.backend_pool:: неверный или неизвестный ключ: network_interface_id / s - person Karthik; 18.09.2019
comment
Не могли бы вы сослаться на пример в моем ответе или показать свой код? - person Nancy Xiong; 19.09.2019