Partilhar via


Laboratórios Microsoft.DevTestLab/virtualmachines 2016-05-15

Definição de recurso do Bicep

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

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

Formato do recurso

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

resource symbolicname 'Microsoft.DevTestLab/labs/virtualmachines@2016-05-15' = {
  name: 'string'
  location: 'string'
  tags: {
    tagName1: 'tagValue1'
    tagName2: 'tagValue2'
  }
  parent: resourceSymbolicName
  properties: {
    allowClaim: bool
    applicableSchedule: {
      location: 'string'
      properties: {
        labVmsShutdown: {
          location: 'string'
          properties: {
            dailyRecurrence: {
              time: 'string'
            }
            hourlyRecurrence: {
              minute: int
            }
            notificationSettings: {
              status: 'string'
              timeInMinutes: int
              webhookUrl: 'string'
            }
            provisioningState: 'string'
            status: 'string'
            targetResourceId: 'string'
            taskType: 'string'
            timeZoneId: 'string'
            uniqueIdentifier: 'string'
            weeklyRecurrence: {
              time: 'string'
              weekdays: [
                'string'
              ]
            }
          }
          tags: {}
        }
        labVmsStartup: {
          location: 'string'
          properties: {
            dailyRecurrence: {
              time: 'string'
            }
            hourlyRecurrence: {
              minute: int
            }
            notificationSettings: {
              status: 'string'
              timeInMinutes: int
              webhookUrl: 'string'
            }
            provisioningState: 'string'
            status: 'string'
            targetResourceId: 'string'
            taskType: 'string'
            timeZoneId: 'string'
            uniqueIdentifier: 'string'
            weeklyRecurrence: {
              time: 'string'
              weekdays: [
                'string'
              ]
            }
          }
          tags: {}
        }
      }
      tags: {}
      location: 'string'
      properties: {
        labVmsShutdown: {
          location: 'string'
          properties: {
            dailyRecurrence: {
              time: 'string'
            }
            hourlyRecurrence: {
              minute: int
            }
            notificationSettings: {
              status: 'string'
              timeInMinutes: int
              webhookUrl: 'string'
            }
            provisioningState: 'string'
            status: 'string'
            targetResourceId: 'string'
            taskType: 'string'
            timeZoneId: 'string'
            uniqueIdentifier: 'string'
            weeklyRecurrence: {
              time: 'string'
              weekdays: [
                'string'
              ]
            }
          }
          tags: {}
        }
        labVmsStartup: {
          location: 'string'
          properties: {
            dailyRecurrence: {
              time: 'string'
            }
            hourlyRecurrence: {
              minute: int
            }
            notificationSettings: {
              status: 'string'
              timeInMinutes: int
              webhookUrl: 'string'
            }
            provisioningState: 'string'
            status: 'string'
            targetResourceId: 'string'
            taskType: 'string'
            timeZoneId: 'string'
            uniqueIdentifier: 'string'
            weeklyRecurrence: {
              time: 'string'
              weekdays: [
                'string'
              ]
            }
          }
          tags: {}
        }
      }
      tags: {}
    }
    artifactDeploymentStatus: {
      artifactsApplied: int
      deploymentStatus: 'string'
      totalArtifacts: int
    }
    artifacts: [
      {
        artifactId: 'string'
        deploymentStatusMessage: 'string'
        installTime: 'string'
        parameters: [
          {
            name: 'string'
            value: 'string'
          }
        ]
        status: 'string'
        vmExtensionStatusMessage: 'string'
      }
    ]
    computeVm: {
      dataDiskIds: [
        'string'
      ]
      dataDisks: [
        {
          diskSizeGiB: int
          diskUri: 'string'
          managedDiskId: 'string'
          name: 'string'
        }
      ]
      networkInterfaceId: 'string'
      osDiskId: 'string'
      osType: 'string'
      statuses: [
        {
          code: 'string'
          displayStatus: 'string'
          message: 'string'
        }
      ]
      vmSize: 'string'
    }
    createdByUser: 'string'
    createdByUserId: 'string'
    createdDate: 'string'
    customImageId: 'string'
    disallowPublicIpAddress: bool
    environmentId: 'string'
    expirationDate: 'string'
    fqdn: 'string'
    galleryImageReference: {
      offer: 'string'
      osType: 'string'
      publisher: 'string'
      sku: 'string'
      version: 'string'
    }
    isAuthenticationWithSshKey: bool
    labSubnetName: 'string'
    labVirtualNetworkId: 'string'
    networkInterface: {
      dnsName: 'string'
      privateIpAddress: 'string'
      publicIpAddress: 'string'
      publicIpAddressId: 'string'
      rdpAuthority: 'string'
      sharedPublicIpAddressConfiguration: {
        inboundNatRules: [
          {
            backendPort: int
            frontendPort: int
            transportProtocol: 'string'
          }
        ]
      }
      sshAuthority: 'string'
      subnetId: 'string'
      virtualNetworkId: 'string'
    }
    notes: 'string'
    osType: 'string'
    ownerObjectId: 'string'
    ownerUserPrincipalName: 'string'
    password: 'string'
    provisioningState: 'string'
    size: 'string'
    sshKey: 'string'
    storageType: 'string'
    uniqueIdentifier: 'string'
    userName: 'string'
    virtualMachineCreationSource: 'string'
  }
}

Valores de propriedade

laboratórios/virtualmachines

Nome Descrição Valor
name O nome do recurso

Veja como definir nomes e tipos para recursos subordinados no Bicep.
cadeia (obrigatório)

Limite de carateres: 1-15 (Windows)
1-64 (Linux)

Carateres válidos:
Alfanuméricos e hífenes.

