Partilhar via


Laboratórios/redes virtuais Microsoft.DevTestLab

Definição de recursos do bíceps

O tipo de recurso labs/virtualnetworks pode ser implantado com operações que visam:

Para obter uma lista de propriedades alteradas em cada versão da API, consulte log de alterações.

Formato do recurso

Para criar um recurso Microsoft.DevTestLab/labs/virtualnetworks, adicione o seguinte Bicep ao seu modelo.

resource symbolicname 'Microsoft.DevTestLab/labs/virtualnetworks@2018-09-15' = {
  parent: resourceSymbolicName
  location: 'string'
  name: 'string'
  properties: {
    allowedSubnets: [
      {
        allowPublicIp: 'string'
        labSubnetName: 'string'
        resourceId: 'string'
      }
    ]
    description: 'string'
    externalProviderResourceId: 'string'
    subnetOverrides: [
      {
        labSubnetName: 'string'
        resourceId: 'string'
        sharedPublicIpAddressConfiguration: {
          allowedPorts: [
            {
              backendPort: int
              transportProtocol: 'string'
            }
          ]
        }
        useInVmCreationPermission: 'string'
        usePublicIpAddressPermission: 'string'
        virtualNetworkPoolName: 'string'
      }
    ]
  }
  tags: {
    {customized property}: 'string'
  }
}

Valores de propriedade

Microsoft.DevTestLab/labs/virtualnetworks

Name Description Value
localização A localização do recurso. cadeia (de caracteres)
name O nome do recurso string (obrigatório)
elemento principal No Bicep, você pode especificar o recurso pai para um recurso filho. Você só precisa adicionar essa propriedade quando o recurso filho é declarado fora do recurso pai.

Para obter mais informações, consulte recurso filho fora do recurso pai.
Nome simbólico para recurso do tipo: labs
properties As propriedades do recurso. VirtualNetworkProperties (obrigatório)
tags Etiquetas de recursos Dicionário de nomes e valores de tags. Consulte Tags em modelos

Port

Name Description Value
backendPort Porta de back-end da máquina virtual de destino. int
transportProtocol Tipo de protocolo da porta. 'Tcp'
'Udp'

ResourceTags

Name Description Value

Subnet

Name Description Value
allowPublicIp A política de permissão da sub-rede para permitir endereços IP públicos (ou seja, Permitir, Negar)). 'Allow'
'Default'
'Deny'
labSubnetName O nome da sub-rede como visto no laboratório. cadeia (de caracteres)
resourceId A ID do recurso da sub-rede. cadeia (de caracteres)

SubnetOverride

Name Description Value
labSubnetName O nome dado à sub-rede dentro do laboratório. cadeia (de caracteres)
resourceId A ID do recurso da sub-rede. cadeia (de caracteres)
sharedPublicIpAddressConfiguration Propriedades que as máquinas virtuais nesta sub-rede compartilharão. SubnetSharedPublicIpAddressConfiguration
useInVmCreationPermission Indica se essa sub-rede pode ser usada durante a criação da máquina virtual (ou seja, Permitir, Negar). 'Allow'
'Default'
'Deny'
usePublicIpAddressPermission Indica se os endereços IP públicos podem ser atribuídos a máquinas virtuais nessa sub-rede (ou seja, Permitir, Negar). 'Allow'
'Default'
'Deny'
virtualNetworkPoolName O pool de rede virtual associado a essa sub-rede. cadeia (de caracteres)

SubnetSharedPublicIpAddressConfiguration

Name Description Value
allowedPorts Portas de back-end que as máquinas virtuais nesta sub-rede podem expor Port[]

VirtualNetworkProperties

Name Description Value
allowedSubnets As sub-redes permitidas da rede virtual. Subnet[]
description A descrição da rede virtual. cadeia (de caracteres)
externalProviderResourceId O identificador de recurso Microsoft.Network da rede virtual. cadeia (de caracteres)
subnetOverrides A sub-rede substitui a rede virtual. SubnetOverride[]

Exemplos de uso

Exemplos de início rápido do Azure

Os seguintes modelos início rápido do Azure contêm exemplos de Bicep para implantar esse tipo de recurso.

Arquivo Bicep Description
Cria um laboratório no Azure DevTest Labs com uma VM declarada Este modelo cria uma nova instância do DevTest Lab/DTL com uma VM de Datacenter do Windows Server 2019 declarada. Mais modelos de início rápido do Azure Resource Manager para o Azure DevTest Labs disponíveis em https://github.com/Azure/azure-devtestlab/tree/master/ARMTemplates

Definição de recurso de modelo ARM

O tipo de recurso labs/virtualnetworks pode ser implantado com operações que visam:

Para obter uma lista de propriedades alteradas em cada versão da API, consulte log de alterações.

Formato do recurso

Para criar um recurso Microsoft.DevTestLab/labs/virtualnetworks, adicione o seguinte JSON ao seu modelo.

