我无法使用内置变量中带有"count"的terraform创建私有IP。
它错误地指出"保留的IP范围"中的IP地址。
请在我的代码块下面找到。
resource "azurerm_network_interface" "tf_ax_nic" {
count=5
name = "subnet_app_aos_nic_${count.index}"
location = "${data.azurerm_resource_group.tf_rg.location}"
resource_group_name = "${data.azurerm_resource_group.tf_rg.name}"
ip_configuration {
name = "ax_${count.index}.ip"
subnet_id = "${data.azurerm_subnet.tf_sn_ax.id}"
private_ip_address_allocation = "static"
private_ip_address ="10.100.3.${count.index}"
}
tags {
environment = "${var.env}"
}
}
任何一个hep都将不胜感激。
非常感谢。
Azure将保留子网中的前四个IP地址,并且无法将这些IP地址分配给资源。你可以在私有IP地址分配方法中看到这样的描述:
Azure保留每个子网地址范围中的前四个地址,因此不能将地址分配给资源。例如,如果子网的地址范围为10.0.0.0/16,地址为10.0.0.0-10.0.0.3无法分配给资源。
所以我认为你只需要将偏移量用作
private_ip_address="10.100.3.${count.index+4}"
答案是使用偏移量private_ip_address="10.100.3.${count.index+5}"