Comece e termine com alfanumérico. Não podem ser todos números.
localização A localização do recurso. string
etiquetas As etiquetas do recurso. Dicionário de nomes e valores de etiquetas. Ver Etiquetas em modelos
principal No Bicep, pode especificar o recurso principal de um recurso subordinado. Só tem de adicionar esta propriedade quando o recurso subordinado for declarado fora do recurso principal.

Para obter mais informações, veja Recurso subordinado fora do recurso principal.
Nome simbólico para recurso do tipo: laboratórios
propriedades As propriedades do recurso. LabVirtualMachineProperties (obrigatório)

LabVirtualMachineProperties

Nome Descrição Valor
allowClaim Indica se outro utilizador pode assumir a propriedade da máquina virtual bool
applicableSchedule A agenda aplicável para a máquina virtual. ApplicableSchedule
artifactDeploymentStatus O estado de implementação do artefacto da máquina virtual. ArtifactDeploymentStatusProperties
artefactos Os artefactos a instalar na máquina virtual. ArtifactInstallProperties[]
computeVm As propriedades da máquina virtual de computação. ComputeVmProperties
createdByUser O endereço de e-mail do criador da máquina virtual. string
createdByUserId O identificador de objeto do criador da máquina virtual. string
createdDate A data de criação da máquina virtual. string
customImageId O identificador de imagem personalizado da máquina virtual. string
disallowPublicIpAddress Indica se a máquina virtual deve ser criada sem um endereço IP público. bool
environmentId O ID de recurso do ambiente que contém esta máquina virtual, se existir. string
expirationDate A data de expiração da VM. string
fqdn O nome de domínio completamente qualificado da máquina virtual. string
galleryImageReference O Microsoft Azure Marketplace referência de imagem da máquina virtual. GalleryImageReference
isAuthenticationWithSshKey Indica se esta máquina virtual utiliza uma chave SSH para autenticação. bool
labSubnetName O nome da sub-rede do laboratório da máquina virtual. string
labVirtualNetworkId O identificador de rede virtual de laboratório da máquina virtual. string
networkInterface As propriedades da interface de rede. NetworkInterfaceProperties
notas As notas da máquina virtual. string
osType O tipo de SO da máquina virtual. string
ownerObjectId O identificador de objeto do proprietário da máquina virtual. string
ownerUserPrincipalName O nome principal de utilizador do proprietário da máquina virtual. string
palavra-passe A palavra-passe do administrador da máquina virtual. string
provisioningState O estado de aprovisionamento do recurso. string
size O tamanho da máquina virtual. string
sshKey A chave SSH do administrador da máquina virtual. string
storageType Tipo de armazenamento a utilizar para máquina virtual (ou seja, Standard, Premium). string
uniqueIdentifier O identificador imutável exclusivo de um recurso (Guid). string
userName O nome de utilizador da máquina virtual. string
virtualMachineCreationSource Indica a origem da criação da máquina virtual de laboratório. Apenas propriedade de saída. 'FromCustomImage'
'FromGalleryImage'

ApplicableSchedule

Nome Descrição Valor
localização A localização do recurso. string
propriedades As propriedades do recurso. ApplicableScheduleProperties (obrigatório)
etiquetas As etiquetas do recurso. objeto
localização A localização do recurso. string
propriedades As propriedades do recurso. ApplicableScheduleProperties (obrigatório)
etiquetas As etiquetas do recurso. objeto

ApplicableScheduleProperties

Nome Descrição Valor
labVmsShutdown O agendamento de encerramento automático, se tiver sido definido ao nível do laboratório ou do recurso de laboratório. Agenda
labVmsStartup O agendamento de arranque automático, se tiver sido definido ao nível do laboratório ou do recurso de laboratório. Agenda

Agenda

Nome Descrição Valor
localização A localização do recurso. string
propriedades As propriedades do recurso. ScheduleProperties (obrigatório)
etiquetas As etiquetas do recurso. objeto

ScheduleProperties

Nome Descrição Valor
diariamenteRecurrence Se a agenda ocorrer uma vez por dia da semana, especifique a periodicidade diária. DayDetails
hourlyRecurrence Se a agenda ocorrer várias vezes por dia, especifique a periodicidade por hora. HourDetails
notificationSettings Definições de notificação. NotificationSettings
provisioningState O estado de aprovisionamento do recurso. string
status O estado da agenda (ou seja, Ativado, Desativado) "Desativado"
"Ativado"
targetResourceId O ID do recurso ao qual a agenda pertence string
taskType O tipo de tarefa da agenda (por exemplo, LabVmsShutdownTask, LabVmAutoStart). string
timeZoneId O ID do fuso horário (por exemplo, hora padrão do Pacífico). string
uniqueIdentifier O identificador imutável exclusivo de um recurso (Guid). string
weeklyRecurrence Se a agenda ocorrer apenas alguns dias da semana, especifique a periodicidade semanal. WeekDetails

DayDetails

Nome Descrição Valor
hora A hora do dia em que a agenda ocorrerá. string

HourDetails

Nome Descrição Valor
minute Minutos da hora em que a agenda será executada. int

NotificationSettings

Nome Descrição Valor
status Se as notificações estiverem ativadas para esta agenda (ou seja, Ativada, Desativada). "Desativado"
"Ativado"
timeInMinutes Tempo em minutos antes do evento em que a notificação será enviada. int
webhookUrl O URL do webhook para o qual a notificação será enviada. string

WeekDetails

Nome Descrição Valor
hora A hora do dia em que a agenda ocorrerá. string
dias úteis Os dias da semana para os quais a agenda está definida (por exemplo, domingo, segunda-feira, terça-feira, etc.). cadeia[]

ArtifactDeploymentStatusProperties

Nome Descrição Valor
artifactsApplied A contagem total dos artefactos que foram aplicados com êxito. int
deploymentStatus O estado de implementação do artefacto. string
totalArtifacts A contagem total dos artefactos que foram aplicados em modo de tentativa. int

