如果您要分别创建 Vnet 和 Devtest lab,那么您可以使用来自 Github 的以下Azure 快速入门模板来创建具有现有 vnet 的 Devtestlab:
JSON ARM:
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"newLabName": {
"type": "string",
"metadata": {
"description": "The name of the new lab instance to be created."
}
},
"newLabVirtualNetworkName": {
"type": "string",
"metadata": {
"description": "The name of the new lab virtual network instance to be created with the new lab instance being created."
}
},
"existingVirtualNetworkId": {
"type": "string",
"metadata": {
"description": "The resource ID pointing to an existing (compute) virtual network to be referenced by the new lab virtual network instance being created."
}
},
"existingSubnetName": {
"type": "string",
"defaultValue": "default",
"metadata": {
"description": "The name of an existing (compute) subnet instance to be configured for Lab VM creation."
}
}
},
"variables": {
"existingSubnetId": "[concat(parameters('existingVirtualNetworkId'), '/subnets/', parameters('existingSubnetName'))]"
},
"resources": [
{
"apiVersion": "2018-10-15-preview",
"type": "Microsoft.DevTestLab/labs",
"name": "[parameters('newLabName')]",
"location": "[resourceGroup().location]",
"resources": [
{
"apiVersion": "2018-10-15-preview",
"name": "[parameters('newLabVirtualNetworkName')]",
"type": "virtualNetworks",
"dependsOn": [
"[resourceId('Microsoft.DevTestLab/labs', parameters('newLabName'))]"
],
"properties": {
"description": "Existing Compute virtual network associated as part of the lab creation process.",
"externalProviderResourceId": "[parameters('existingVirtualNetworkId')]",
"subnetOverrides": [
{
"name": "[parameters('existingSubnetName')]",
"resourceId": "[variables('existingSubnetId')]",
"useInVmCreationPermission": "Allow",
"usePublicIpAddressPermission": "Allow"
}
]
}
}
]
}
],
"outputs": {
"labId": {
"type": "string",
"value": "[resourceId('Microsoft.DevTestLab/labs', parameters('newLabName'))]"
}
}
}
输出:我在我的环境中对其进行了测试,结果如下:
注意:不幸的是,没有使用Azure CLI或Azure-Powershell连接 vnet 和Devtestlabs的命令。
二头肌臂:
@description('The name of the new lab instance to be created.')
param newLabName string
@description('The name of the new lab virtual network instance to be created with the new lab instance being created.')
param newLabVirtualNetworkName string
@description('The resource ID pointing to an existing (compute) virtual network to be referenced by the new lab virtual network instance being created.')
param existingVirtualNetworkId string
@description('The name of an existing (compute) subnet instance to be configured for Lab VM creation.')
param existingSubnetName string = 'default'
var existingSubnetId = '${existingVirtualNetworkId}/subnets/${existingSubnetName}'
resource newLabName_resource 'Microsoft.DevTestLab/labs@2018-10-15-preview' = {
name: newLabName
location: resourceGroup().location
}
resource newLabName_newLabVirtualNetworkName 'Microsoft.DevTestLab/labs/virtualNetworks@2018-10-15-preview' = {
parent: newLabName_resource
name: newLabVirtualNetworkName
properties: {
description: 'Existing Compute virtual network associated as part of the lab creation process.'
externalProviderResourceId: existingVirtualNetworkId
subnetOverrides: [
{
name: existingSubnetName
resourceId: existingSubnetId
useInVmCreationPermission: 'Allow'
usePublicIpAddressPermission: 'Allow'
}
]
}
}
output labId string = newLabName_resource.id
输出: