1

これは、同じスクリプトで NSG とサブネットを関連付けたいサブネットと nsg を作成するために使用しているコードですが、ここで生成されているサブネット ID と NSG ID を取得し、それらを関連付けで使用する方法を理解できません。資源。助けてくれてありがとう!

n 個のサブネットと NSG を作成するために使用されるコードの最初の部分は、パラメーターに依存します。

provider "azurerm" {

  version = "2.0.0"
  features {}
}

resource "azurerm_resource_group" "new-rg" {
  name     = var.rg_name
  location = "West Europe"
}

resource "azurerm_virtual_network" "new-vnet" {
  name                = var.vnet_name
  address_space       = ["${var.vnet_address_space}"]
  location            = azurerm_resource_group.new-rg.location
  resource_group_name = azurerm_resource_group.new-rg.name


}

resource "azurerm_subnet" "test" {
  count                = "${length(var.subnet_prefix)}"
  name                 = "${element(var.subnet_subnetname, count.index)}"
  resource_group_name  = azurerm_resource_group.new-rg.name
  virtual_network_name = azurerm_virtual_network.new-vnet.name
  address_prefix       = "${element(var.subnet_prefix, count.index)}"

}


resource "azurerm_network_security_group" "new-nsg" {

    count        =  "${length(var.subnet_prefix)}"
  name                = "${element(var.subnet_subnetname, count.index)}-nsg"
  location            = azurerm_resource_group.new-rg.location
  resource_group_name = azurerm_resource_group.new-rg.name
}

以下は、作成される上記のサブネットと nsgs の関連付けを作成するためにパラメーターを渡す必要があるリソースです。

コードの 2 番目の部分n 個の関連付けに対して、上記のソリューションで以下のコードを使用できるようにする必要があります。

resource "azurerm_subnet_network_security_group_association" "example" {

  subnet_id                 = azurerm_subnet.example.id
  network_security_group_id = azurerm_network_security_group.example.id
}

コードの 2 番目の部分を使用して作成されている n 個のサブネットと nsgs を関連付ける方法を教えてください。

4

2 に答える 2

0

したがって、上記の問題を解決することができました。次のコードには、問題の前述のシナリオの解決策が含まれています。

resource "azurerm_subnet_network_security_group_association" "snet-nsg-association" {

count = length(var.subnet_subnetname)
subnet_id                 = element(azurerm_subnet.multi-snet.*.id, count.index)
network_security_group_id = element(azurerm_network_security_group.new-nsg.*.id, count.index)

}

于 2020-06-05T17:30:49.673 に答える