ArtifactInstallProperties

Nome Descrição Valor
artifactId O identificador do artefacto. string
deploymentStatusMessage A mensagem de estado da implementação. string
installTime A hora em que o artefacto começa a ser instalado na máquina virtual. string
parâmetros Os parâmetros do artefacto. ArtifactParameterProperties[]
status O estado do artefacto. string
vmExtensionStatusMessage A mensagem de estado da extensão da máquina virtual. string

ArtifactParameterProperties

Nome Descrição Valor
name O nome do parâmetro do artefacto. string
valor O valor do parâmetro do artefacto. string

ComputeVmProperties

Nome Descrição Valor
dataDiskIds Obtém o uri do blob dos discos de dados para a máquina virtual. cadeia[]
dataDisks Obtém todos os discos de dados anexados à máquina virtual. ComputeDataDisk[]
networkInterfaceId Obtém o ID da interface de rede da máquina virtual. string
osDiskId Obtém o uri do blob de disco do SO para a máquina virtual. string
osType Obtém o tipo de SO da máquina virtual. string
estados Obtém os estados da máquina virtual. ComputeVmInstanceViewStatus[]
vmSize Obtém o tamanho da máquina virtual. string

ComputeDataDisk

Nome Descrição Valor
diskSizeGiB Obtém o tamanho do disco de dados no GiB. int
diskUri Quando suportado por um blob, o URI do blob subjacente. string
managedDiskId Quando suportado pelo disco gerido, este é o ID do recurso de disco de computação. string
name Obtém o nome do disco de dados. string

ComputeVmInstanceViewStatus

Nome Descrição Valor
code Obtém o código de estado. string
displayStatus Obtém a etiqueta localizável curta para o estado. string
message Obtém a mensagem associada ao estado. string

GalleryImageReference

Nome Descrição Valor
oferta A oferta da imagem da galeria. string
osType O tipo de SO da imagem da galeria. string
publicador O editor da imagem da galeria. string
sku O SKU da imagem da galeria. string
versão A versão da imagem da galeria. string

NetworkInterfaceProperties

Nome Descrição Valor
dnsName O nome DNS. string
privateIpAddress O endereço IP privado. string
publicIpAddress O endereço IP público. string
publicIpAddressId O ID do recurso do endereço IP público. string
rdpAuthority A propriedade RdpAuthority é um nome de anfitrião DNS do servidor ou endereço IP seguido do número da porta de serviço para RDP (Remote Desktop Protocol). string
sharedPublicIpAddressConfiguration A configuração para partilhar um endereço IP público em várias máquinas virtuais. SharedPublicIpAddressConfiguration
sshAuthority A propriedade SshAuthority é um nome de anfitrião DNS do servidor ou endereço IP seguido do número da porta de serviço para SSH. string
subnetId O ID de recurso da sub-rede. string
virtualNetworkId O ID de recurso da rede virtual. string

SharedPublicIpAddressConfiguration

Nome Descrição Valor
inboundNatRules As regras NAT de entrada InboundNatRule[]

InboundNatRule

Nome Descrição Valor
backendPort A porta para a qual o tráfego externo será redirecionado. int
frontendPort A porta de ponto final externo da ligação de entrada. Os valores possíveis variam entre 1 e 65535, inclusive. Se não for especificado, um valor será alocado automaticamente. int
transportProtocol O protocolo de transporte do ponto final. 'Tcp'
"Udp"

Modelos de início rápido

Os seguintes modelos de início rápido implementam este tipo de recurso.

Modelo Description
Cria um laboratório no Azure DevTest Labs com uma VM do Windows Server

Implementar no Azure
Este modelo cria uma nova instância de DevTest Lab/DTL com uma VM do Windows Server 2019 Datacenter. Mais Modelos de Início Rápido do Azure Resource Manager para Azure DevTest Labs disponíveis emhttps://github.com/Azure/azure-devtestlab/tree/master/ARMTemplates
Cria um laboratório no Azure DevTest Labs com uma VM reclamada

Implementar no Azure
Este modelo cria uma nova instância de DevTest Lab/DTL com uma VM do Windows Server 2019 Datacenter reclamada. Mais Modelos de Início Rápido do Azure Resource Manager para Azure DevTest Labs disponíveis emhttps://github.com/Azure/azure-devtestlab/tree/master/ARMTemplates

Definição de recurso do modelo arm

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

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

Formato do recurso

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

