Compartir a través de


Microsoft.DevTestLab labs/virtualmachines 2016-05-15

Definición de recursos de Bicep

El tipo de recurso labs/virtualmachines se puede implementar con operaciones destinadas a:

Para obtener una lista de las propiedades modificadas en cada versión de API, consulte registro de cambios.

Formato de los recursos

Para crear un recurso Microsoft.DevTestLab/labs/virtualmachines, agregue el siguiente bicep a la plantilla.

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 propiedad

labs/virtualmachines

Nombre Descripción Value
name El nombre del recurso

Vea cómo establecer nombres y tipos para recursos secundarios en Bicep.
string (obligatorio)

Límite de caracteres: 1-15 (Windows)
1-64 (Linux)

Caracteres válidos:
Caracteres alfanuméricos y guiones.

Comience y termine con un carácter alfanumérico. No puede constar de números en su totalidad.
ubicación Ubicación del recurso. string
etiquetas Etiquetas del recurso. Diccionario de nombres y valores de etiqueta. Consulte Etiquetas en plantillas.
primario En Bicep, puede especificar el recurso primario para un recurso secundario. Solo tiene que agregar esta propiedad cuando el recurso secundario se declara fuera del recurso primario.

Para más información, consulte Recurso secundario fuera del recurso primario.
Nombre simbólico del recurso de tipo: laboratorios
properties Propiedades del recurso. LabVirtualMachineProperties (obligatorio)

LabVirtualMachineProperties

Nombre Descripción Valor
allowClaim Indica si otro usuario puede tomar posesión de la máquina virtual. bool
applicableSchedule Programación aplicable para la máquina virtual. ApplicableSchedule
artifactDeploymentStatus Estado de implementación del artefacto para la máquina virtual. ArtifactDeploymentStatusProperties
artifacts Artefactos que se van a instalar en la máquina virtual. ArtifactInstallProperties[]
computeVm Propiedades de la máquina virtual de proceso. ComputeVmProperties
createdByUser Dirección de correo electrónico del creador de la máquina virtual. string
createdByUserId Identificador de objeto del creador de la máquina virtual. string
createdDate Fecha de creación de la máquina virtual. string
customImageId Identificador de imagen personalizado de la máquina virtual. string
no permitirPublicIpAddress Indica si la máquina virtual se va a crear sin una dirección IP pública. bool
environmentId Identificador de recurso del entorno que contiene esta máquina virtual, si existe. string
expirationDate Fecha de expiración de la máquina virtual. string
fqdn Nombre de dominio completo de la máquina virtual. string
galleryImageReference Referencia de imagen de Microsoft Azure Marketplace de la máquina virtual. GalleryImageReference
isAuthenticationWithSshKey Indica si esta máquina virtual usa una clave SSH para la autenticación. bool
labSubnetName Nombre de subred del laboratorio de la máquina virtual. string
labVirtualNetworkId Identificador de red virtual del laboratorio de la máquina virtual. string
networkInterface Propiedades de la interfaz de red. NetworkInterfaceProperties
HDInsight Notas de la máquina virtual. string
osType Tipo de sistema operativo de la máquina virtual. string
ownerObjectId Identificador de objeto del propietario de la máquina virtual. string
ownerUserPrincipalName Nombre principal de usuario del propietario de la máquina virtual. string
password Contraseña del administrador de la máquina virtual. string
provisioningState Estado de aprovisionamiento del recurso. string
tamaño Tamaño de la máquina virtual. string
sshKey Clave SSH del administrador de la máquina virtual. string
storageType Tipo de almacenamiento que se va a usar para la máquina virtual (es decir, Estándar, Premium). string
Uniqueidentifier Identificador inmutable único de un recurso (Guid). string
userName Nombre de usuario de la máquina virtual. string
virtualMachineCreationSource Indica el origen de la creación de una máquina virtual de laboratorio. Solo propiedad de salida. 'FromCustomImage'
'FromGalleryImage'

ApplicableSchedule