{
  "type": "Microsoft.DevTestLab/labs/virtualnetworks",
  "apiVersion": "2018-09-15",
  "name": "string",
  "location": "string",
  "properties": {
    "allowedSubnets": [
      {
        "allowPublicIp": "string",
        "labSubnetName": "string",
        "resourceId": "string"
      }
    ],
    "description": "string",
    "externalProviderResourceId": "string",
    "subnetOverrides": [
      {
        "labSubnetName": "string",
        "resourceId": "string",
        "sharedPublicIpAddressConfiguration": {
          "allowedPorts": [
            {
              "backendPort": "int",
              "transportProtocol": "string"
            }
          ]
        },
        "useInVmCreationPermission": "string",
        "usePublicIpAddressPermission": "string",
        "virtualNetworkPoolName": "string"
      }
    ]
  },
  "tags": {
    "{customized property}": "string"
  }
}

Valores de propriedade

Microsoft.DevTestLab/labs/virtualnetworks

Name Description Value
apiVersion A versão api '2018-09-15'
localização A localização do recurso. cadeia (de caracteres)
name O nome do recurso string (obrigatório)
properties As propriedades do recurso. VirtualNetworkProperties (obrigatório)
tags Etiquetas de recursos Dicionário de nomes e valores de tags. Consulte Tags em modelos
tipo O tipo de recurso 'Microsoft.DevTestLab/labs/virtualnetworks'

Port

Name Description Value
backendPort Porta de back-end da máquina virtual de destino. int
transportProtocol Tipo de protocolo da porta. 'Tcp'
'Udp'

ResourceTags

Name Description Value

Subnet

Name Description Value
allowPublicIp A política de permissão da sub-rede para permitir endereços IP públicos (ou seja, Permitir, Negar)). 'Allow'
'Default'
'Deny'
labSubnetName O nome da sub-rede como visto no laboratório. cadeia (de caracteres)
resourceId A ID do recurso da sub-rede. cadeia (de caracteres)

SubnetOverride

Name Description Value
labSubnetName O nome dado à sub-rede dentro do laboratório. cadeia (de caracteres)
resourceId A ID do recurso da sub-rede. cadeia (de caracteres)
sharedPublicIpAddressConfiguration Propriedades que as máquinas virtuais nesta sub-rede compartilharão. SubnetSharedPublicIpAddressConfiguration
useInVmCreationPermission Indica se essa sub-rede pode ser usada durante a criação da máquina virtual (ou seja, Permitir, Negar). 'Allow'
'Default'
'Deny'
usePublicIpAddressPermission Indica se os endereços IP públicos podem ser atribuídos a máquinas virtuais nessa sub-rede (ou seja, Permitir, Negar). 'Allow'
'Default'
'Deny'
virtualNetworkPoolName O pool de rede virtual associado a essa sub-rede. cadeia (de caracteres)

SubnetSharedPublicIpAddressConfiguration

Name Description Value
allowedPorts Portas de back-end que as máquinas virtuais nesta sub-rede podem expor Port[]

VirtualNetworkProperties

Name Description Value
allowedSubnets As sub-redes permitidas da rede virtual. Subnet[]
description A descrição da rede virtual. cadeia (de caracteres)
externalProviderResourceId O identificador de recurso Microsoft.Network da rede virtual. cadeia (de caracteres)
subnetOverrides A sub-rede substitui a rede virtual. SubnetOverride[]

Exemplos de uso

Modelos de início rápido do Azure

Os seguintes modelos de início rápido do Azure implantar esse tipo de recurso.

Template Description
Cria um laboratório no Azure DevTest Labs com uma VM declarada

Implantar no Azure
Este modelo cria uma nova instância do DevTest Lab/DTL com uma VM de Datacenter do Windows Server 2019 declarada. Mais modelos de início rápido do Azure Resource Manager para o Azure DevTest Labs disponíveis em https://github.com/Azure/azure-devtestlab/tree/master/ARMTemplates

Definição de recursos Terraform (provedor AzAPI)

O tipo de recurso labs/virtualnetworks pode ser implantado com operações que visam:

Para obter uma lista de propriedades alteradas em cada versão da API, consulte log de alterações.

Formato do recurso

Para criar um recurso Microsoft.DevTestLab/labs/virtualnetworks, adicione o seguinte Terraform ao seu modelo.

resource "azapi_resource" "symbolicname" {
  type = "Microsoft.DevTestLab/labs/virtualnetworks@2018-09-15"
  name = "string"
  parent_id = "string"
  location = "string"
  tags = {
    {customized property} = "string"
  }
  body = {
    properties = {
      allowedSubnets = [
        {
          allowPublicIp = "string"
          labSubnetName = "string"
          resourceId = "string"
        }
      ]
      description = "string"
      externalProviderResourceId = "string"
      subnetOverrides = [
        {
          labSubnetName = "string"
          resourceId = "string"
          sharedPublicIpAddressConfiguration = {
            allowedPorts = [
              {
                backendPort = int
                transportProtocol = "string"
              }
            ]
          }
          useInVmCreationPermission = "string"
          usePublicIpAddressPermission = "string"
          virtualNetworkPoolName = "string"
        }
      ]
    }
  }
}