{
  "type": "Microsoft.DevTestLab/labs/virtualmachines",
  "apiVersion": "2016-05-15",
  "name": "string",
  "location": "string",
  "tags": {
    "tagName1": "tagValue1",
    "tagName2": "tagValue2"
  },
  "properties": {
    "allowClaim": "bool",
    "applicableSchedule": {
      "location": "string",
      "properties": {
        "labVmsShutdown": {
          "location": "string",
          "properties": {
            "dailyRecurrence": {
              "time": "string"
            },
            "hourlyRecurrence": {
              "minute": "int"
            },
            "notificationSettings": {
              "status": "string",
              "timeInMinutes": "int",
              "webhookUrl": "string"
            },
            "provisioningState": "string",
            "status": "string",
            "targetResourceId": "string",
            "taskType": "string",
            "timeZoneId": "string",
            "uniqueIdentifier": "string",
            "weeklyRecurrence": {
              "time": "string",
              "weekdays": [ "string" ]
            }
          },
          "tags": {}
        },
        "labVmsStartup": {
          "location": "string",
          "properties": {
            "dailyRecurrence": {
              "time": "string"
            },
            "hourlyRecurrence": {
              "minute": "int"
            },
            "notificationSettings": {
              "status": "string",
              "timeInMinutes": "int",
              "webhookUrl": "string"
            },
            "provisioningState": "string",
            "status": "string",
            "targetResourceId": "string",
            "taskType": "string",
            "timeZoneId": "string",
            "uniqueIdentifier": "string",
            "weeklyRecurrence": {
              "time": "string",
              "weekdays": [ "string" ]
            }
          },
          "tags": {}
        }
      },
      "tags": {},
      "location": "string",
      "properties": {
        "labVmsShutdown": {
          "location": "string",
          "properties": {
            "dailyRecurrence": {
              "time": "string"
            },
            "hourlyRecurrence": {
              "minute": "int"
            },
            "notificationSettings": {
              "status": "string",
              "timeInMinutes": "int",
              "webhookUrl": "string"
            },
            "provisioningState": "string",
            "status": "string",
            "targetResourceId": "string",
            "taskType": "string",
            "timeZoneId": "string",
            "uniqueIdentifier": "string",
            "weeklyRecurrence": {
              "time": "string",
              "weekdays": [ "string" ]
            }
          },
          "tags": {}
        },
        "labVmsStartup": {
          "location": "string",
          "properties": {
            "dailyRecurrence": {
              "time": "string"
            },
            "hourlyRecurrence": {
              "minute": "int"
            },
            "notificationSettings": {
              "status": "string",
              "timeInMinutes": "int",
              "webhookUrl": "string"
            },
            "provisioningState": "string",
            "status": "string",
            "targetResourceId": "string",
            "taskType": "string",
            "timeZoneId": "string",
            "uniqueIdentifier": "string",
            "weeklyRecurrence": {
              "time": "string",
              "weekdays": [ "string" ]
            }
          },
          "tags": {}
        }
      },
      "tags": {}
    },
    "artifactDeploymentStatus": {
      "artifactsApplied": "int",
      "deploymentStatus": "string",
      "totalArtifacts": "int"
    },
    "artifacts": [
      {
        "artifactId": "string",
        "deploymentStatusMessage": "string",
        "installTime": "string",
        "parameters": [
          {
            "name": "string",
            "value": "string"
          }
        ],
        "status": "string",
        "vmExtensionStatusMessage": "string"
      }
    ],
    "computeVm": {
      "dataDiskIds": [ "string" ],
      "dataDisks": [
        {
          "diskSizeGiB": "int",
          "diskUri": "string",
          "managedDiskId": "string",
          "name": "string"
        }
      ],
      "networkInterfaceId": "string",
      "osDiskId": "string",
      "osType": "string",
      "statuses": [
        {
          "code": "string",
          "displayStatus": "string",
          "message": "string"
        }
      ],
      "vmSize": "string"
    },
    "createdByUser": "string",
    "createdByUserId": "string",
    "createdDate": "string",
    "customImageId": "string",
    "disallowPublicIpAddress": "bool",
    "environmentId": "string",
    "expirationDate": "string",
    "fqdn": "string",
    "galleryImageReference": {
      "offer": "string",
      "osType": "string",
      "publisher": "string",
      "sku": "string",
      "version": "string"
    },
    "isAuthenticationWithSshKey": "bool",
    "labSubnetName": "string",
    "labVirtualNetworkId": "string",
    "networkInterface": {
      "dnsName": "string",
      "privateIpAddress": "string",
      "publicIpAddress": "string",
      "publicIpAddressId": "string",
      "rdpAuthority": "string",
      "sharedPublicIpAddressConfiguration": {
        "inboundNatRules": [
          {
            "backendPort": "int",
            "frontendPort": "int",
            "transportProtocol": "string"
          }
        ]
      },
      "sshAuthority": "string",
      "subnetId": "string",
      "virtualNetworkId": "string"
    },
    "notes": "string",
    "osType": "string",
    "ownerObjectId": "string",
    "ownerUserPrincipalName": "string",
    "password": "string",
    "provisioningState": "string",
    "size": "string",
    "sshKey": "string",
    "storageType": "string",
    "uniqueIdentifier": "string",
    "userName": "string",
    "virtualMachineCreationSource": "string"
  }
}

Valores de propriedade

laboratórios/virtualmachines

Nome Descrição Valor
tipo O tipo de recurso "Microsoft.DevTestLab/labs/virtualmachines"
apiVersion A versão da API de recursos '2016-05-15'
name O nome do recurso

Veja como definir nomes e tipos para recursos subordinados em modelos arm JSON.
cadeia (obrigatório)

Limite de carateres: 1-15 (Windows)
1-64 (Linux)

Carateres válidos:
Alfanuméricos e hífenes.

Comece e termine com alfanumérico. Não podem ser todos números.
localização A localização do recurso. string
etiquetas As etiquetas do recurso. Dicionário de nomes e valores de etiquetas. Ver Etiquetas em modelos
propriedades As propriedades do recurso. LabVirtualMachineProperties (obrigatório)

LabVirtualMachineProperties

