Terraform部署Azure VNet Peering卡在Initiated状态如何修复?
解决Azure VNet Peering Terraform部署后处于Initiated状态的问题
问题原因
Azure VNet Peering是双向依赖关系,必须在两个虚拟网络上分别创建对等连接资源。仅配置一侧的话,对方网络未接受对等请求,状态就会停留在Initiated。你的Terraform代码只定义了从spoke VNet到AKS VNet的单向对等连接,这就是核心问题。
修复步骤
在Terraform配置中添加反向的对等连接资源,即从AKS VNet到spoke VNet的对等配置:
# 原有的spoke到AKS的对等连接 resource "azurerm_virtual_network_peering" "spoke_aks_peering" { virtual_network_name = azurerm_virtual_network.virtual_network_spoke.name resource_group_name = azurerm_resource_group.resource-group_spoke.name remote_virtual_network_id = azurerm_virtual_network.virtual_network_aks.id name = "peerspoketoaks" allow_virtual_network_access = true allow_forwarded_traffic = true } # 添加AKS到spoke的反向对等连接 resource "azurerm_virtual_network_peering" "aks_spoke_peering" { virtual_network_name = azurerm_virtual_network.virtual_network_aks.name resource_group_name = azurerm_resource_group.resource-group_aks.name # 替换为AKS VNet所在的资源组名称 remote_virtual_network_id = azurerm_virtual_network.virtual_network_spoke.id name = "peerakstospoke" allow_virtual_network_access = true allow_forwarded_traffic = true }
关键注意点
- 确认反向对等连接的
resource_group_name是AKS虚拟网络所属的资源组,避免配置错误。 - 两个对等连接的权限参数(如
allow_virtual_network_access)需根据实际需求保持一致。 - 执行
terraform apply后,两侧对等连接的状态都会自动切换为Connected。
内容的提问来源于stack exchange,提问作者The Engineer
相关产品推荐
相关产品推荐