Valores de propriedade

Microsoft.DevTestLab/labs/virtualnetworks

Name Description Value
localização A localização do recurso. cadeia (de caracteres)
name O nome do recurso string (obrigatório)
parent_id A ID do recurso que é o pai para este recurso. ID do recurso do tipo: laboratórios
properties As propriedades do recurso. VirtualNetworkProperties (obrigatório)
tags Etiquetas de recursos Dicionário de nomes e valores de tags.
tipo O tipo de recurso "Microsoft.DevTestLab/labs/virtualnetworks@2018-09-15"

Port

Name Description Value
backendPort Porta de back-end da máquina virtual de destino. int
transportProtocol Tipo de protocolo da porta. 'Tcp'
'Udp'

ResourceTags

Name Description Value

Subnet

Name Description Value
allowPublicIp A política de permissão da sub-rede para permitir endereços IP públicos (ou seja, Permitir, Negar)). 'Allow'
'Default'
'Deny'
labSubnetName O nome da sub-rede como visto no laboratório. cadeia (de caracteres)
resourceId A ID do recurso da sub-rede. cadeia (de caracteres)

SubnetOverride

Name Description Value
labSubnetName O nome dado à sub-rede dentro do laboratório. cadeia (de caracteres)
resourceId A ID do recurso da sub-rede. cadeia (de caracteres)
sharedPublicIpAddressConfiguration Propriedades que as máquinas virtuais nesta sub-rede compartilharão. SubnetSharedPublicIpAddressConfiguration
useInVmCreationPermission Indica se essa sub-rede pode ser usada durante a criação da máquina virtual (ou seja, Permitir, Negar). 'Allow'
'Default'
'Deny'
usePublicIpAddressPermission Indica se os endereços IP públicos podem ser atribuídos a máquinas virtuais nessa sub-rede (ou seja, Permitir, Negar). 'Allow'
'Default'
'Deny'
virtualNetworkPoolName O pool de rede virtual associado a essa sub-rede. cadeia (de caracteres)

SubnetSharedPublicIpAddressConfiguration

Name Description Value
allowedPorts Portas de back-end que as máquinas virtuais nesta sub-rede podem expor Port[]

VirtualNetworkProperties

Name Description Value
allowedSubnets As sub-redes permitidas da rede virtual. Subnet[]
description A descrição da rede virtual. cadeia (de caracteres)
externalProviderResourceId O identificador de recurso Microsoft.Network da rede virtual. cadeia (de caracteres)
subnetOverrides A sub-rede substitui a rede virtual. SubnetOverride[]

Exemplos de uso

Amostras Terraform

Um exemplo básico de implantação de Rede Virtual em um Laboratório DevTest.

terraform {
  required_providers {
    azapi = {
      source = "Azure/azapi"
    }
  }
}

provider "azapi" {
  skip_provider_registration = false
}

variable "resource_name" {
  type    = string
  default = "acctest0001"
}

variable "location" {
  type    = string
  default = "westeurope"
}

resource "azapi_resource" "resourceGroup" {
  type     = "Microsoft.Resources/resourceGroups@2020-06-01"
  name     = var.resource_name
  location = var.location
}

resource "azapi_resource" "lab" {
  type      = "Microsoft.DevTestLab/labs@2018-09-15"
  parent_id = azapi_resource.resourceGroup.id
  name      = var.resource_name
  location  = var.location
  body = {
    properties = {
      labStorageType = "Premium"
    }
  }
  schema_validation_enabled = false
  response_export_values    = ["*"]
}

data "azapi_resource_id" "virtualNetwork" {
  type      = "Microsoft.Network/virtualNetworks@2023-04-01"
  parent_id = azapi_resource.resourceGroup.id
  name      = var.resource_name
}

data "azapi_resource_id" "subnet" {
  type      = "Microsoft.Network/virtualNetworks/subnets@2023-04-01"
  parent_id = data.azapi_resource_id.virtualNetwork.id
  name      = "${var.resource_name}Subnet"
}

resource "azapi_resource" "virtualNetwork" {
  type      = "Microsoft.DevTestLab/labs/virtualNetworks@2018-09-15"
  parent_id = azapi_resource.lab.id
  name      = var.resource_name
  body = {
    properties = {
      description = ""
      subnetOverrides = [
        {
          labSubnetName                = data.azapi_resource_id.subnet.name
          resourceId                   = data.azapi_resource_id.subnet.id
          useInVmCreationPermission    = "Allow"
          usePublicIpAddressPermission = "Allow"
        },
      ]
    }
  }
  schema_validation_enabled = false
  response_export_values    = ["*"]
}