You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Terraform Azure:如何单独输出VNet ID以支持Remote State逐个调用?

解决Terraform Azure VNet输出单独调用问题

完全可行,你可以通过在output块中使用for_each来实现每个VNet ID作为独立输出项,具体代码如下:

output "vnet_id" {
  for_each = azurerm_virtual_network.vnet
  value     = each.value.id
}

说明:

  • 该写法利用Terraform 0.13及以上版本对output块支持的for_each特性,会为每个azurerm_virtual_network.vnet实例生成对应的独立输出条目。
  • 在Terraform Remote State中调用时,你可以直接通过实例标识单独获取某个VNet的ID,示例如下:
    data "terraform_remote_state" "vnets" {
      # 填写你的远程状态配置,比如backend类型、存储路径等
      backend = "azurerm"
      config = {
        resource_group_name  = "your-rg-name"
        storage_account_name = "your-storage-account"
        container_name       = "tfstate"
        key                  = "vnets/terraform.tfstate"
      }
    }
    
    # 单独调用dev-c2c的VNet ID
    locals {
      dev_c2c_vnet_id = data.terraform_remote_state.vnets.outputs.vnet_id["dev-c2c"]
    }
    

内容的提问来源于stack exchange,提问作者Deependra Singh Gurjar

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.04 09:25:28