Azure vnet 交叉订阅对等互连

Azure vnet cross subscription peering

我正在尝试在新订阅中创建分支 vnet,并尝试通过 ARM 模板与另一个订阅中现有的中心 vnet 对等。做这个的最好方式是什么?您如何引用 Hub vnet?

这就是我引用 hub vnet 的方式,但运气不好:

{
      "type": "Microsoft.Resources/deployments",
      "apiVersion": "2017-05-10",
      "name": "nestedTemplate",
      "resourceGroup": "[parameters('secondResourceGroup')]",
      "subscriptionId": "[parameters('secondSubscriptionID')]",
      "properties": {
      "mode": "Incremental",
      "template": {
          "$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
          "contentVersion": "1.0.0.0",
          "parameters": {},
          "variables": {},
          "resources": [
             "type": "Microsoft.Network/virtualNetworks/virtualNetworkPeerings",
                    "apiVersion": "2019-11-01",
                    "properties": {
                                "allowVirtualNetworkAccess": true,
                                "allowForwardedTraffic": true,
                                "allowGatewayTransit": true,
                                "useRemoteGateways": false,
                                "remoteVirtualNetwork": "r_name",
                                "remoteAddressSpace": {
                                "addressPrefixes": "CIDR_spcae"
                                }
          ]
      },

您可以在 remoteVirtualNetwork 参数及其 ID 中引用不同订阅中的中心 VNet。

Here为示例,请将<subscription ID>替换为其他订阅ID。

{
     "$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
     "contentVersion": "1.0.0.0",
     "parameters": {
     },
     "variables": {
     },
 "resources": [
         {
         "apiVersion": "2016-06-01",
         "type": "Microsoft.Network/virtualNetworks/virtualNetworkPeerings",
         "name": "myVnetA/myVnetAToMyVnetB",
         "location": "[resourceGroup().location]",
         "properties": {
         "allowVirtualNetworkAccess": true,
         "allowForwardedTraffic": false,
         "allowGatewayTransit": false,
         "useRemoteGateways": false,
             "remoteVirtualNetwork": {
             "id": "/subscriptions/<subscription ID>/resourceGroups/PeeringTest/providers/Microsoft.Network/virtualNetworks/myVnetB"
             }
         }
         }
     ]
}

您还可以从这个博客中获得更多详细信息:Using ARM templates to create Azure Vnets, part 2: peering

这个我算了。问题是参数引用错误。