- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在使用 Terraform 创建虚拟网络,并且子网是在虚拟网络资源 block 内创建的(而不是使用其自己的资源 block )。
我正在尝试将一些路由表关联到子网,但是我不确定在虚拟网络中创建子网时如何获取子网资源 ID,有人可以帮忙吗?
main.tf
terraform {
required_providers {
azurerm = {
source = "hashicorp/azurerm"
version = "3.24.0"
}
}
}
provider "azurerm" {
skip_provider_registration = true
features {}
}
###########################
# RESOURCE GROUP CREATION #
###########################
resource "azurerm_resource_group" "rg" {
name = var.rg.name
location = var.rg.location
}
############################
# VIRTUAL NETWORK CREATION #
############################
resource "azurerm_virtual_network" "vnet" {
name = var.vnet.name
resource_group_name = azurerm_resource_group.rg.name
location = azurerm_resource_group.rg.location
address_space = var.vnet.address_space
dns_servers = var.vnet.dns_servers
subnet {
name = var.vnet.subnet1_name
address_prefix = var.vnet.subnet1_address_prefix
}
subnet {
name = var.vnet.subnet2_name
address_prefix = var.vnet.subnet2_address_prefix
}
subnet {
name = var.vnet.subnet3_name
address_prefix = var.vnet.subnet3_address_prefix
}
subnet {
name = var.vnet.subnet4_name
address_prefix = var.vnet.subnet4_address_prefix
}
subnet {
name = var.vnet.subnet5_name
address_prefix = var.vnet.subnet5_address_prefix
}
}
########################
# ROUTE TABLE CREATION #
########################
resource "azurerm_route_table" "fslogix_rt" {
name = var.rt.fslogix.name
resource_group_name = azurerm_resource_group.rg.name
location = azurerm_resource_group.rg.location
disable_bgp_route_propagation = false
}
resource "azurerm_route_table" "back_office_rt" {
name = var.rt.back_office.name
resource_group_name = azurerm_resource_group.rg.name
location = azurerm_resource_group.rg.location
disable_bgp_route_propagation = false
}
resource "azurerm_route_table" "dev_dev_rt" {
name = var.rt.dev_dev.name
resource_group_name = azurerm_resource_group.rg.name
location = azurerm_resource_group.rg.location
disable_bgp_route_propagation = false
}
resource "azurerm_route_table" "dev_prod_rt" {
name = var.rt.dev_prod.name
resource_group_name = azurerm_resource_group.rg.name
location = azurerm_resource_group.rg.location
disable_bgp_route_propagation = false
}
resource "azurerm_route_table" "front_office_rt" {
name = var.rt.front_office.name
resource_group_name = azurerm_resource_group.rg.name
location = azurerm_resource_group.rg.location
disable_bgp_route_propagation = false
}
##################
# ROUTE CREATION #
##################
resource "azurerm_route" "fslogix_routes" {
for_each = var.fslogix_routes
name = each.value.name
resource_group_name = azurerm_resource_group.rg.name
route_table_name = azurerm_route_table.fslogix_rt.name
address_prefix = each.value.address_prefix
next_hop_type = each.value.next_hop_type
next_hop_in_ip_address = each.value.next_hop_in_ip_address
}
resource "azurerm_route" "back_office_routes" {
for_each = var.back_office_routes
name = each.value.name
resource_group_name = azurerm_resource_group.rg.name
route_table_name = azurerm_route_table.back_office_rt.name
address_prefix = each.value.address_prefix
next_hop_type = each.value.next_hop_type
next_hop_in_ip_address = each.value.next_hop_in_ip_address
}
resource "azurerm_route" "dev_dev_routes" {
for_each = var.developer_dev_routes
name = each.value.name
resource_group_name = azurerm_resource_group.rg.name
route_table_name = azurerm_route_table.dev_dev_rt.name
address_prefix = each.value.address_prefix
next_hop_type = each.value.next_hop_type
next_hop_in_ip_address = each.value.next_hop_in_ip_address
}
resource "azurerm_route" "dev_prod_routes" {
for_each = var.developer_prod_routes
name = each.value.name
resource_group_name = azurerm_resource_group.rg.name
route_table_name = azurerm_route_table.dev_prod_rt.name
address_prefix = each.value.address_prefix
next_hop_type = each.value.next_hop_type
next_hop_in_ip_address = each.value.next_hop_in_ip_address
}
resource "azurerm_route" "front_office_routes" {
for_each = var.front_office_routes
name = each.value.name
resource_group_name = azurerm_resource_group.rg.name
route_table_name = azurerm_route_table.front_office_rt.name
address_prefix = each.value.address_prefix
next_hop_type = each.value.next_hop_type
next_hop_in_ip_address = each.value.next_hop_in_ip_address
}
###########################
# ROUTE TABLE ASSOICATION #
###########################
resource "azurerm_subnet_route_table_association" "fslogix_rta" {
subnet_id = ???????????????????????????????????????
route_table_id = azurerm_route_table.fslogix_rt.id
}
最佳答案
您可以通过以下方式获取所有subnet_id:
azurerm_virtual_network.vnet.subnet.*.id
您可以通过以下方式获取第一个subnet_id:
azurerm_virtual_network.vnet.subnet.*.id[0]
第二个subnet_id:
azurerm_virtual_network.vnet.subnet.*.id[1]
然后继续...
希望这有帮助!
关于azure - 来自内联虚拟网络资源的子网 ID,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/73893502/
因此,AWS 中私有(private)子网的目的是使其实例无法从外部世界直接访问。然而,在某些情况下(成功地抵制了“实例”双关语),实例访问互联网很有用。例如,一种这样的用例可能是下载软件更新。 实现
我已经退出虚拟机,我需要更改该虚拟机的虚拟网络/子网。我没有找到任何可以更改的选项,请帮助我。谢谢..! 最佳答案 据我所知,当在 VNet 中创建 NIC 时,它就无法再移动到另一个 VNet。因此
我想导出一些内容,例如 VNET 中存在的子网 View (如门户中显示的那样)。不幸的是,没有选项可以将其导出为 CSV。我在网上找到了可以导出子网路由表和关联子网的 powershell 脚本。我
我的虚拟网络具有以下子网 10.0.0.0/24,我想添加另一个子网,但每次尝试时都会得到:“您的子网不包含在该虚拟网络的同一地址空间内” 如何添加另一个子网? 最佳答案 您可以在虚拟网络中添加子网,
我有 ip 地址列表作为字符串,但该列表中也有一些子网。例如: ...127.0.0.1(这是ip)127.0.0.1/24(这是子网)... 我想检查哪个是ip,哪个是子网。到目前为止我可以过滤 i
我正在尝试使用 ARM 模板部署 Azure 防火墙。该模板在首次部署期间工作正常,并在现有虚拟网络中创建一个子网(根据需要命名为 AzureFirewallSubnet)以及具有公共(public)
我正在尝试使用 ARM 模板部署 Azure 防火墙。该模板在首次部署期间工作正常,并在现有虚拟网络中创建一个子网(根据需要命名为 AzureFirewallSubnet)以及具有公共(public)
我正在尝试编写一个脚本,将大于(不大于/16)大于/24 的子网分解为/24 子网。例如:10.10.10.0/23 应该给我 10.10.10.0/24 和 10.10.11.0/24 我的逻辑是首
我在 Azure VNet 中有两台虚拟机(IP 地址 10.1.0.4 和 10.1.0.5),以及一台通过 VPN 网关连接到 VNet 的计算机(IP 10.3.0.2)。是否可以在内部负载均衡
错误消息 执行terraform apply时收到以下错误消息: 错误:创建/更新虚拟网络“CTI-NETWORK”(资源组“CTI-RESOURCES”)时出错:network.VirtualNet
我无法从不再使用的 VNet 中删除“默认”子网。错误是:“子网默认值由/subscriptions/{guid}/resourceGroups/mpi-prod-westeurope-rg/prov
我在使用 docker-compose 时遇到问题。目前,我的容器堆栈是在它们自己定制的、基于桥接的隔离网络中创建的。 例如当运行 docker-compose -p client1 up -d 时,
我无法从不再使用的 VNet 中删除“默认”子网。错误是:“子网默认值由/subscriptions/{guid}/resourceGroups/mpi-prod-westeurope-rg/prov
如果文件的一个版本在特定子网中具有接口(interface),我想将其复制到服务器,或者如果在该子网中没有接口(interface),则将文件的一个版本复制到服务器。下面是一个工作,但我认为不是最佳解
我是 terraform 新手,想要更改网络上的子网,但遇到了一个奇怪的错误。谷歌什么也没得到。这是我要输入的内容(更改 main.tf 和运行计划后) terraform apply -replac
已关闭。此问题不符合Stack Overflow guidelines 。目前不接受答案。 这个问题似乎不是关于 a specific programming problem, a software
我们有 dbs, basion ..等,总共 10 个东西需要分开。 如果我们将它们中的每一个都放入一个单独的子网中,我们总共有 10 个子网,再加上 1 个用于第二个区域以实现高可用性。因此,我们总
已关闭。此问题不符合Stack Overflow guidelines 。目前不接受答案。 这个问题似乎不是关于 a specific programming problem, a software
我们有 dbs, basion ..等,总共 10 个东西需要分开。 如果我们将它们中的每一个都放入一个单独的子网中,我们总共有 10 个子网,再加上 1 个用于第二个区域以实现高可用性。因此,我们总
在 IP 为 145.74.217.109 的机器 A 上运行 ServerSocket 时然后尝试使用 IP 为 145.74.219.103 的机器 B 连接到机器 A,但无法连接。但是当使用 I
我是一名优秀的程序员,十分优秀!