Nome Descrição Valor
allowClaim Indica se outro utilizador pode assumir a propriedade da máquina virtual bool
applicableSchedule A agenda aplicável para a máquina virtual. ApplicableSchedule
artifactDeploymentStatus O estado de implementação do artefacto da máquina virtual. ArtifactDeploymentStatusProperties
artefactos Os artefactos a instalar na máquina virtual. ArtifactInstallProperties[]
computeVm As propriedades da máquina virtual de computação. ComputeVmProperties
createdByUser O endereço de e-mail do criador da máquina virtual. string
createdByUserId O identificador de objeto do criador da máquina virtual. string
createdDate A data de criação da máquina virtual. string
customImageId O identificador de imagem personalizado da máquina virtual. string
disallowPublicIpAddress Indica se a máquina virtual deve ser criada sem um endereço IP público. bool
environmentId O ID de recurso do ambiente que contém esta máquina virtual, se existir. string
expirationDate A data de expiração da VM. string
fqdn O nome de domínio completamente qualificado da máquina virtual. string
galleryImageReference A referência de imagem do Microsoft Azure Marketplace da máquina virtual. GalleryImageReference
isAuthenticationWithSshKey Indica se esta máquina virtual utiliza uma chave SSH para autenticação. bool
labSubnetName O nome da sub-rede de laboratório da máquina virtual. string
labVirtualNetworkId O identificador de rede virtual de laboratório da máquina virtual. string
networkInterface As propriedades da interface de rede. NetworkInterfaceProperties
notas As notas da máquina virtual. string
osType O tipo de SO da máquina virtual. string
ownerObjectId O identificador de objeto do proprietário da máquina virtual. string
ownerUserPrincipalName O nome principal de utilizador do proprietário da máquina virtual. string
palavra-passe A palavra-passe do administrador da máquina virtual. string
provisioningState O estado de aprovisionamento do recurso. string
size O tamanho da máquina virtual. string
sshKey A chave SSH do administrador da máquina virtual. string
storageType Tipo de armazenamento a utilizar para máquina virtual (ou seja, Standard, Premium). string
uniqueIdentifier O identificador imutável exclusivo de um recurso (Guid). string
userName O nome de utilizador da máquina virtual. string
virtualMachineCreationSource Indica a origem da criação da máquina virtual de laboratório. Apenas propriedade de saída. 'FromCustomImage'
'FromGalleryImage'

ApplicableSchedule

Nome Descrição Valor
localização A localização do recurso. string
propriedades As propriedades do recurso. ApplicableScheduleProperties (obrigatório)
etiquetas As etiquetas do recurso. objeto
localização A localização do recurso. string
propriedades As propriedades do recurso. ApplicableScheduleProperties (obrigatório)
etiquetas As etiquetas do recurso. objeto

ApplicableScheduleProperties

Nome Descrição Valor
labVmsShutdown O agendamento de encerramento automático, se tiver sido definido ao nível do laboratório ou do recurso de laboratório. Agenda
labVmsStartup O agendamento de arranque automático, se tiver sido definido ao nível do laboratório ou do recurso de laboratório. Agenda

Agenda

Nome Descrição Valor
localização A localização do recurso. string
propriedades As propriedades do recurso. ScheduleProperties (obrigatório)
etiquetas As etiquetas do recurso. objeto

ScheduleProperties

Nome Descrição Valor
diariamenteRecurrence Se a agenda ocorrer uma vez por dia da semana, especifique a periodicidade diária. DayDetails
hourlyRecurrence Se a agenda ocorrer várias vezes por dia, especifique a periodicidade por hora. HourDetails
notificationSettings Definições de notificação. NotificationSettings
provisioningState O estado de aprovisionamento do recurso. string
status O estado da agenda (ou seja, Ativado, Desativado) "Desativado"
"Ativado"
targetResourceId O ID do recurso ao qual a agenda pertence string
taskType O tipo de tarefa da agenda (por exemplo, LabVmsShutdownTask, LabVmAutoStart). string
timeZoneId O ID do fuso horário (por exemplo, hora padrão do Pacífico). string
uniqueIdentifier O identificador imutável exclusivo de um recurso (Guid). string
weeklyRecurrence Se a agenda ocorrer apenas alguns dias da semana, especifique a periodicidade semanal. WeekDetails

DayDetails

Nome Descrição Valor
hora A hora do dia em que a agenda ocorrerá. string

HourDetails

Nome Descrição Valor
minute Minutos da hora em que a agenda será executada. int

NotificationSettings

Nome Descrição Valor
status Se as notificações estiverem ativadas para esta agenda (ou seja, Ativada, Desativada). "Desativado"
"Ativado"
timeInMinutes Tempo em minutos antes do evento em que a notificação será enviada. int
webhookUrl O URL do webhook para o qual a notificação será enviada. string

WeekDetails

Nome Descrição Valor
hora A hora do dia em que a agenda ocorrerá. string
dias úteis Os dias da semana para os quais a agenda está definida (por exemplo, domingo, segunda-feira, terça-feira, etc.). cadeia[]

ArtifactDeploymentStatusProperties

Nome Descrição Valor
artifactsApplied A contagem total dos artefactos que foram aplicados com êxito. int
deploymentStatus O estado de implementação do artefacto. string
totalArtifacts A contagem total dos artefactos que foram aplicados em modo de tentativa. int

ArtifactInstallProperties

Nome Descrição Valor
artifactId O identificador do artefacto. string
deploymentStatusMessage A mensagem de estado da implementação. string
installTime A hora em que o artefacto começa a ser instalado na máquina virtual. string
parâmetros Os parâmetros do artefacto. ArtifactParameterProperties[]
status O estado do artefacto. string
vmExtensionStatusMessage A mensagem de estado da extensão da máquina virtual. string

ArtifactParameterProperties

Nome Descrição Valor
name O nome do parâmetro do artefacto. string
valor O valor do parâmetro do artefacto. string

ComputeVmProperties

Nome Descrição Valor
dataDiskIds Obtém o uri do blob dos discos de dados para a máquina virtual. cadeia[]
dataDisks Obtém todos os discos de dados anexados à máquina virtual. ComputeDataDisk[]
networkInterfaceId Obtém o ID da interface de rede da máquina virtual. string
osDiskId Obtém o uri do blob de disco do SO para a máquina virtual. string
osType Obtém o tipo de SO da máquina virtual. string
estados Obtém os estados da máquina virtual. ComputeVmInstanceViewStatus[]
vmSize Obtém o tamanho da máquina virtual. string

ComputeDataDisk

Nome Descrição Valor
diskSizeGiB Obtém o tamanho do disco de dados no GiB. int
diskUri Quando suportado por um blob, o URI do blob subjacente. string
managedDiskId Quando suportado pelo disco gerido, este é o ID do recurso de disco de computação. string
name Obtém o nome do disco de dados. string