Nombre Descripción Value
ubicación Ubicación del recurso. string
properties Propiedades del recurso. ApplicableScheduleProperties (obligatorio)
etiquetas Etiquetas del recurso. object
ubicación Ubicación del recurso. string
properties Propiedades del recurso. ApplicableScheduleProperties (obligatorio)
etiquetas Etiquetas del recurso. object

ApplicableScheduleProperties

Nombre Descripción Valor
labVmsShutdown La programación de apagado automático, si se ha establecido uno en el nivel de recurso de laboratorio o laboratorio. Programación
labVmsStartup La programación de inicio automático, si se ha establecido una en el nivel de recurso de laboratorio o laboratorio. Programación

Programación

Nombre Descripción Value
ubicación Ubicación del recurso. string
properties Propiedades del recurso. ScheduleProperties (obligatorio)
etiquetas Etiquetas del recurso. object

ScheduleProperties

Nombre Descripción Valor
dailyRecurrence Si la programación se producirá una vez cada día de la semana, especifique la periodicidad diaria. DayDetails
hourlyRecurrence Si la programación se producirá varias veces al día, especifique la periodicidad por hora. HourDetails
notificationSettings Configuración de notificación. NotificationSettings
provisioningState Estado de aprovisionamiento del recurso. string
status Estado de la programación (es decir, Habilitado, Deshabilitado) 'Deshabilitado'
'Habilitado'
targetResourceId Identificador de recurso al que pertenece la programación string
taskType Tipo de tarea de la programación (por ejemplo, LabVmsShutdownTask, LabVmAutoStart). string
timeZoneId Identificador de zona horaria (por ejemplo, hora estándar del Pacífico). string
Uniqueidentifier Identificador inmutable único de un recurso (Guid). string
weeklyRecurrence Si la programación se producirá solo algunos días de la semana, especifique la periodicidad semanal. WeekDetails

DayDetails

Nombre Descripción Valor
time Hora del día en que se producirá la programación. string

HourDetails

Nombre Descripción Valor
minute Minutos de la hora en que se ejecutará la programación. int

NotificationSettings

Nombre Descripción Valor
status Si las notificaciones están habilitadas para esta programación (es decir, Habilitada, Deshabilitada). 'Deshabilitado'
'Habilitado'
timeInMinutes Tiempo en minutos antes del evento en el que se enviará la notificación. int
webhookUrl Dirección URL del webhook a la que se enviará la notificación. string

WeekDetails

Nombre Descripción Valor
time Hora del día en que se producirá la programación. string
días entre semana Los días de la semana para los que se establece la programación (por ejemplo, domingo, lunes, martes, etc.). string[]

ArtifactDeploymentStatusProperties

Nombre Descripción Valor
artifactsApplied Recuento total de los artefactos que se aplicaron correctamente. int
deploymentStatus Estado de implementación del artefacto. string
totalArtifacts Recuento total de los artefactos que se aplicaron provisionalmente. int

ArtifactInstallProperties

Nombre Descripción Valor
artifactId Identificador del artefacto. string
deploymentStatusMessage Mensaje de estado de la implementación. string
installTime Hora a la que el artefacto comienza a instalarse en la máquina virtual. string
parámetros Parámetros del artefacto. ArtifactParameterProperties[]
status Estado del artefacto. string
vmExtensionStatusMessage Mensaje de estado de la extensión de máquina virtual. string

ArtifactParameterProperties

Nombre Descripción Value
name Nombre del parámetro artifact. string
value Valor del parámetro artifact. string

ComputeVmProperties

Nombre Descripción Valor
dataDiskIds Obtiene el URI de blob de discos de datos para la máquina virtual. string[]
dataDisks Obtiene todos los discos de datos conectados a la máquina virtual. ComputeDataDisk[]
networkInterfaceId Obtiene el identificador de interfaz de red de la máquina virtual. string
osDiskId Obtiene el URI del blob de disco del sistema operativo para la máquina virtual. string
osType Obtiene el tipo de sistema operativo de la máquina virtual. string
statuses Obtiene los estados de la máquina virtual. ComputeVmInstanceViewStatus[]
vmSize Obtiene el tamaño de la máquina virtual. string

ComputeDataDisk

