我想我的逻辑很糟糕!
我正在尝试将我的 Azure 网络组关联到我的子网
这是我的安全组配置
resource "azurerm_network_security_group" "azure_nsg" {
depends_on = ["azurerm_virtual_network.vnet"]
location = "${var.region}"
name = "${var.nsg_names[count.index]}" // I think my problem is here
resource_group_name = "${azurerm_resource_group.vnet.name}"
count = "${length(var.nsg_names)}"
}
从这个count.index
我正在尝试导入
resource "azurerm_subnet" "subnet" {
depends_on = ["azurerm_network_security_group.private"]
name = "${var.subnet_names[count.index]}"
virtual_network_name = "${azurerm_virtual_network.vnet.name}"
resource_group_name = "${azurerm_resource_group.vnet.name}"
address_prefix = "${var.subnet_prefixes[count.index]}"
network_security_group_id = "${lookup(var.nsg_ids,var.subnet_names[count.index],"")}"
count = "${length(var.subnet_names)}"
}
但是我无法使用[count.index]或地图访问network_security_group_id
。
* azurerm_subnet.subnet.1: [ERROR] Unable to Parse Network Security Group ID 'databasensg': Cannot parse Azure ID: parse databasensg: invalid URI for request
* module.azure_vnet.azurerm_subnet.subnet[2]: 1 error(s) occurred:
* azurerm_subnet.subnet.2: [ERROR] Unable to Parse Network Security Group ID 'jumpboxnsg': Cannot parse Azure ID: parse jumpboxnsg: invalid URI for request
* module.azure_vnet.azurerm_network_security_group.azure_nsg[1]: 1 error(s) occurred:
对于地球化专家来说,这将非常容易。
请在这里帮忙,
Kiran,假设你的变量nsg_names
是一个列表,你应该能够使用以下 -
resource "azurerm_network_security_group" "azure_nsg" {
depends_on = ["azurerm_virtual_network.vnet"]
location = "${var.region}"
name = "${element(var.nsg_names, count.index)}"
resource_group_name = "${azurerm_resource_group.vnet.name}"
count = "${length(var.nsg_names)}"
}
应在其他资源中执行的其他查找中使用相同的方法。
您可以在此处阅读有关此插值函数的更多信息。