ComputeVmInstanceViewStatus

Nome Descrição Valor
code Obtém o código de estado. string
displayStatus Obtém a etiqueta localizável curta para o estado. string
message Obtém a mensagem associada ao estado. string

GalleryImageReference

Nome Descrição Valor
oferta A oferta da imagem da galeria. string
osType O tipo de SO da imagem da galeria. string
publicador O editor da imagem da galeria. string
sku O SKU da imagem da galeria. string
versão A versão da imagem da galeria. string

NetworkInterfaceProperties

Nome Descrição Valor
dnsName O nome DNS. string
privateIpAddress O endereço IP privado. string
publicIpAddress O endereço IP público. string
publicIpAddressId O ID do recurso do endereço IP público. string
rdpAuthority A propriedade RdpAuthority é um nome de anfitrião DNS do servidor ou endereço IP seguido do número da porta de serviço para RDP (Remote Desktop Protocol). string
sharedPublicIpAddressConfiguration A configuração para partilhar um endereço IP público em várias máquinas virtuais. SharedPublicIpAddressConfiguration
sshAuthority A propriedade SshAuthority é um nome de anfitrião DNS do servidor ou endereço IP seguido do número da porta de serviço para SSH. string
subnetId O ID do recurso da sub-rede. string
virtualNetworkId O ID do recurso da rede virtual. string

SharedPublicIpAddressConfiguration

Nome Descrição Valor
inboundNatRules As regras NAT recebidas InboundNatRule[]

InboundNatRule

Nome Descrição Valor
backendPort A porta para a qual o tráfego externo será redirecionado. int
frontendPort A porta de ponto final externo da ligação de entrada. Os valores possíveis variam entre 1 e 65535, inclusive. Se não for especificado, um valor será alocado automaticamente. int
transportProtocol O protocolo de transporte para o ponto final. 'Tcp'
'Udp'

Modelos de início rápido

Os seguintes modelos de início rápido implementam este tipo de recurso.

Modelo Description
Cria um laboratório no Azure DevTest Labs com uma VM do Windows Server

Implementar no Azure
Este modelo cria uma nova instância de DevTest Lab/DTL com uma VM do Datacenter do Windows Server 2019. Mais Modelos de Início Rápido do Azure Resource Manager para Azure DevTest Labs disponíveis emhttps://github.com/Azure/azure-devtestlab/tree/master/ARMTemplates
Cria um laboratório no Azure DevTest Labs com uma VM reclamada

Implementar no Azure
Este modelo cria uma nova instância de DevTest Lab/DTL com uma VM do Datacenter do Windows Server 2019 reclamada. Mais Modelos de Início Rápido do Azure Resource Manager para Azure DevTest Labs disponíveis emhttps://github.com/Azure/azure-devtestlab/tree/master/ARMTemplates

Definição de recurso do Terraform (fornecedor AzAPI)

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

  • Grupos de recursos

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

Formato do recurso

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

resource "azapi_resource" "symbolicname" {
  type = "Microsoft.DevTestLab/labs/virtualmachines@2016-05-15"
  name = "string"
  location = "string"
  parent_id = "string"
  tags = {
    tagName1 = "tagValue1"
    tagName2 = "tagValue2"
  }
  body = jsonencode({
    properties = {
      allowClaim = bool
      applicableSchedule = {
        location = "string"
        properties = {
          labVmsShutdown = {
            location = "string"
            properties = {
              dailyRecurrence = {
                time = "string"
              }
              hourlyRecurrence = {
                minute = int
              }
              notificationSettings = {
                status = "string"
                timeInMinutes = int
                webhookUrl = "string"
              }
              provisioningState = "string"
              status = "string"
              targetResourceId = "string"
              taskType = "string"
              timeZoneId = "string"
              uniqueIdentifier = "string"
              weeklyRecurrence = {
                time = "string"
                weekdays = [
                  "string"
                ]
              }
            }
            tags = {}
          }
          labVmsStartup = {
            location = "string"
            properties = {
              dailyRecurrence = {
                time = "string"
              }
              hourlyRecurrence = {
                minute = int
              }
              notificationSettings = {
                status = "string"
                timeInMinutes = int
                webhookUrl = "string"
              }
              provisioningState = "string"
              status = "string"
              targetResourceId = "string"
              taskType = "string"
              timeZoneId = "string"
              uniqueIdentifier = "string"
              weeklyRecurrence = {
                time = "string"
                weekdays = [
                  "string"
                ]
              }
            }
            tags = {}
          }
        }
        tags = {}
        location = "string"
        properties = {
          labVmsShutdown = {
            location = "string"
            properties = {
              dailyRecurrence = {
                time = "string"
              }
              hourlyRecurrence = {
                minute = int
              }
              notificationSettings = {
                status = "string"
                timeInMinutes = int
                webhookUrl = "string"
              }
              provisioningState = "string"
              status = "string"
              targetResourceId = "string"
              taskType = "string"
              timeZoneId = "string"
              uniqueIdentifier = "string"
              weeklyRecurrence = {
                time = "string"
                weekdays = [
                  "string"
                ]
              }
            }
            tags = {}
          }
          labVmsStartup = {
            location = "string"
            properties = {
              dailyRecurrence = {
                time = "string"
              }
              hourlyRecurrence = {
                minute = int
              }
              notificationSettings = {
                status = "string"
                timeInMinutes = int
                webhookUrl = "string"
              }
              provisioningState = "string"
              status = "string"
              targetResourceId = "string"
              taskType = "string"
              timeZoneId = "string"
              uniqueIdentifier = "string"
              weeklyRecurrence = {
                time = "string"
                weekdays = [
                  "string"
                ]
              }
            }
            tags = {}
          }
        }
        tags = {}
      }
      artifactDeploymentStatus = {
        artifactsApplied = int
        deploymentStatus = "string"
        totalArtifacts = int
      }
      artifacts = [
        {
          artifactId = "string"
          deploymentStatusMessage = "string"
          installTime = "string"
          parameters = [
            {
              name = "string"
              value = "string"
            }
          ]
          status = "string"
          vmExtensionStatusMessage = "string"
        }
      ]
      computeVm = {
        dataDiskIds = [
          "string"
        ]
        dataDisks = [
          {
            diskSizeGiB = int
            diskUri = "string"
            managedDiskId = "string"
            name = "string"
          }
        ]
        networkInterfaceId = "string"
        osDiskId = "string"
        osType = "string"
        statuses = [
          {
            code = "string"
            displayStatus = "string"
            message = "string"
          }
        ]
        vmSize = "string"
      }
      createdByUser = "string"
      createdByUserId = "string"
      createdDate = "string"
      customImageId = "string"
      disallowPublicIpAddress = bool
      environmentId = "string"
      expirationDate = "string"
      fqdn = "string"
      galleryImageReference = {
        offer = "string"
        osType = "string"
        publisher = "string"
        sku = "string"
        version = "string"
      }
      isAuthenticationWithSshKey = bool
      labSubnetName = "string"
      labVirtualNetworkId = "string"
      networkInterface = {
        dnsName = "string"
        privateIpAddress = "string"
        publicIpAddress = "string"
        publicIpAddressId = "string"
        rdpAuthority = "string"
        sharedPublicIpAddressConfiguration = {
          inboundNatRules = [
            {
              backendPort = int
              frontendPort = int
              transportProtocol = "string"
            }
          ]
        }
        sshAuthority = "string"
        subnetId = "string"
        virtualNetworkId = "string"
      }
      notes = "string"
      osType = "string"
      ownerObjectId = "string"
      ownerUserPrincipalName = "string"
      password = "string"
      provisioningState = "string"
      size = "string"
      sshKey = "string"
      storageType = "string"
      uniqueIdentifier = "string"
      userName = "string"
      virtualMachineCreationSource = "string"
    }
  })
}

