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

Terraform AzureRM路由表BGP传播配置报错求助

解决Terraform AzureRM路由表BGP传播设置报错问题

错误原因

你使用的AzureRM provider 3.103.1版本中,bgp_route_propagation_enabled已不再是azurerm_route_table资源的直接参数。从AzureRM 3.0+版本开始,BGP路由传播的控制逻辑被移到子网与路由表的关联资源中,而非路由表本身定义。

解决方案

  1. 移除azurerm_route_table资源里的bgp_route_propagation_enabled = false配置行
  2. 通过azurerm_subnet_route_table_association资源禁用BGP路由传播,对应参数为disable_bgp_route_propagation = true(该参数设为true即表示禁用BGP路由传播)

修改后的代码示例

路由表资源(已移除无效参数)

resource "azurerm_route_table" "rt" {
  name                = "test-resource"
  location            = var.location
  resource_group_name = var.resource_group_name

  dynamic "route" {
    for_each = var.route-internet
    content {
      name                   = route.value["name"]
      address_prefix         = route.value["address_prefix"]
      next_hop_type          = route.value["next_hop"]
      next_hop_in_ip_address = route.value["ip"]
    } 
  }
}

子网与路由表关联资源(禁用BGP传播)

resource "azurerm_subnet_route_table_association" "rt_assoc" {
  subnet_id      = azurerm_subnet.your_subnet.id # 替换为你的子网ID
  route_table_id = azurerm_route_table.rt.id
  disable_bgp_route_propagation = true # 禁用BGP路由传播
}

说明

disable_bgp_route_propagation参数的逻辑是:设为true时,子网不会从BGP学习路由(即禁用传播),完全匹配你原本想要设置bgp_route_propagation_enabled = false的需求。

内容的提问来源于stack exchange,提问作者Matty

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.16 10:59:56