Nombre Descripción Valor
diskSizeGiB Obtiene el tamaño del disco de datos en GiB. int
diskUri Cuando un blob está respaldado por un blob, el URI del blob subyacente. string
managedDiskId Cuando está respaldado por un disco administrado, este es el identificador del recurso de disco de proceso. string
name Obtiene el nombre del disco de datos. string

ComputeVmInstanceViewStatus

Nombre Descripción Valor
código Obtiene el código de estado. string
displayStatus Obtiene la etiqueta localizable corta para el estado. string
message Obtiene el mensaje asociado al estado. string

GalleryImageReference

Nombre Descripción Valor
offer Oferta de la imagen de la galería. string
osType Tipo de sistema operativo de la imagen de la galería. string
publisher Publicador de la imagen de la galería. string
sku SKU de la imagen de la galería. string
version Versión de la imagen de la galería. string

NetworkInterfaceProperties

Nombre Descripción Valor
dnsName Nombre de DNS. string
privateIpAddress Dirección IP privada. string
publicIpAddress La dirección IP pública. string
publicIpAddressId Identificador de recurso de la dirección IP pública. string
rdpAuthority La propiedad RdpAuthority es un nombre de host DNS del servidor o una dirección IP seguido del número de puerto de servicio para RDP (Protocolo de escritorio remoto). string
sharedPublicIpAddressConfiguration Configuración para compartir una dirección IP pública en varias máquinas virtuales. SharedPublicIpAddressConfiguration
sshAuthority La propiedad SshAuthority es un nombre de host DNS del servidor o una dirección IP seguido del número de puerto de servicio para SSH. string
subnetId Identificador de recurso de la subred. string
virtualNetworkId Identificador de recurso de la red virtual. string

SharedPublicIpAddressConfiguration

Nombre Descripción Valor
inboundNatRules Reglas NAT entrantes InboundNatRule[]

InboundNatRule

Nombre Descripción Valor
backendPort Puerto al que se redirigirá el tráfico externo. int
frontendPort Puerto de punto de conexión externo de la conexión entrante. El intervalo de valores posibles oscila entre 1 y 65535, ambos inclusive. Si no se especifica, se asignará automáticamente un valor. int
transportProtocol Protocolo de transporte para el extremo. 'Tcp'
'Udp'

Plantillas de inicio rápido

Las siguientes plantillas de inicio rápido implementan este tipo de recurso.

Plantilla Descripción
Crea un laboratorio en Azure DevTest Labs con una máquina virtual Windows Server

Implementación en Azure
Esta plantilla crea una nueva instancia de DevTest Lab/DTL con una máquina virtual de Windows Server 2019 Datacenter en ella. Más plantillas de inicio rápido de Azure Resource Manager para Azure DevTest Labs disponibles enhttps://github.com/Azure/azure-devtestlab/tree/master/ARMTemplates
Crea un laboratorio en Azure DevTest Labs con una máquina virtual reclamada

Implementación en Azure
Esta plantilla crea una nueva instancia de DevTest Lab/DTL con una máquina virtual de Windows Server 2019 Datacenter reclamada en ella. Más plantillas de inicio rápido de Azure Resource Manager para Azure DevTest Labs disponibles enhttps://github.com/Azure/azure-devtestlab/tree/master/ARMTemplates

Definición de recursos de plantilla de ARM

El tipo de recurso labs/virtualmachines se puede implementar con operaciones destinadas a:

Para obtener una lista de las propiedades modificadas en cada versión de API, consulte registro de cambios.

Formato de los recursos

Para crear un recurso Microsoft.DevTestLab/labs/virtualmachines, agregue el siguiente json a la plantilla.

