进入现有Vnet的Azure堡垒

问题描述

嗨,我正在尝试将AzureBastion部署到与该堡垒位于单独资源组中的单独vnet中。我不断收到下面的错误

New-AzSubscriptionDeployment : 10:49:03 - Error: Code=InvalidTemplate; Message=Deployment template validation Failed: 'The resource 
'Microsoft.Network/virtualNetworks/vnet1/subnets/AzureBastionsubnet' is not defined in the template. Please see https://aka.ms/arm-template for usage details.'.
At C:\Temp\New-Deployment\deploy-core.ps1:53 char:1

模板位于

“ https://pastebin.com/embed_js/ET9HwFJ9”

任何人都可以看到我要去哪里了,让我发疯

我应该添加一个嵌套模板,由主模板调用。如下:

“ https://pastebin.com/embed_js/Uf3asC9c”

预先感谢:)

解决方法

请遵循以下ARM模板,它允许您:

**-添加创建堡垒所需的子网“ AzureBastionSubnet”。

  • 创建堡垒的公共地址IP。
  • 创建堡垒。**

部署template.json:

{
"$schema": "http://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#","contentVersion": "1.0.0.0","parameters": {
    "location": {
        "type": "string"
    },"resourceGroup": {
        "type": "string"
    },"bastionHostName": {
        "type": "string"
    },"subnetName": {
        "type": "string"
    },"publicIpAddressName": {
        "type": "string"
    },"existingVNETName": {
        "type": "string"
    },"subnetAddressPrefix": {
        "type": "string"
    }
},"resources": [
    {
        "apiVersion": "2019-02-01","type": "Microsoft.Network/publicIpAddresses","name": "[parameters('publicIpAddressName')]","location": "[parameters('location')]","sku": {
            "name": "Standard"
        },"properties": {
            "publicIPAllocationMethod": "Static"
        },"tags": {}
    },{
        "apiVersion": "2018-04-01","type": "Microsoft.Network/virtualNetworks/subnets","name": "[concat(parameters('existingVNETName'),'/',parameters('subnetName'))]","properties": {
          "addressPrefix": "[parameters('subnetAddressPrefix')]"
        }
      },{
        "apiVersion": "2018-10-01","type": "Microsoft.Network/bastionHosts","name": "[parameters('bastionHostName')]","dependsOn": [
            "[resourceId(parameters('resourceGroup'),'Microsoft.Network/publicIpAddresses',parameters('publicIpAddressName'))]"
        ],"properties": {
            "ipConfigurations": [
                {
                    "name": "IpConf","properties": {
                        "subnet": {
                            "id": "[resourceId(parameters('resourceGroup'),'Microsoft.Network/virtualNetworks/subnets',parameters('existingVNETName'),parameters('subnetName'))]"
                        },"publicIPAddress": {
                            "id": "[resourceId(parameters('resourceGroup'),parameters('publicIpAddressName'))]"
                        }
                    }
                }
            ]
        },"tags": {}
    }
]

}

参数模板:

{
"$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentParameters.json#","parameters": {
    "resourceGroup": {
        "value": "testAmine"
    },"bastionHostName": {
        "value": "TestBast"
    },"publicIpAddressName": {
        "value": "testamine-vnet-ip"
    },"subnetName": {
        "value": "AzureBastionSubnet"
    },"existingVNETName":
    {
        "value": "testamine-vnet"
    },"subnetAddressPrefix":
    {
        "value": "10.0.1.0/27"
    },"location": {
        "value": "westeurope"
    }
}

}