可以使用以下代码示例解决此问题。在这个示例中,我们使用了 Bicep 的“for each”循环语法糖,以创建多个 vNet peering。
var sourceVNet = '/subscriptions/{subscriptionId}/resourceGroups/{sourceVNetResourceGroup}/providers/Microsoft.Network/virtualNetworks/{sourceVNetName}';
var targetVNet = '/subscriptions/{subscriptionId}/resourceGroups/{targetVNetResourceGroup}/providers/Microsoft.Network/virtualNetworks/{targetVNetName}';
resource vnetPeerings 'Microsoft.Network/virtualNetworks/virtualNetworkPeerings@2020-11-01' = [for peering in peeringList:
{
name: '${peering.sourceVnetName}-to-${peering.targetVnetName}'
location: '${peering.sourceVnetLocation}'
properties: {
allowVirtualNetworkAccess: true
allowForwardedTraffic: false
allowGatewayTransit: false
useRemoteGateways: false
remoteVirtualNetwork: {
id: '${targetVNet}'
}
remoteAddressSpace: {
addressPrefixes: [
'${peering.targetVnetAddressSpace}'
]
}
}
}]
在上面的代码示例中,我们循环 peeringList 中的所有 peering,并使用“for each”循环创建 vNet peering。注意,我们使用字符串插值来构建 vNet peering 的名称。
如果您仍然无法解决问题,请确保检查 peeringList 中的值是否正确,并且您有足够的权限来创建 vNet peering。
下一篇:Bicep字符串数组