Что такое внутренний процесс сценария terraform для связывания Azure NSG - PullRequest
0 голосов
/ 15 февраля 2019

Сценарий, приведенный ниже, работает нормально.Но проблема в том, что когда я даю Terraform применить второй раз, он отсоединяет NSG от подсетей.И когда я обращаюсь снова, это связывается с подсетями.Есть ли какие-либо проблемы с моим кодом или что эта строка на самом деле делает, может быть, это решит мою проблему.

network_security_group_id = 
"${element(azurerm_network_security_group.NetworkSG.*.id,count.index)}"

Ниже приведен код моего main.tf:

resource "azurerm_subnet" "Subnet" {
count                     = "${length(var.Subnet_name)}"
name                      = "${var.Subnet_name[count.index]}"
virtual_network_name      = "${azurerm_virtual_network.Vnet.name}"
resource_group_name       = 
"${azurerm_resource_group.ResourceGroup.name}"
address_prefix            = 
"${element(var.Subnet_range[var.Subnet_name[count.index]], 0)}"
}
resource "azurerm_network_security_group" "NetworkSG" {
  count  =  "${length(var.Subnet_name)}"
  name                = 
"${element(var.Subnet_range[var.Subnet_name[count.index]], 1)}"
  location            = 
"${azurerm_resource_group.ResourceGroup.location}"
  resource_group_name = "${azurerm_resource_group.ResourceGroup.name}"
}
resource "azurerm_subnet_network_security_group_association" 
"NetworkSGassociation" {
count= "${length(var.Subnet_name)}"
subnet_id = "${element(azurerm_subnet.Subnet.*.id, count.index)}"
network_security_group_id = 
"${element(azurerm_network_security_group.NetworkSG.*.id,count.index)}" 
}

Нижемой файл .tfvars:

Subnet_name= ["SCB-Sub1","SCB-Sub2","SCB-Sub3"]
Subnet_range =
{
    SCB-Sub1= ["10.10.0.0/24","SCB-nsg1"]
    SCB-Sub2= ["10.10.1.0/24","SCB-nsg2"]
    SCB-Sub3= ["10.10.2.0/24","SCB-nsg3"]
}

Это вывод, который я получаю, когда использую план terraform:

azurerm_subnet.Subnet[1]: Modifying... (ID: /subscriptions/0000-...tualNetworks/SCB_vnet/subnets/SCB-Sub3) network_security_group_id: "/subscriptions/0000/resourceGroups/SCB- rg/providers/Microsoft.Network/networkSecurityGroups/SCB-nsg3" => ""

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...