Definição de recursos do bíceps
O tipo de recurso labs/virtualmachines pode ser implantado com operações que visam:
Para obter uma lista de propriedades alteradas em cada versão da API, consulte log de alterações.
Para criar um recurso Microsoft.DevTestLab/labs/virtualmachines, adicione o seguinte Bicep ao seu modelo.
resource symbolicname 'Microsoft.DevTestLab/labs/virtualmachines@2018-09-15' = {
parent: resourceSymbolicName
location: 'string'
name: 'string'
properties: {
allowClaim: bool
artifacts: [
{
artifactId: 'string'
artifactTitle: 'string'
deploymentStatusMessage: 'string'
installTime: 'string'
parameters: [
{
name: 'string'
value: 'string'
}
]
status: 'string'
vmExtensionStatusMessage: 'string'
}
]
createdDate: 'string'
customImageId: 'string'
dataDiskParameters: [
{
attachNewDataDiskOptions: {
diskName: 'string'
diskSizeGiB: int
diskType: 'string'
}
existingLabDiskId: 'string'
hostCaching: 'string'
}
]
disallowPublicIpAddress: bool
environmentId: 'string'
expirationDate: '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'
ownerObjectId: 'string'
ownerUserPrincipalName: 'string'
password: 'string'
planId: 'string'
scheduleParameters: [
{
name: 'string'
properties: {
dailyRecurrence: {
time: 'string'
}
hourlyRecurrence: {
minute: int
}
notificationSettings: {
emailRecipient: 'string'
notificationLocale: 'string'
status: 'string'
timeInMinutes: int
webhookUrl: 'string'
}
status: 'string'
targetResourceId: 'string'
taskType: 'string'
timeZoneId: 'string'
weeklyRecurrence: {
time: 'string'
weekdays: [
'string'
]
}
}
tags: {
{customized property}: 'string'
}
}
]
size: 'string'
sshKey: 'string'
storageType: 'string'
userName: 'string'
}
tags: {
{customized property}: 'string'
}
}
Valores de propriedade
Microsoft.DevTestLab/labs/virtualmachines
| Name |
Description |
Value |
| localização |
A localização do recurso. |
cadeia (de caracteres) |
| name |
O nome do recurso |
string (obrigatório) |
| elemento principal |
No Bicep, você pode especificar o recurso pai para um recurso filho. Você só precisa adicionar essa propriedade quando o recurso filho é declarado fora do recurso pai.
Para obter mais informações, consulte recurso filho fora do recurso pai. |
Nome simbólico para recurso do tipo: labs |
| properties |
As propriedades do recurso. |
LabVirtualMachineProperties (obrigatório) |
| tags |
Etiquetas de recursos |
Dicionário de nomes e valores de tags. Consulte Tags em modelos |
ArtifactInstallProperties
| Name |
Description |
Value |
| artifactId |
O identificador do artefato. |
cadeia (de caracteres) |
| artifactTitle |
O título do artefato. |
cadeia (de caracteres) |
| deploymentStatusMessage |
A mensagem de status da implantação. |
cadeia (de caracteres) |
| installTime |
A hora em que o artefato começa a ser instalado na máquina virtual. |
cadeia (de caracteres) |
| parameters |
Os parâmetros do artefato. |
ArtifactParameterProperties[] |
| estado |
O status do artefato. |
cadeia (de caracteres) |
| vmExtensionStatusMessage |
A mensagem de status da extensão da máquina virtual. |
cadeia (de caracteres) |
ArtifactParameterProperties
| Name |
Description |
Value |
| name |
O nome do parâmetro de artefato. |
cadeia (de caracteres) |
| value |
O valor do parâmetro artifact. |
cadeia (de caracteres) |
AttachNewDataDiskOptions
| Name |
Description |
Value |
| diskName |
O nome do disco a ser anexado. |
cadeia (de caracteres) |
| diskSizeGiB |
Tamanho do disco a ser anexado em Gibibytes. |
int |
| diskType |
O tipo de armazenamento para o disco (ou seja, Standard, Premium). |
'Premium' 'Standard' 'StandardSSD' |
DataDiskProperties
| Name |
Description |
Value |
| attachNewDataDiskOptions |
Especifica opções para anexar um novo disco à máquina virtual. |
AttachNewDataDiskOptions |
| existingLabDiskId |
Especifica a ID do disco de laboratório existente a ser anexada à máquina virtual. |
cadeia (de caracteres) |
| hostCaching |
Opção de cache para um disco de dados (ou seja, None, ReadOnly, ReadWrite). |
'None' 'ReadOnly' 'ReadWrite' |
DayDetails
| Name |
Description |
Value |
| time |
A hora do dia o horário ocorrerá. |
cadeia (de caracteres) |
GalleryImageReference
| Name |
Description |
Value |
| oferta |
A oferta da imagem da galeria. |
cadeia (de caracteres) |
| osType |
O tipo de SO da imagem da galeria. |
cadeia (de caracteres) |
| editor |
O editor da imagem da galeria. |
cadeia (de caracteres) |
| sku |
O SKU da imagem da galeria. |
cadeia (de caracteres) |
| versão |
A versão da imagem da galeria. |
cadeia (de caracteres) |
HourDetails
| Name |
Description |
Value |
| minute |
Minutos da hora em que o horário será executado. |
int |
InboundNatRule
| Name |
Description |
Value |
| backendPort |
A porta para a qual o tráfego externo será redirecionado. |
int |
| frontendPort |
A porta do ponto de extremidade externo da conexã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 de extremidade. |
'Tcp' 'Udp' |
LabVirtualMachineProperties
| Name |
Description |
Value |
| allowClaim |
Indica se outro usuário pode assumir a propriedade da máquina virtual |
bool |
| artifacts |
Os artefatos a serem instalados na máquina virtual. |
ArtifactInstallProperties[] |
| createdDate |
A data de criação da máquina virtual. |
cadeia (de caracteres) |
| customImageId |
O identificador de imagem personalizado da máquina virtual. |
cadeia (de caracteres) |
| dataDiskParameters |
Discos de dados novos ou existentes para anexar à máquina virtual após a criação |
DataDiskProperties[] |
| disallowPublicIpAddress |
Indica se a máquina virtual deve ser criada sem um endereço IP público. |
bool |
| environmentId |
A ID do recurso do ambiente que contém essa máquina virtual, se houver. |
cadeia (de caracteres) |
| expirationDate |
A data de expiração da VM. |
cadeia (de caracteres) |
| galleryImageReference |
A referência de imagem do Microsoft Azure Marketplace da máquina virtual. |
GalleryImageReference |
| isAuthenticationWithSshKey |
Indica se essa máquina virtual usa uma chave SSH para autenticação. |
bool |
| labSubnetName |
O nome da sub-rede de laboratório da máquina virtual. |
cadeia (de caracteres) |
| labVirtualNetworkId |
O identificador de rede virtual de laboratório da máquina virtual. |
cadeia (de caracteres) |
| networkInterface |
As propriedades da interface de rede. |
NetworkInterfaceProperties |
| notes |
As notas da máquina virtual. |
cadeia (de caracteres) |
| ownerObjectId |
O identificador de objeto do proprietário da máquina virtual. |
cadeia (de caracteres) |
| ownerUserPrincipalName |
O nome principal do usuário do proprietário da máquina virtual. |
cadeia (de caracteres) |
| palavra-passe |
A senha do administrador da máquina virtual. |
cadeia (de caracteres) |
| planId |
A id do plano associado à imagem da máquina virtual |
cadeia (de caracteres) |
| scheduleParameters |
Agendamentos de máquinas virtuais a serem criados |
ScheduleCreationParameter[] |
| size |
O tamanho da máquina virtual. |
cadeia (de caracteres) |
| sshKey |
A chave SSH do administrador da máquina virtual. |
cadeia (de caracteres) |
| storageType |
Tipo de armazenamento a ser usado para máquina virtual (ou seja, Standard, Premium). |
cadeia (de caracteres) |
| userName |
O nome de usuário da máquina virtual. |
cadeia (de caracteres) |
NetworkInterfaceProperties
| Name |
Description |
Value |
| dnsName |
O nome DNS. |
cadeia (de caracteres) |
| privateIpAddress |
O endereço IP privado. |
cadeia (de caracteres) |
| publicIpAddress |
O endereço IP público. |
cadeia (de caracteres) |
| publicIpAddressId |
O ID do recurso do endereço IP público. |
cadeia (de caracteres) |
| rdpAuthority |
A propriedade RdpAuthority é um nome de host DNS do servidor ou endereço IP seguido pelo número da porta de serviço para RDP (Protocolo de Área de Trabalho Remota). |
cadeia (de caracteres) |
| sharedPublicIpAddressConfiguration |
A configuração para compartilhar um endereço IP público em várias máquinas virtuais. |
SharedPublicIpAddressConfiguration |
| sshAuthority |
A propriedade SshAuthority é um nome de host DNS do servidor ou endereço IP seguido pelo número da porta de serviço para SSH. |
cadeia (de caracteres) |
| subnetId |
O ID do recurso da sub-rede. |
cadeia (de caracteres) |
| virtualNetworkId |
O ID do recurso da rede virtual. |
cadeia (de caracteres) |
NotificationSettings
| Name |
Description |
Value |
| emailRecipient |
O destinatário do e-mail para o qual enviar notificações (pode ser uma lista de endereços de e-mail separados por ponto-e-vírgula). |
cadeia (de caracteres) |
| notificationLocale |
A localidade a ser usada ao enviar uma notificação (fallback para idiomas não suportados é EN). |
cadeia (de caracteres) |
| estado |
Se as notificações estiverem habilitadas para esse agendamento (ou seja, Habilitado, Desativado). |
'Disabled' 'Enabled' |
| 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. |
cadeia (de caracteres) |
ScheduleCreationParameter
ScheduleCreationParameterProperties
| Name |
Description |
Value |
| dailyRecurrence |
Se o horário ocorrer uma vez em cada dia da semana, especifique a recorrência diária. |
DayDetails |
| hourlyRecurrence |
Se o agendamento ocorrer várias vezes ao dia, especifique a recorrência horária. |
HourDetails |
| notificationSettings |
Configurações de notificação. |
NotificationSettings |
| estado |
O status da agenda (ou seja, Habilitado, Desativado) |
'Disabled' 'Enabled' |
| targetResourceId |
O ID do recurso ao qual a agenda pertence |
cadeia (de caracteres) |
| taskType |
O tipo de tarefa do cronograma (por exemplo, LabVmsShutdownTask, LabVmAutoStart). |
cadeia (de caracteres) |
| timeZoneId |
O ID do fuso horário (por exemplo, Hora Padrão da China, Hora Padrão da Groenlândia, Hora Padrão do Pacífico, etc.). Os valores possíveis para esta propriedade podem ser encontrados em IReadOnlyCollection<string> TimeZoneConverter.TZConvert.KnownWindowsTimeZoneIds (https://github.com/mattjohnsonpint/TimeZoneConverter/blob/main/README.md) |
cadeia (de caracteres) |
| weeklyRecurrence |
Se o horário ocorrer apenas alguns dias da semana, especifique a recorrência semanal. |
WeekDetails |
SharedPublicIpAddressConfiguration
| Name |
Description |
Value |
| inboundNatRules |
As novas regras NAT |
InboundNatRule[] |
WeekDetails
| Name |
Description |
Value |
| time |
A hora do dia em que ocorrerá o agendamento. |
cadeia (de caracteres) |
| weekdays |
Os dias da semana para os quais o horário está definido (por exemplo, domingo, segunda-feira, terça-feira, etc.). |
string[] |
Exemplos de uso
Exemplos de início rápido do Azure
Os seguintes modelos início rápido do Azure contêm exemplos de Bicep para implantar esse tipo de recurso.
Definição de recurso de modelo ARM
O tipo de recurso labs/virtualmachines pode ser implantado com operações que visam:
Para obter uma lista de propriedades alteradas em cada versão da API, consulte log de alterações.
Para criar um recurso Microsoft.DevTestLab/labs/virtualmachines, adicione o seguinte JSON ao seu modelo.
{
"type": "Microsoft.DevTestLab/labs/virtualmachines",
"apiVersion": "2018-09-15",
"name": "string",
"location": "string",
"properties": {
"allowClaim": "bool",
"artifacts": [
{
"artifactId": "string",
"artifactTitle": "string",
"deploymentStatusMessage": "string",
"installTime": "string",
"parameters": [
{
"name": "string",
"value": "string"
}
],
"status": "string",
"vmExtensionStatusMessage": "string"
}
],
"createdDate": "string",
"customImageId": "string",
"dataDiskParameters": [
{
"attachNewDataDiskOptions": {
"diskName": "string",
"diskSizeGiB": "int",
"diskType": "string"
},
"existingLabDiskId": "string",
"hostCaching": "string"
}
],
"disallowPublicIpAddress": "bool",
"environmentId": "string",
"expirationDate": "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",
"ownerObjectId": "string",
"ownerUserPrincipalName": "string",
"password": "string",
"planId": "string",
"scheduleParameters": [
{
"name": "string",
"properties": {
"dailyRecurrence": {
"time": "string"
},
"hourlyRecurrence": {
"minute": "int"
},
"notificationSettings": {
"emailRecipient": "string",
"notificationLocale": "string",
"status": "string",
"timeInMinutes": "int",
"webhookUrl": "string"
},
"status": "string",
"targetResourceId": "string",
"taskType": "string",
"timeZoneId": "string",
"weeklyRecurrence": {
"time": "string",
"weekdays": [ "string" ]
}
},
"tags": {
"{customized property}": "string"
}
}
],
"size": "string",
"sshKey": "string",
"storageType": "string",
"userName": "string"
},
"tags": {
"{customized property}": "string"
}
}
Valores de propriedade
Microsoft.DevTestLab/labs/virtualmachines
| Name |
Description |
Value |
| apiVersion |
A versão api |
'2018-09-15' |
| localização |
A localização do recurso. |
cadeia (de caracteres) |
| name |
O nome do recurso |
string (obrigatório) |
| properties |
As propriedades do recurso. |
LabVirtualMachineProperties (obrigatório) |
| tags |
Etiquetas de recursos |
Dicionário de nomes e valores de tags. Consulte Tags em modelos |
| tipo |
O tipo de recurso |
'Microsoft.DevTestLab/labs/virtualmachines' |
ArtifactInstallProperties
| Name |
Description |
Value |
| artifactId |
O identificador do artefato. |
cadeia (de caracteres) |
| artifactTitle |
O título do artefato. |
cadeia (de caracteres) |
| deploymentStatusMessage |
A mensagem de status da implantação. |
cadeia (de caracteres) |
| installTime |
A hora em que o artefato começa a ser instalado na máquina virtual. |
cadeia (de caracteres) |
| parameters |
Os parâmetros do artefato. |
ArtifactParameterProperties[] |
| estado |
O status do artefato. |
cadeia (de caracteres) |
| vmExtensionStatusMessage |
A mensagem de status da extensão da máquina virtual. |
cadeia (de caracteres) |
ArtifactParameterProperties
| Name |
Description |
Value |
| name |
O nome do parâmetro de artefato. |
cadeia (de caracteres) |
| value |
O valor do parâmetro artifact. |
cadeia (de caracteres) |
AttachNewDataDiskOptions
| Name |
Description |
Value |
| diskName |
O nome do disco a ser anexado. |
cadeia (de caracteres) |
| diskSizeGiB |
Tamanho do disco a ser anexado em Gibibytes. |
int |
| diskType |
O tipo de armazenamento para o disco (ou seja, Standard, Premium). |
'Premium' 'Standard' 'StandardSSD' |
DataDiskProperties
| Name |
Description |
Value |
| attachNewDataDiskOptions |
Especifica opções para anexar um novo disco à máquina virtual. |
AttachNewDataDiskOptions |
| existingLabDiskId |
Especifica a ID do disco de laboratório existente a ser anexada à máquina virtual. |
cadeia (de caracteres) |
| hostCaching |
Opção de cache para um disco de dados (ou seja, None, ReadOnly, ReadWrite). |
'None' 'ReadOnly' 'ReadWrite' |
DayDetails
| Name |
Description |
Value |
| time |
A hora do dia o horário ocorrerá. |
cadeia (de caracteres) |
GalleryImageReference
| Name |
Description |
Value |
| oferta |
A oferta da imagem da galeria. |
cadeia (de caracteres) |
| osType |
O tipo de SO da imagem da galeria. |
cadeia (de caracteres) |
| editor |
O editor da imagem da galeria. |
cadeia (de caracteres) |
| sku |
O SKU da imagem da galeria. |
cadeia (de caracteres) |
| versão |
A versão da imagem da galeria. |
cadeia (de caracteres) |
HourDetails
| Name |
Description |
Value |
| minute |
Minutos da hora em que o horário será executado. |
int |
InboundNatRule
| Name |
Description |
Value |
| backendPort |
A porta para a qual o tráfego externo será redirecionado. |
int |
| frontendPort |
A porta do ponto de extremidade externo da conexã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 de extremidade. |
'Tcp' 'Udp' |
LabVirtualMachineProperties
| Name |
Description |
Value |
| allowClaim |
Indica se outro usuário pode assumir a propriedade da máquina virtual |
bool |
| artifacts |
Os artefatos a serem instalados na máquina virtual. |
ArtifactInstallProperties[] |
| createdDate |
A data de criação da máquina virtual. |
cadeia (de caracteres) |
| customImageId |
O identificador de imagem personalizado da máquina virtual. |
cadeia (de caracteres) |
| dataDiskParameters |
Discos de dados novos ou existentes para anexar à máquina virtual após a criação |
DataDiskProperties[] |
| disallowPublicIpAddress |
Indica se a máquina virtual deve ser criada sem um endereço IP público. |
bool |
| environmentId |
A ID do recurso do ambiente que contém essa máquina virtual, se houver. |
cadeia (de caracteres) |
| expirationDate |
A data de expiração da VM. |
cadeia (de caracteres) |
| galleryImageReference |
A referência de imagem do Microsoft Azure Marketplace da máquina virtual. |
GalleryImageReference |
| isAuthenticationWithSshKey |
Indica se essa máquina virtual usa uma chave SSH para autenticação. |
bool |
| labSubnetName |
O nome da sub-rede de laboratório da máquina virtual. |
cadeia (de caracteres) |
| labVirtualNetworkId |
O identificador de rede virtual de laboratório da máquina virtual. |
cadeia (de caracteres) |
| networkInterface |
As propriedades da interface de rede. |
NetworkInterfaceProperties |
| notes |
As notas da máquina virtual. |
cadeia (de caracteres) |
| ownerObjectId |
O identificador de objeto do proprietário da máquina virtual. |
cadeia (de caracteres) |
| ownerUserPrincipalName |
O nome principal do usuário do proprietário da máquina virtual. |
cadeia (de caracteres) |
| palavra-passe |
A senha do administrador da máquina virtual. |
cadeia (de caracteres) |
| planId |
A id do plano associado à imagem da máquina virtual |
cadeia (de caracteres) |
| scheduleParameters |
Agendamentos de máquinas virtuais a serem criados |
ScheduleCreationParameter[] |
| size |
O tamanho da máquina virtual. |
cadeia (de caracteres) |
| sshKey |
A chave SSH do administrador da máquina virtual. |
cadeia (de caracteres) |
| storageType |
Tipo de armazenamento a ser usado para máquina virtual (ou seja, Standard, Premium). |
cadeia (de caracteres) |
| userName |
O nome de usuário da máquina virtual. |
cadeia (de caracteres) |
NetworkInterfaceProperties
| Name |
Description |
Value |
| dnsName |
O nome DNS. |
cadeia (de caracteres) |
| privateIpAddress |
O endereço IP privado. |
cadeia (de caracteres) |
| publicIpAddress |
O endereço IP público. |
cadeia (de caracteres) |
| publicIpAddressId |
O ID do recurso do endereço IP público. |
cadeia (de caracteres) |
| rdpAuthority |
A propriedade RdpAuthority é um nome de host DNS do servidor ou endereço IP seguido pelo número da porta de serviço para RDP (Protocolo de Área de Trabalho Remota). |
cadeia (de caracteres) |
| sharedPublicIpAddressConfiguration |
A configuração para compartilhar um endereço IP público em várias máquinas virtuais. |
SharedPublicIpAddressConfiguration |
| sshAuthority |
A propriedade SshAuthority é um nome de host DNS do servidor ou endereço IP seguido pelo número da porta de serviço para SSH. |
cadeia (de caracteres) |
| subnetId |
O ID do recurso da sub-rede. |
cadeia (de caracteres) |
| virtualNetworkId |
O ID do recurso da rede virtual. |
cadeia (de caracteres) |
NotificationSettings
| Name |
Description |
Value |
| emailRecipient |
O destinatário do e-mail para o qual enviar notificações (pode ser uma lista de endereços de e-mail separados por ponto-e-vírgula). |
cadeia (de caracteres) |
| notificationLocale |
A localidade a ser usada ao enviar uma notificação (fallback para idiomas não suportados é EN). |
cadeia (de caracteres) |
| estado |
Se as notificações estiverem habilitadas para esse agendamento (ou seja, Habilitado, Desativado). |
'Disabled' 'Enabled' |
| 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. |
cadeia (de caracteres) |
ScheduleCreationParameter
ScheduleCreationParameterProperties
| Name |
Description |
Value |
| dailyRecurrence |
Se o horário ocorrer uma vez em cada dia da semana, especifique a recorrência diária. |
DayDetails |
| hourlyRecurrence |
Se o agendamento ocorrer várias vezes ao dia, especifique a recorrência horária. |
HourDetails |
| notificationSettings |
Configurações de notificação. |
NotificationSettings |
| estado |
O status da agenda (ou seja, Habilitado, Desativado) |
'Disabled' 'Enabled' |
| targetResourceId |
O ID do recurso ao qual a agenda pertence |
cadeia (de caracteres) |
| taskType |
O tipo de tarefa do cronograma (por exemplo, LabVmsShutdownTask, LabVmAutoStart). |
cadeia (de caracteres) |
| timeZoneId |
O ID do fuso horário (por exemplo, Hora Padrão da China, Hora Padrão da Groenlândia, Hora Padrão do Pacífico, etc.). Os valores possíveis para esta propriedade podem ser encontrados em IReadOnlyCollection<string> TimeZoneConverter.TZConvert.KnownWindowsTimeZoneIds (https://github.com/mattjohnsonpint/TimeZoneConverter/blob/main/README.md) |
cadeia (de caracteres) |
| weeklyRecurrence |
Se o horário ocorrer apenas alguns dias da semana, especifique a recorrência semanal. |
WeekDetails |
SharedPublicIpAddressConfiguration
| Name |
Description |
Value |
| inboundNatRules |
As novas regras NAT |
InboundNatRule[] |
WeekDetails
| Name |
Description |
Value |
| time |
A hora do dia em que ocorrerá o agendamento. |
cadeia (de caracteres) |
| weekdays |
Os dias da semana para os quais o horário está definido (por exemplo, domingo, segunda-feira, terça-feira, etc.). |
string[] |
Exemplos de uso
Modelos de início rápido do Azure
Os seguintes modelos de início rápido do Azure implantar esse tipo de recurso.
O tipo de recurso labs/virtualmachines pode ser implantado com operações que visam:
Para obter uma lista de propriedades alteradas em cada versão da API, consulte log de alterações.
Para criar um recurso Microsoft.DevTestLab/labs/virtualmachines, adicione o seguinte Terraform ao seu modelo.
resource "azapi_resource" "symbolicname" {
type = "Microsoft.DevTestLab/labs/virtualmachines@2018-09-15"
name = "string"
parent_id = "string"
location = "string"
tags = {
{customized property} = "string"
}
body = {
properties = {
allowClaim = bool
artifacts = [
{
artifactId = "string"
artifactTitle = "string"
deploymentStatusMessage = "string"
installTime = "string"
parameters = [
{
name = "string"
value = "string"
}
]
status = "string"
vmExtensionStatusMessage = "string"
}
]
createdDate = "string"
customImageId = "string"
dataDiskParameters = [
{
attachNewDataDiskOptions = {
diskName = "string"
diskSizeGiB = int
diskType = "string"
}
existingLabDiskId = "string"
hostCaching = "string"
}
]
disallowPublicIpAddress = bool
environmentId = "string"
expirationDate = "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"
ownerObjectId = "string"
ownerUserPrincipalName = "string"
password = "string"
planId = "string"
scheduleParameters = [
{
name = "string"
properties = {
dailyRecurrence = {
time = "string"
}
hourlyRecurrence = {
minute = int
}
notificationSettings = {
emailRecipient = "string"
notificationLocale = "string"
status = "string"
timeInMinutes = int
webhookUrl = "string"
}
status = "string"
targetResourceId = "string"
taskType = "string"
timeZoneId = "string"
weeklyRecurrence = {
time = "string"
weekdays = [
"string"
]
}
}
tags = {
{customized property} = "string"
}
}
]
size = "string"
sshKey = "string"
storageType = "string"
userName = "string"
}
}
}
Valores de propriedade
Microsoft.DevTestLab/labs/virtualmachines
| Name |
Description |
Value |
| localização |
A localização do recurso. |
cadeia (de caracteres) |
| name |
O nome do recurso |
string (obrigatório) |
| parent_id |
A ID do recurso que é o pai para este recurso. |
ID do recurso do tipo: laboratórios |
| properties |
As propriedades do recurso. |
LabVirtualMachineProperties (obrigatório) |
| tags |
Etiquetas de recursos |
Dicionário de nomes e valores de tags. |
| tipo |
O tipo de recurso |
"Microsoft.DevTestLab/labs/virtualmachines@2018-09-15" |
ArtifactInstallProperties
| Name |
Description |
Value |
| artifactId |
O identificador do artefato. |
cadeia (de caracteres) |
| artifactTitle |
O título do artefato. |
cadeia (de caracteres) |
| deploymentStatusMessage |
A mensagem de status da implantação. |
cadeia (de caracteres) |
| installTime |
A hora em que o artefato começa a ser instalado na máquina virtual. |
cadeia (de caracteres) |
| parameters |
Os parâmetros do artefato. |
ArtifactParameterProperties[] |
| estado |
O status do artefato. |
cadeia (de caracteres) |
| vmExtensionStatusMessage |
A mensagem de status da extensão da máquina virtual. |
cadeia (de caracteres) |
ArtifactParameterProperties
| Name |
Description |
Value |
| name |
O nome do parâmetro de artefato. |
cadeia (de caracteres) |
| value |
O valor do parâmetro artifact. |
cadeia (de caracteres) |
AttachNewDataDiskOptions
| Name |
Description |
Value |
| diskName |
O nome do disco a ser anexado. |
cadeia (de caracteres) |
| diskSizeGiB |
Tamanho do disco a ser anexado em Gibibytes. |
int |
| diskType |
O tipo de armazenamento para o disco (ou seja, Standard, Premium). |
'Premium' 'Standard' 'StandardSSD' |
DataDiskProperties
| Name |
Description |
Value |
| attachNewDataDiskOptions |
Especifica opções para anexar um novo disco à máquina virtual. |
AttachNewDataDiskOptions |
| existingLabDiskId |
Especifica a ID do disco de laboratório existente a ser anexada à máquina virtual. |
cadeia (de caracteres) |
| hostCaching |
Opção de cache para um disco de dados (ou seja, None, ReadOnly, ReadWrite). |
'None' 'ReadOnly' 'ReadWrite' |
DayDetails
| Name |
Description |
Value |
| time |
A hora do dia o horário ocorrerá. |
cadeia (de caracteres) |
GalleryImageReference
| Name |
Description |
Value |
| oferta |
A oferta da imagem da galeria. |
cadeia (de caracteres) |
| osType |
O tipo de SO da imagem da galeria. |
cadeia (de caracteres) |
| editor |
O editor da imagem da galeria. |
cadeia (de caracteres) |
| sku |
O SKU da imagem da galeria. |
cadeia (de caracteres) |
| versão |
A versão da imagem da galeria. |
cadeia (de caracteres) |
HourDetails
| Name |
Description |
Value |
| minute |
Minutos da hora em que o horário será executado. |
int |
InboundNatRule
| Name |
Description |
Value |
| backendPort |
A porta para a qual o tráfego externo será redirecionado. |
int |
| frontendPort |
A porta do ponto de extremidade externo da conexã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 de extremidade. |
'Tcp' 'Udp' |
LabVirtualMachineProperties
| Name |
Description |
Value |
| allowClaim |
Indica se outro usuário pode assumir a propriedade da máquina virtual |
bool |
| artifacts |
Os artefatos a serem instalados na máquina virtual. |
ArtifactInstallProperties[] |
| createdDate |
A data de criação da máquina virtual. |
cadeia (de caracteres) |
| customImageId |
O identificador de imagem personalizado da máquina virtual. |
cadeia (de caracteres) |
| dataDiskParameters |
Discos de dados novos ou existentes para anexar à máquina virtual após a criação |
DataDiskProperties[] |
| disallowPublicIpAddress |
Indica se a máquina virtual deve ser criada sem um endereço IP público. |
bool |
| environmentId |
A ID do recurso do ambiente que contém essa máquina virtual, se houver. |
cadeia (de caracteres) |
| expirationDate |
A data de expiração da VM. |
cadeia (de caracteres) |
| galleryImageReference |
A referência de imagem do Microsoft Azure Marketplace da máquina virtual. |
GalleryImageReference |
| isAuthenticationWithSshKey |
Indica se essa máquina virtual usa uma chave SSH para autenticação. |
bool |
| labSubnetName |
O nome da sub-rede de laboratório da máquina virtual. |
cadeia (de caracteres) |
| labVirtualNetworkId |
O identificador de rede virtual de laboratório da máquina virtual. |
cadeia (de caracteres) |
| networkInterface |
As propriedades da interface de rede. |
NetworkInterfaceProperties |
| notes |
As notas da máquina virtual. |
cadeia (de caracteres) |
| ownerObjectId |
O identificador de objeto do proprietário da máquina virtual. |
cadeia (de caracteres) |
| ownerUserPrincipalName |
O nome principal do usuário do proprietário da máquina virtual. |
cadeia (de caracteres) |
| palavra-passe |
A senha do administrador da máquina virtual. |
cadeia (de caracteres) |
| planId |
A id do plano associado à imagem da máquina virtual |
cadeia (de caracteres) |
| scheduleParameters |
Agendamentos de máquinas virtuais a serem criados |
ScheduleCreationParameter[] |
| size |
O tamanho da máquina virtual. |
cadeia (de caracteres) |
| sshKey |
A chave SSH do administrador da máquina virtual. |
cadeia (de caracteres) |
| storageType |
Tipo de armazenamento a ser usado para máquina virtual (ou seja, Standard, Premium). |
cadeia (de caracteres) |
| userName |
O nome de usuário da máquina virtual. |
cadeia (de caracteres) |
NetworkInterfaceProperties
| Name |
Description |
Value |
| dnsName |
O nome DNS. |
cadeia (de caracteres) |
| privateIpAddress |
O endereço IP privado. |
cadeia (de caracteres) |
| publicIpAddress |
O endereço IP público. |
cadeia (de caracteres) |
| publicIpAddressId |
O ID do recurso do endereço IP público. |
cadeia (de caracteres) |
| rdpAuthority |
A propriedade RdpAuthority é um nome de host DNS do servidor ou endereço IP seguido pelo número da porta de serviço para RDP (Protocolo de Área de Trabalho Remota). |
cadeia (de caracteres) |
| sharedPublicIpAddressConfiguration |
A configuração para compartilhar um endereço IP público em várias máquinas virtuais. |
SharedPublicIpAddressConfiguration |
| sshAuthority |
A propriedade SshAuthority é um nome de host DNS do servidor ou endereço IP seguido pelo número da porta de serviço para SSH. |
cadeia (de caracteres) |
| subnetId |
O ID do recurso da sub-rede. |
cadeia (de caracteres) |
| virtualNetworkId |
O ID do recurso da rede virtual. |
cadeia (de caracteres) |
NotificationSettings
| Name |
Description |
Value |
| emailRecipient |
O destinatário do e-mail para o qual enviar notificações (pode ser uma lista de endereços de e-mail separados por ponto-e-vírgula). |
cadeia (de caracteres) |
| notificationLocale |
A localidade a ser usada ao enviar uma notificação (fallback para idiomas não suportados é EN). |
cadeia (de caracteres) |
| estado |
Se as notificações estiverem habilitadas para esse agendamento (ou seja, Habilitado, Desativado). |
'Disabled' 'Enabled' |
| 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. |
cadeia (de caracteres) |
ScheduleCreationParameter
ScheduleCreationParameterProperties
| Name |
Description |
Value |
| dailyRecurrence |
Se o horário ocorrer uma vez em cada dia da semana, especifique a recorrência diária. |
DayDetails |
| hourlyRecurrence |
Se o agendamento ocorrer várias vezes ao dia, especifique a recorrência horária. |
HourDetails |
| notificationSettings |
Configurações de notificação. |
NotificationSettings |
| estado |
O status da agenda (ou seja, Habilitado, Desativado) |
'Disabled' 'Enabled' |
| targetResourceId |
O ID do recurso ao qual a agenda pertence |
cadeia (de caracteres) |
| taskType |
O tipo de tarefa do cronograma (por exemplo, LabVmsShutdownTask, LabVmAutoStart). |
cadeia (de caracteres) |
| timeZoneId |
O ID do fuso horário (por exemplo, Hora Padrão da China, Hora Padrão da Groenlândia, Hora Padrão do Pacífico, etc.). Os valores possíveis para esta propriedade podem ser encontrados em IReadOnlyCollection<string> TimeZoneConverter.TZConvert.KnownWindowsTimeZoneIds (https://github.com/mattjohnsonpint/TimeZoneConverter/blob/main/README.md) |
cadeia (de caracteres) |
| weeklyRecurrence |
Se o horário ocorrer apenas alguns dias da semana, especifique a recorrência semanal. |
WeekDetails |
SharedPublicIpAddressConfiguration
| Name |
Description |
Value |
| inboundNatRules |
As novas regras NAT |
InboundNatRule[] |
WeekDetails
| Name |
Description |
Value |
| time |
A hora do dia em que ocorrerá o agendamento. |
cadeia (de caracteres) |
| weekdays |
Os dias da semana para os quais o horário está definido (por exemplo, domingo, segunda-feira, terça-feira, etc.). |
string[] |
Exemplos de uso
Um exemplo básico de implantação de máquina virtual em um laboratório de teste de desenvolvimento.
terraform {
required_providers {
azapi = {
source = "Azure/azapi"
}
}
}
provider "azapi" {
skip_provider_registration = false
}
variable "resource_name" {
type = string
default = "acctest0001"
}
variable "location" {
type = string
default = "westeurope"
}
variable "vm_password" {
type = string
description = "The password for the DevTest Lab virtual machine"
sensitive = true
}
resource "azapi_resource" "resourceGroup" {
type = "Microsoft.Resources/resourceGroups@2020-06-01"
name = var.resource_name
location = var.location
}
resource "azapi_resource" "lab" {
type = "Microsoft.DevTestLab/labs@2018-09-15"
parent_id = azapi_resource.resourceGroup.id
name = var.resource_name
location = var.location
body = {
properties = {
labStorageType = "Premium"
}
}
schema_validation_enabled = false
response_export_values = ["*"]
}
data "azapi_resource_id" "virtualNetwork" {
type = "Microsoft.Network/virtualNetworks@2023-04-01"
parent_id = azapi_resource.resourceGroup.id
name = var.resource_name
}
data "azapi_resource_id" "subnet" {
type = "Microsoft.Network/virtualNetworks/subnets@2023-04-01"
parent_id = data.azapi_resource_id.virtualNetwork.id
name = "${var.resource_name}Subnet"
}
resource "azapi_resource" "virtualNetwork" {
type = "Microsoft.DevTestLab/labs/virtualNetworks@2018-09-15"
parent_id = azapi_resource.lab.id
name = var.resource_name
body = {
properties = {
description = ""
subnetOverrides = [
{
labSubnetName = data.azapi_resource_id.subnet.name
resourceId = data.azapi_resource_id.subnet.id
useInVmCreationPermission = "Allow"
usePublicIpAddressPermission = "Allow"
},
]
}
}
schema_validation_enabled = false
response_export_values = ["*"]
}
resource "azapi_resource" "virtualMachine" {
type = "Microsoft.DevTestLab/labs/virtualMachines@2018-09-15"
parent_id = azapi_resource.lab.id
name = var.resource_name
location = var.location
body = {
properties = {
allowClaim = true
disallowPublicIpAddress = false
galleryImageReference = {
offer = "WindowsServer"
osType = "Windows"
publisher = "MicrosoftWindowsServer"
sku = "2012-Datacenter"
version = "latest"
}
isAuthenticationWithSshKey = false
labSubnetName = data.azapi_resource_id.subnet.name
labVirtualNetworkId = azapi_resource.virtualNetwork.id
networkInterface = {
}
notes = ""
osType = "Windows"
password = var.vm_password
size = "Standard_F2"
storageType = "Standard"
userName = "acct5stU5er"
}
}
ignore_casing = true
schema_validation_enabled = false
response_export_values = ["*"]
}