Valores de propriedade

laboratórios/virtualmachines

Nome Descrição Valor
tipo O tipo de recurso "Microsoft.DevTestLab/labs/virtualmachines@2016-05-15"
name O nome do recurso cadeia (obrigatório)

Limite de carateres: 1-15 (Windows)
1-64 (Linux)

Carateres válidos:
Alfanuméricos e hífenes.

Comece e termine com alfanumérico. Não pode ser todos os números.
localização A localização do recurso. string
parent_id O ID do recurso que é o principal para este recurso. ID para recurso do tipo: laboratórios
etiquetas As etiquetas do recurso. Dicionário de nomes e valores de etiquetas.
propriedades As propriedades do recurso. LabVirtualMachineProperties (obrigatório)

LabVirtualMachineProperties

Nome Descrição Valor
allowClaim Indica se outro utilizador pode assumir a propriedade da máquina virtual bool
applicableSchedule A agenda aplicável para a máquina virtual. ApplicableSchedule
artifactDeploymentStatus O estado de implementação do artefacto da máquina virtual. ArtifactDeploymentStatusProperties
artefactos Os artefactos a instalar na máquina virtual. ArtifactInstallProperties[]
computeVm As propriedades da máquina virtual de computação. ComputeVmProperties
createdByUser O endereço de e-mail do criador da máquina virtual. string
createdByUserId O identificador de objeto do criador da máquina virtual. string
createdDate A data de criação da máquina virtual. string
customImageId O identificador de imagem personalizado da máquina virtual. string
disallowPublicIpAddress Indica se a máquina virtual deve ser criada sem um endereço IP público. bool
environmentId O ID de recurso do ambiente que contém esta máquina virtual, se existir. string
expirationDate A data de expiração da VM. string
fqdn O nome de domínio completamente qualificado da máquina virtual. string
galleryImageReference A referência de imagem do Microsoft Azure Marketplace da máquina virtual. GalleryImageReference
isAuthenticationWithSshKey Indica se esta máquina virtual utiliza uma chave SSH para autenticação. bool
labSubnetName O nome da sub-rede de laboratório da máquina virtual. string
labVirtualNetworkId O identificador de rede virtual de laboratório da máquina virtual. string
networkInterface As propriedades da interface de rede. NetworkInterfaceProperties
notas As notas da máquina virtual. string
osType O tipo de SO da máquina virtual. string
ownerObjectId O identificador de objeto do proprietário da máquina virtual. string
ownerUserPrincipalName O nome principal de utilizador do proprietário da máquina virtual. string
palavra-passe A palavra-passe do administrador da máquina virtual. string
provisioningState O estado de aprovisionamento do recurso. string
size O tamanho da máquina virtual. string
sshKey A chave SSH do administrador da máquina virtual. string
storageType Tipo de armazenamento a utilizar para máquina virtual (ou seja, Standard, Premium). string
uniqueIdentifier O identificador imutável exclusivo de um recurso (Guid). string
userName O nome de utilizador da máquina virtual. string
virtualMachineCreationSource Indica a origem da criação da máquina virtual de laboratório. Apenas propriedade de saída. "FromCustomImage"
"FromGalleryImage"

ApplicableSchedule

Nome Descrição Valor
localização A localização do recurso. string
propriedades As propriedades do recurso. ApplicableScheduleProperties (obrigatório)
etiquetas As etiquetas do recurso. objeto
localização A localização do recurso. string
propriedades As propriedades do recurso. ApplicableScheduleProperties (obrigatório)
etiquetas As etiquetas do recurso. objeto

ApplicableScheduleProperties