{
  "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 propiedad

labs/virtualmachines

Nombre Descripción Value
type Tipo de recurso 'Microsoft.DevTestLab/labs/virtualmachines'
apiVersion La versión de la API de recursos '2016-05-15'
name El nombre del recurso

Vea cómo establecer nombres y tipos para recursos secundarios en plantillas de ARM JSON.
string (obligatorio)

Límite de caracteres: 1-15 (Windows)
1-64 (Linux)

Caracteres válidos:
Caracteres alfanuméricos y guiones.

Comience y termine con un carácter alfanumérico. No puede constar de números en su totalidad.
ubicación Ubicación del recurso. string
etiquetas Etiquetas del recurso. Diccionario de nombres y valores de etiqueta. Consulte Etiquetas en plantillas.
properties Propiedades del recurso. LabVirtualMachineProperties (obligatorio)

LabVirtualMachineProperties

Nombre Descripción Valor
allowClaim Indica si otro usuario puede tomar posesión de la máquina virtual. bool
applicableSchedule Programación aplicable para la máquina virtual. ApplicableSchedule
artifactDeploymentStatus Estado de implementación del artefacto para la máquina virtual. ArtifactDeploymentStatusProperties
artifacts Artefactos que se van a instalar en la máquina virtual. ArtifactInstallProperties[]
computeVm Propiedades de la máquina virtual de proceso. ComputeVmProperties
createdByUser Dirección de correo electrónico del creador de la máquina virtual. string
createdByUserId Identificador de objeto del creador de la máquina virtual. string
createdDate Fecha de creación de la máquina virtual. string
customImageId Identificador de imagen personalizado de la máquina virtual. string
disallowPublicIpAddress Indica si la máquina virtual se va a crear sin una dirección IP pública. bool
environmentId Identificador de recurso del entorno que contiene esta máquina virtual, si existe. string
expirationDate Fecha de expiración de la máquina virtual. string
fqdn Nombre de dominio completo de la máquina virtual. string
galleryImageReference La referencia de imagen de Microsoft Azure Marketplace de la máquina virtual. GalleryImageReference
isAuthenticationWithSshKey Indica si esta máquina virtual usa una clave SSH para la autenticación. bool
labSubnetName El nombre de subred del laboratorio de la máquina virtual. string
labVirtualNetworkId Identificador de red virtual del laboratorio de la máquina virtual. string
networkInterface Propiedades de la interfaz de red. NetworkInterfaceProperties
HDInsight Notas de la máquina virtual. string
osType El tipo de sistema operativo de la máquina virtual. string
ownerObjectId Identificador de objeto del propietario de la máquina virtual. string
ownerUserPrincipalName Nombre principal de usuario del propietario de la máquina virtual. string
password Contraseña del administrador de la máquina virtual. string
provisioningState Estado de aprovisionamiento del recurso. string
tamaño Tamaño de la máquina virtual. string
sshKey Clave SSH del administrador de la máquina virtual. string
storageType Tipo de almacenamiento que se va a usar para la máquina virtual (es decir, Estándar, Premium). string
Uniqueidentifier Identificador inmutable único de un recurso (Guid). string
userName Nombre de usuario de la máquina virtual. string
virtualMachineCreationSource Indica el origen de la creación de una máquina virtual de laboratorio. Solo propiedad de salida. 'FromCustomImage'
'FromGalleryImage'

ApplicableSchedule

Nombre Descripción Value
ubicación Ubicación del recurso. string
properties Propiedades del recurso. ApplicableScheduleProperties (obligatorio)
etiquetas Las etiquetas del recurso. object
ubicación Ubicación del recurso. string
properties Propiedades del recurso. ApplicableScheduleProperties (obligatorio)
etiquetas Las etiquetas del recurso. object

ApplicableScheduleProperties

Nombre Descripción Valor
labVmsShutdown La programación de apagado automático, si se ha establecido una en el nivel de recurso de laboratorio o laboratorio. Programación
labVmsStartup La programación de inicio automático, si se ha establecido una en el nivel de recurso de laboratorio o laboratorio. Programación

Programación

Nombre Descripción Value
ubicación Ubicación del recurso. string
properties Propiedades del recurso. ScheduleProperties (obligatorio)
etiquetas Las etiquetas del recurso. object

ScheduleProperties

Nombre Descripción Valor
dailyRecurrence Si la programación se producirá una vez cada día de la semana, especifique la periodicidad diaria. DayDetails
hourlyRecurrence Si la programación se producirá varias veces al día, especifique la periodicidad horaria. HourDetails
notificationSettings Configuración de notificación. NotificationSettings
provisioningState Estado de aprovisionamiento del recurso. string
status Estado de la programación (es decir, Habilitado, Deshabilitado) 'Deshabilitado'
'Habilitado'
targetResourceId Identificador de recurso al que pertenece la programación string
taskType Tipo de tarea de la programación (por ejemplo, LabVmsShutdownTask, LabVmAutoStart). string
timeZoneId El identificador de zona horaria (por ejemplo, hora estándar del Pacífico). string
Uniqueidentifier Identificador inmutable único de un recurso (Guid). string
weeklyRecurrence Si la programación solo se producirá algunos días de la semana, especifique la periodicidad semanal. WeekDetails

DayDetails

Nombre Descripción Valor
time La hora del día en que se producirá la programación. string

HourDetails

Nombre Descripción Valor
minute Minutos de la hora en que se ejecutará la programación. int

NotificationSettings

Nombre Descripción Valor
status Si las notificaciones están habilitadas para esta programación (es decir, Habilitada, Deshabilitada). 'Deshabilitado'
'Habilitado'
timeInMinutes Tiempo en minutos antes del evento en el que se enviará la notificación. int
webhookUrl Dirección URL del webhook a la que se enviará la notificación. string

WeekDetails

Nombre Descripción Valor
time Hora del día en que se producirá la programación. string
días entre semana Días de la semana para los que se establece la programación (por ejemplo, domingo, lunes, martes, etc.). string[]

ArtifactDeploymentStatusProperties

Nombre Descripción Valor
artifactsApplied Recuento total de los artefactos que se aplicaron correctamente. int
deploymentStatus Estado de implementación del artefacto. string
totalArtifacts Recuento total de los artefactos que se aplicaron provisionalmente. int

ArtifactInstallProperties

Nombre Descripción Valor
artifactId Identificador del artefacto. string
deploymentStatusMessage Mensaje de estado de la implementación. string
installTime Hora a la que el artefacto comienza a instalarse en la máquina virtual. string
parámetros Parámetros del artefacto. ArtifactParameterProperties[]
status Estado del artefacto. string
vmExtensionStatusMessage Mensaje de estado de la extensión de máquina virtual. string

ArtifactParameterProperties

Nombre Descripción Value
name Nombre del parámetro artifact. string
value Valor del parámetro artifact. string

ComputeVmProperties

Nombre Descripción Valor
dataDiskIds Obtiene el URI de blob de discos de datos para la máquina virtual. string[]
dataDisks Obtiene todos los discos de datos conectados a la máquina virtual. ComputeDataDisk[]
networkInterfaceId Obtiene el identificador de interfaz de red de la máquina virtual. string
osDiskId Obtiene el URI del blob de disco del sistema operativo para la máquina virtual. string
osType Obtiene el tipo de sistema operativo de la máquina virtual. string
statuses Obtiene los estados de la máquina virtual. ComputeVmInstanceViewStatus[]
vmSize Obtiene el tamaño de la máquina virtual. string

ComputeDataDisk

Nombre Descripción Valor
diskSizeGiB Obtiene el tamaño del disco de datos en GiB. int
diskUri Cuando un blob está respaldado por un blob, el URI del blob subyacente. string
managedDiskId Cuando está respaldado por un disco administrado, este es el identificador del recurso de disco de proceso. string
name Obtiene el nombre del disco de datos. string

ComputeVmInstanceViewStatus

Nombre Descripción Valor
código Obtiene el código de estado. string
displayStatus Obtiene la etiqueta localizable corta para el estado. string
message Obtiene el mensaje asociado al estado. string

GalleryImageReference

Nombre Descripción Valor
offer Oferta de la imagen de la galería. string
osType El tipo de sistema operativo de la imagen de la galería. string
publisher Publicador de la imagen de la galería. string
sku SKU de la imagen de la galería. string
version La versión de la imagen de la galería. string

NetworkInterfaceProperties

Nombre Descripción Valor
dnsName Nombre de DNS. string
privateIpAddress La dirección IP privada. string
publicIpAddress La dirección IP pública. string
publicIpAddressId Identificador de recurso de la dirección IP pública. string
rdpAuthority La propiedad RdpAuthority es un nombre de host DNS del servidor o una dirección IP seguido del número de puerto de servicio para RDP (Protocolo de escritorio remoto). string
sharedPublicIpAddressConfiguration Configuración para compartir una dirección IP pública en varias máquinas virtuales. SharedPublicIpAddressConfiguration
sshAuthority La propiedad SshAuthority es un nombre de host DNS del servidor o una dirección IP seguido del número de puerto de servicio para SSH. string
subnetId Identificador de recurso de la subred. string
virtualNetworkId Identificador de recurso de la red virtual. string

SharedPublicIpAddressConfiguration

Nombre Descripción Valor
inboundNatRules Reglas NAT entrantes InboundNatRule[]

InboundNatRule

Nombre Descripción Valor
backendPort Puerto al que se redirigirá el tráfico externo. int
frontendPort Puerto de punto de conexión externo de la conexión de entrada. El intervalo de valores posibles oscila entre 1 y 65535, ambos inclusive. Si no se especifica, se asignará automáticamente un valor. int
transportProtocol Protocolo de transporte para el extremo. 'Tcp'
'Udp'

Plantillas de inicio rápido

Las siguientes plantillas de inicio rápido implementan este tipo de recurso.

Plantilla Descripción
Crea un laboratorio en Azure DevTest Labs con una máquina virtual Windows Server

Implementación en Azure
Esta plantilla crea una nueva instancia de DevTest Lab/DTL con una máquina virtual de Windows Server 2019 Datacenter en ella. Más plantillas de inicio rápido de Azure Resource Manager para Azure DevTest Labs disponibles enhttps://github.com/Azure/azure-devtestlab/tree/master/ARMTemplates
Crea un laboratorio en Azure DevTest Labs con una máquina virtual reclamada

Implementación en Azure
Esta plantilla crea una nueva instancia de DevTest Lab/DTL con una máquina virtual de Windows Server 2019 Datacenter reclamada en ella. Más plantillas de inicio rápido de Azure Resource Manager para Azure DevTest Labs disponibles enhttps://github.com/Azure/azure-devtestlab/tree/master/ARMTemplates

Definición de recursos de Terraform (proveedor AzAPI)

El tipo de recurso labs/virtualmachines se puede implementar con operaciones que tienen como destino:

  • Grupos de recursos

Para obtener una lista de las propiedades modificadas en cada versión de api, consulte registro de cambios.

Formato de los recursos

Para crear un recurso Microsoft.DevTestLab/labs/virtualmachines, agregue el siguiente terraform a la plantilla.

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 propiedad

labs/virtualmachines

Nombre Descripción Value
type Tipo de recurso "Microsoft.DevTestLab/labs/virtualmachines@2016-05-15"
name El nombre del recurso string (obligatorio)

Límite de caracteres: 1-15 (Windows)
1-64 (Linux)

Caracteres válidos:
Caracteres alfanuméricos y guiones.

Comience y termine con un carácter alfanumérico. No puede constar de números en su totalidad.
ubicación Ubicación del recurso. string
parent_id Identificador del recurso que es el elemento primario de este recurso. Identificador del recurso de tipo: laboratorios
etiquetas Etiquetas del recurso. Diccionario de nombres y valores de etiqueta.
properties Propiedades del recurso. LabVirtualMachineProperties (obligatorio)

LabVirtualMachineProperties

Nombre Descripción Valor
allowClaim Indica si otro usuario puede tomar posesión de la máquina virtual. bool
applicableSchedule Programación aplicable para la máquina virtual. ApplicableSchedule
artifactDeploymentStatus Estado de implementación del artefacto para la máquina virtual. ArtifactDeploymentStatusProperties
artifacts Artefactos que se van a instalar en la máquina virtual. ArtifactInstallProperties[]
computeVm Propiedades de la máquina virtual de proceso. ComputeVmProperties
createdByUser Dirección de correo electrónico del creador de la máquina virtual. string
createdByUserId Identificador de objeto del creador de la máquina virtual. string
createdDate Fecha de creación de la máquina virtual. string
customImageId Identificador de imagen personalizado de la máquina virtual. string
no permitirPublicIpAddress Indica si la máquina virtual se va a crear sin una dirección IP pública. bool
environmentId Identificador de recurso del entorno que contiene esta máquina virtual, si existe. string
expirationDate Fecha de expiración de la máquina virtual. string
fqdn Nombre de dominio completo de la máquina virtual. string
galleryImageReference Referencia de imagen de Microsoft Azure Marketplace de la máquina virtual. GalleryImageReference
isAuthenticationWithSshKey Indica si esta máquina virtual usa una clave SSH para la autenticación. bool
labSubnetName Nombre de subred del laboratorio de la máquina virtual. string
labVirtualNetworkId Identificador de red virtual del laboratorio de la máquina virtual. string
networkInterface Propiedades de la interfaz de red. NetworkInterfaceProperties
HDInsight Notas de la máquina virtual. string
osType Tipo de sistema operativo de la máquina virtual. string
ownerObjectId Identificador de objeto del propietario de la máquina virtual. string
ownerUserPrincipalName Nombre principal de usuario del propietario de la máquina virtual. string
password Contraseña del administrador de la máquina virtual. string
provisioningState Estado de aprovisionamiento del recurso. string
tamaño Tamaño de la máquina virtual. string
sshKey Clave SSH del administrador de la máquina virtual. string
storageType Tipo de almacenamiento que se va a usar para la máquina virtual (es decir, Estándar, Premium). string
Uniqueidentifier Identificador inmutable único de un recurso (Guid). string
userName Nombre de usuario de la máquina virtual. string
virtualMachineCreationSource Indica el origen de la creación de una máquina virtual de laboratorio. Solo propiedad de salida. "FromCustomImage"
"FromGalleryImage"

ApplicableSchedule

Nombre Descripción Value
ubicación Ubicación del recurso. string
properties Propiedades del recurso. ApplicableScheduleProperties (obligatorio)
etiquetas Las etiquetas del recurso. object
ubicación Ubicación del recurso. string
properties Propiedades del recurso. ApplicableScheduleProperties (obligatorio)
etiquetas Las etiquetas del recurso. object

ApplicableScheduleProperties

Nombre Descripción Valor
labVmsShutdown La programación de apagado automático, si se ha establecido una en el nivel de recurso de laboratorio o laboratorio. Programación
labVmsStartup La programación de inicio automático, si se ha establecido una en el nivel de recurso de laboratorio o laboratorio. Programación

Programación

Nombre Descripción Value
ubicación Ubicación del recurso. string
properties Propiedades del recurso. ScheduleProperties (obligatorio)
etiquetas Las etiquetas del recurso. object

ScheduleProperties

Nombre Descripción Valor
dailyRecurrence Si la programación se producirá una vez cada día de la semana, especifique la periodicidad diaria. DayDetails
hourlyRecurrence Si la programación se producirá varias veces al día, especifique la periodicidad horaria. HourDetails
notificationSettings Configuración de notificación. NotificationSettings
provisioningState Estado de aprovisionamiento del recurso. string
status Estado de la programación (es decir, Habilitado, Deshabilitado) "Deshabilitado"
"Habilitado"
targetResourceId Identificador de recurso al que pertenece la programación string
taskType Tipo de tarea de la programación (por ejemplo, LabVmsShutdownTask, LabVmAutoStart). string
timeZoneId El identificador de zona horaria (por ejemplo, hora estándar del Pacífico). string
Uniqueidentifier Identificador inmutable único de un recurso (Guid). string
weeklyRecurrence Si la programación solo se producirá algunos días de la semana, especifique la periodicidad semanal. WeekDetails

DayDetails

Nombre Descripción Valor
time La hora del día en que se producirá la programación. string

HourDetails

Nombre Descripción Valor
minute Minutos de la hora en que se ejecutará la programación. int

NotificationSettings

Nombre Descripción Valor
status Si las notificaciones están habilitadas para esta programación (es decir, Habilitada, Deshabilitada). "Deshabilitado"
"Habilitado"
timeInMinutes Tiempo en minutos antes del evento en el que se enviará la notificación. int
webhookUrl Dirección URL del webhook a la que se enviará la notificación. string

WeekDetails

Nombre Descripción Valor
time Hora del día en que se producirá la programación. string
días entre semana Días de la semana para los que se establece la programación (por ejemplo, domingo, lunes, martes, etc.). string[]

ArtifactDeploymentStatusProperties

Nombre Descripción Valor
artifactsApplied Recuento total de los artefactos que se aplicaron correctamente. int
deploymentStatus Estado de implementación del artefacto. string
totalArtifacts Recuento total de los artefactos que se aplicaron provisionalmente. int

ArtifactInstallProperties

Nombre Descripción Valor
artifactId Identificador del artefacto. string
deploymentStatusMessage Mensaje de estado de la implementación. string
installTime Hora a la que el artefacto comienza a instalarse en la máquina virtual. string
parámetros Parámetros del artefacto. ArtifactParameterProperties[]
status Estado del artefacto. string
vmExtensionStatusMessage Mensaje de estado de la extensión de máquina virtual. string

ArtifactParameterProperties

Nombre Descripción Value
name Nombre del parámetro artifact. string
value Valor del parámetro artifact. string

ComputeVmProperties

Nombre Descripción Valor
dataDiskIds Obtiene el URI de blob de discos de datos de la máquina virtual. string[]
dataDisks Obtiene todos los discos de datos conectados a la máquina virtual. ComputeDataDisk[]
networkInterfaceId Obtiene el identificador de la interfaz de red de la máquina virtual. string
osDiskId Obtiene el URI del blob de disco del sistema operativo para la máquina virtual. string
osType Obtiene el tipo de sistema operativo de la máquina virtual. string
statuses Obtiene los estados de la máquina virtual. ComputeVmInstanceViewStatus[]
vmSize Obtiene el tamaño de la máquina virtual. string

ComputeDataDisk

Nombre Descripción Valor
diskSizeGiB Obtiene el tamaño del disco de datos en GiB. int
diskUri Cuando un blob está respaldado por un blob, el URI del blob subyacente. string
managedDiskId Cuando está respaldado por un disco administrado, este es el identificador del recurso de disco de proceso. string
name Obtiene el nombre del disco de datos. string

ComputeVmInstanceViewStatus

Nombre Descripción Valor
código Obtiene el código de estado. string
displayStatus Obtiene la etiqueta localizable corta para el estado. string
message Obtiene el mensaje asociado al estado. string

GalleryImageReference

Nombre Descripción Valor
offer Oferta de la imagen de la galería. string
osType Tipo de sistema operativo de la imagen de la galería. string
publisher Publicador de la imagen de la galería. string
sku SKU de la imagen de la galería. string
version Versión de la imagen de la galería. string

NetworkInterfaceProperties

Nombre Descripción Valor
dnsName Nombre de DNS. string
privateIpAddress Dirección IP privada. string
publicIpAddress La dirección IP pública. string
publicIpAddressId Identificador de recurso de la dirección IP pública. string
rdpAuthority La propiedad RdpAuthority es un nombre de host DNS del servidor o una dirección IP seguido del número de puerto de servicio para RDP (Protocolo de escritorio remoto). string
sharedPublicIpAddressConfiguration Configuración para compartir una dirección IP pública en varias máquinas virtuales. SharedPublicIpAddressConfiguration
sshAuthority La propiedad SshAuthority es un nombre de host DNS del servidor o una dirección IP seguido del número de puerto de servicio para SSH. string
subnetId Identificador de recurso de la subred. string
virtualNetworkId Identificador de recurso de la red virtual. string

SharedPublicIpAddressConfiguration

Nombre Descripción Valor
inboundNatRules Reglas NAT entrantes InboundNatRule[]

InboundNatRule

Nombre Descripción Valor
backendPort Puerto al que se redirigirá el tráfico externo. int
frontendPort Puerto de punto de conexión externo de la conexión entrante. El intervalo de valores posibles oscila entre 1 y 65535, ambos inclusive. Si no se especifica, se asignará automáticamente un valor. int
transportProtocol Protocolo de transporte para el extremo. "Tcp"
"Udp"