Nome Descrição Valor
labVmsShutdown O agendamento do encerramento automático, se tiver sido definido ao nível do laboratório ou do recurso de laboratório. Agenda
labVmsStartup O agendamento de arranque automático, se tiver sido definido ao nível do laboratório ou do recurso de laboratório. Agenda

Agenda

Nome Descrição Valor
localização A localização do recurso. string
propriedades As propriedades do recurso. ScheduleProperties (obrigatório)
etiquetas As etiquetas do recurso. objeto

ScheduleProperties

Nome Descrição Valor
diariamenteRecurrence Se a agenda ocorrer uma vez por dia da semana, especifique a periodicidade diária. Diadetalhes
hourlyRecurrence Se a agenda ocorrer várias vezes por dia, especifique a periodicidade por hora. HourDetails
notificationSettings Definições de notificação. NotificationSettings
provisioningState O estado de aprovisionamento do recurso. string
status O estado da agenda (ou seja, Ativado, Desativado) "Desativado"
"Ativado"
targetResourceId O ID do recurso ao qual a agenda pertence string
taskType O tipo de tarefa da agenda (por exemplo, LabVmsShutdownTask, LabVmAutoStart). string
timeZoneId O ID do fuso horário (por exemplo, hora Padrão do Pacífico). string
uniqueIdentifier O identificador imutável exclusivo de um recurso (Guid). string
periodicidade semanal Se a agenda ocorrer apenas alguns dias da semana, especifique a periodicidade semanal. WeekDetails

Diadetalhes

Nome Descrição Valor
hora A hora do dia em que a agenda irá ocorrer. string

HourDetails

Nome Descrição Valor
minute Minutos da hora em que a agenda será executada. int

NotificationSettings

Nome Descrição Valor
status Se as notificações estiverem ativadas para esta agenda (ou seja, Ativada, Desativada). "Desativado"
"Ativado"
timeInMinutes Tempo em minutos antes do evento em que a notificação será enviada. int
webhookUrl O URL do webhook para o qual a notificação será enviada. string

WeekDetails

Nome Descrição Valor
hora A hora do dia em que a agenda ocorrerá. string
dias úteis Os dias da semana para os quais a agenda está definida (por exemplo, domingo, segunda-feira, terça-feira, etc.). cadeia[]

ArtifactDeploymentStatusProperties

Nome Descrição Valor
artifactsApplied A contagem total dos artefactos que foram aplicados com êxito. int
deploymentStatus O estado de implementação do artefacto. string
totalArtifacts A contagem total dos artefactos que foram aplicados em modo de tentativa. int

ArtifactInstallProperties

Nome Descrição Valor
artifactId O identificador do artefacto. string
deploymentStatusMessage A mensagem de estado da implementação. string
installTime A hora em que o artefacto começa a ser instalado na máquina virtual. string
parâmetros Os parâmetros do artefacto. ArtifactParameterProperties[]
status O estado do artefacto. string
vmExtensionStatusMessage A mensagem de estado da extensão da máquina virtual. string

ArtifactParameterProperties

Nome Descrição Valor
name O nome do parâmetro do artefacto. string
valor O valor do parâmetro do artefacto. string

ComputeVmProperties

Nome Descrição Valor
dataDiskIds Obtém o uri do blob dos discos de dados para a máquina virtual. cadeia[]
dataDisks Obtém todos os discos de dados anexados à máquina virtual. ComputeDataDisk[]
networkInterfaceId Obtém o ID da interface de rede da máquina virtual. string
osDiskId Obtém o uri do blob de disco do SO para a máquina virtual. string
osType Obtém o tipo de SO da máquina virtual. string
estados Obtém os estados da máquina virtual. ComputeVmInstanceViewStatus[]
vmSize Obtém o tamanho da máquina virtual. string

ComputeDataDisk

Nome Descrição Valor
diskSizeGiB Obtém o tamanho do disco de dados no GiB. int
diskUri Quando suportado por um blob, o URI do blob subjacente. string
managedDiskId Quando suportado pelo disco gerido, este é o ID do recurso de disco de computação. string
name Obtém o nome do disco de dados. string

ComputeVmInstanceViewStatus

Nome Descrição Valor
code Obtém o código de estado. string
displayStatus Obtém a etiqueta localizável curta para o estado. string
message Obtém a mensagem associada ao estado. string

GalleryImageReference

Nome Descrição Valor
oferta A oferta da imagem da galeria. string
osType O tipo de SO da imagem da galeria. string
publicador O publicador da imagem da galeria. string
sku O SKU da imagem da galeria. string
versão A versão da imagem da galeria. string

NetworkInterfaceProperties

Nome Descrição Valor
dnsName O nome DNS. string
privateIpAddress O endereço IP privado. string
publicIpAddress O endereço IP público. string
publicIpAddressId O ID de recurso do endereço IP público. string
rdpAuthority A propriedade RdpAuthority é um nome de anfitrião DNS do servidor ou endereço IP seguido do número da porta de serviço para RDP (Remote Desktop Protocol). string
sharedPublicIpAddressConfiguration A configuração para partilhar um endereço IP público em várias máquinas virtuais. SharedPublicIpAddressConfiguration
sshAuthority A propriedade SshAuthority é um nome de anfitrião DNS do servidor ou endereço IP seguido do número da porta de serviço para SSH. string
subnetId O ID de recurso da sub-rede. string
virtualNetworkId O ID de recurso da rede virtual. string

SharedPublicIpAddressConfiguration

Nome Descrição Valor
inboundNatRules As regras NAT de entrada InboundNatRule[]

InboundNatRule

Nome Descrição Valor
backendPort A porta para a qual o tráfego externo será redirecionado. int
frontendPort A porta de ponto final externo da ligação de entrada. Os valores possíveis variam entre 1 e 65535, inclusive. Se não for especificado, um valor será alocado automaticamente. int
transportProtocol O protocolo de transporte do ponto final. "Tcp"
"Udp"