Microsoft.DevTestLab labs/virtualmachines

Bicep 리소스 정의

랩/virtualmachines 리소스 종류는 다음을 대상으로 하는 작업을 사용하여 배포할 수 있습니다.

각 API 버전에서 변경된 속성 목록은 변경 로그를 참조하세요.

리소스 형식

Microsoft.DevTestLab/labs/virtualmachines 리소스를 만들려면 템플릿에 다음 Bicep을 추가합니다.

resource symbolicname 'Microsoft.DevTestLab/labs/virtualmachines@2018-09-15' = {
  name: 'string'
  location: 'string'
  tags: {
    tagName1: 'tagValue1'
    tagName2: 'tagValue2'
  }
  parent: resourceSymbolicName
  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'
          weeklyRecurrence: {
            time: 'string'
            weekdays: [
              'string'
            ]
          }
        }
        tags: {}
      }
    ]
    size: 'string'
    sshKey: 'string'
    storageType: 'string'
    userName: 'string'
  }
}

속성 값

labs/virtualmachines

속성 Description
name 리소스 이름

Bicep에서 자식 리소스의 이름과 형식을 설정하는 방법을 참조하세요.
string(필수)

문자 제한: 1-15(Windows)
1-64(Linux)

유효한 문자:
영숫자 및 하이픈

영숫자로 시작하고 끝납니다. 모두 숫자일 수는 없습니다.
위치 리소스의 위치입니다. 문자열
tags 리소스의 태그입니다. 태그 이름 및 값의 사전입니다. 템플릿의 태그를 참조하세요.
부모(parent) Bicep에서 자식 리소스에 대한 부모 리소스를 지정할 수 있습니다. 자식 리소스가 부모 리소스 외부에서 선언된 경우에만 이 속성을 추가하면 됩니다.

자세한 내용은 부모 리소스 외부의 자식 리소스를 참조하세요.
형식의 리소스에 대한 기호화된 이름:
properties 리소스의 속성입니다. LabVirtualMachineProperties (필수)

LabVirtualMachineProperties

속성 Description
allowClaim 다른 사용자가 가상 머신의 소유권을 가져올 수 있는지 여부를 나타냅니다. bool
아티팩트 가상 머신에 설치할 아티팩트입니다. ArtifactInstallProperties[]
createdDate 가상 머신의 생성 날짜입니다. 문자열
customImageId 가상 머신의 사용자 지정 이미지 식별자입니다. 문자열
dataDiskParameters 만든 후 가상 머신에 연결할 새 데이터 디스크 또는 기존 데이터 디스크 DataDiskProperties[]
disallowPublicIpAddress 공용 IP 주소 없이 가상 머신을 만들 것인지 여부를 나타냅니다. bool
environmentId 이 가상 머신이 포함된 환경의 리소스 ID(있는 경우)입니다. 문자열
expirationDate VM의 만료 날짜입니다. 문자열
galleryImageReference 가상 머신의 Microsoft Azure Marketplace 이미지 참조입니다. GalleryImageReference
isAuthenticationWithSshKey 이 가상 머신이 인증에 SSH 키를 사용하는지 여부를 나타냅니다. bool
labSubnetName 가상 머신의 랩 서브넷 이름입니다. 문자열
labVirtualNetworkId 가상 머신의 랩 가상 네트워크 식별자입니다. 문자열
networkInterface 네트워크 인터페이스 속성입니다. NetworkInterfaceProperties
정보 가상 머신의 노트입니다. 문자열
ownerObjectId 가상 머신 소유자의 개체 식별자입니다. 문자열
ownerUserPrincipalName 가상 머신 소유자의 사용자 계정 이름입니다. 문자열
password 가상 머신 관리자의 암호입니다. 문자열
planId 가상 머신 이미지와 연결된 계획의 ID입니다. 문자열
scheduleParameters 만들 Virtual Machine 일정 ScheduleCreationParameter[]
크기 가상 컴퓨터의 크기. 문자열
sshKey 가상 머신 관리자의 SSH 키입니다. 문자열
storageType 가상 머신(예: 표준, 프리미엄)에 사용할 스토리지 유형입니다. 문자열
userName 가상 머신의 사용자 이름입니다. 문자열

ArtifactInstallProperties

속성 Description
artifactId 아티팩트의 식별자입니다. 문자열
artifactTitle 아티팩트의 제목입니다. 문자열
deploymentStatusMessage 배포의 상태 메시지입니다. 문자열
installTime 아티팩트가 가상 머신에 설치하기 시작하는 시간입니다. 문자열
매개 변수 아티팩트 매개 변수입니다. ArtifactParameterProperties[]
상태 아티팩트 상태. 문자열
vmExtensionStatusMessage 가상 머신 확장의 상태 메시지입니다. 문자열

ArtifactParameterProperties

속성 Description
name 아티팩트 매개 변수의 이름입니다. 문자열
아티팩트 매개 변수의 값입니다. 문자열

DataDiskProperties

속성 Description
attachNewDataDiskOptions 가상 머신에 새 디스크를 연결하는 옵션을 지정합니다. AttachNewDataDiskOptions
existingLabDiskId 가상 머신에 연결할 기존 랩 디스크 ID를 지정합니다. 문자열
hostCaching 데이터 디스크에 대한 캐싱 옵션(예: 없음, ReadOnly, ReadWrite). 'None'
'ReadOnly'
'ReadWrite'

AttachNewDataDiskOptions

속성 Description
diskName 연결할 디스크의 이름입니다. 문자열
diskSizeGiB Gibibytes로 연결할 디스크의 크기입니다. int
diskType 디스크의 스토리지 유형(예: 표준, 프리미엄)입니다. '프리미엄'
'Standard'
'StandardSSD'

GalleryImageReference

속성 Description
제품 갤러리 이미지의 제안입니다. 문자열
osType 갤러리 이미지의 OS 유형입니다. 문자열
publisher 갤러리 이미지의 게시자입니다. 문자열
sku 갤러리 이미지의 SKU입니다. 문자열
버전 갤러리 이미지의 버전입니다. 문자열

NetworkInterfaceProperties

속성 Description
dnsName DNS 이름입니다. 문자열
privateIpAddress 개인 IP 주소입니다. 문자열
publicIpAddress 공용 IP 주소입니다. 문자열
publicIpAddressId 공용 IP 주소의 리소스 ID입니다. 문자열
rdpAuthority RdpAuthority 속성은 서버 DNS 호스트 이름 또는 IP 주소 뒤에 RDP(원격 데스크톱 프로토콜)에 대한 서비스 포트 번호입니다. 문자열
sharedPublicIpAddressConfiguration 여러 가상 머신에서 공용 IP 주소를 공유하기 위한 구성입니다. SharedPublicIpAddressConfiguration
sshAuthority SshAuthority 속성은 서버 DNS 호스트 이름 또는 IP 주소 뒤에 SSH에 대한 서비스 포트 번호입니다. 문자열
subnetId 서브넷의 리소스 ID입니다. 문자열
virtualNetworkId 가상 네트워크의 리소스 ID입니다. 문자열

SharedPublicIpAddressConfiguration

속성 Description
inboundNatRules 들어오는 NAT 규칙 InboundNatRule[]

InboundNatRule

속성 Description
backendPort 외부 트래픽이 리디렉션될 포트입니다. int
frontendPort 인바운드 연결의 외부 엔드포인트 포트입니다. 가능한 값은 1에서 65535(포함) 사이입니다. 지정하지 않으면 값이 자동으로 할당됩니다. int
transportProtocol 엔드포인트의 전송 프로토콜입니다. 'Tcp'
'Udp'

ScheduleCreationParameter

속성 Description
name 가상 머신 또는 환경의 이름 문자열
properties 일정의 속성입니다. ScheduleCreationParameterProperties
tags 리소스의 태그입니다. object

ScheduleCreationParameterProperties

속성 Description
dailyRecurrence 일정이 요일마다 한 번씩 발생하는 경우 일별 되풀이를 지정합니다. DayDetails
hourlyRecurrence 일정이 하루에 여러 번 발생하는 경우 시간별 되풀이를 지정합니다. HourDetails
notificationSettings 알림 설정. NotificationSettings
상태 일정의 상태(예: 사용, 사용 안 함) '사용 안 함'
'사용'
targetResourceId 일정이 속한 리소스 ID 문자열
taskType 일정의 작업 유형(예: LabVmsShutdownTask, LabVmAutoStart)입니다. 문자열
weeklyRecurrence 일정이 요일 중 일부만 발생하는 경우 매주 되풀이를 지정합니다. WeekDetails

DayDetails

속성 Description
time 일정이 발생하는 시간입니다. 문자열

HourDetails

속성 Description
minute 일정이 실행되는 시간(분)입니다. int

NotificationSettings

속성 Description
emailRecipient 알림을 보낼 전자 메일 받는 사람(세미콜론으로 구분된 전자 메일 주소 목록일 수 있음). 문자열
notificationLocale 알림을 보낼 때 사용할 로캘입니다(지원되지 않는 언어에 대한 대체는 EN임). 문자열
상태 이 일정에 대한 알림이 활성화된 경우(예: 사용, 사용 안 함) '사용 안 함'
'사용'
timeInMinutes 알림이 전송되는 이벤트 전 시간(분)입니다. int
webhookUrl 알림을 보낼 웹후크 URL입니다. 문자열

WeekDetails

속성 Description
time 일정이 발생하는 날짜 시간입니다. 문자열
평일 일정이 설정된 요일(예: 일요일, 월요일, 화요일 등)입니다. string[]

빠른 시작 템플릿

다음 빠른 시작 템플릿은 이 리소스 유형을 배포합니다.

템플릿 Description
Windows Server VM을 사용하여 Azure DevTest Labs 랩 만들기

Azure에 배포
이 템플릿은 Windows Server 2019 Datacenter VM을 사용하여 새 DevTest Lab/DTL instance 만듭니다. 에서 사용할 수 있는 Azure DevTest Labs 대한 Azure Resource Manager 빠른 시작 템플릿https://github.com/Azure/azure-devtestlab/tree/master/ARMTemplates
클레임된 VM을 사용하여 Azure DevTest Labs 랩을 만듭니다.

Azure에 배포
이 템플릿은 클레임된 Windows Server 2019 Datacenter VM을 사용하여 새 DevTest Lab/DTL instance 만듭니다. 에서 사용할 수 있는 Azure DevTest Labs 대한 Azure Resource Manager 빠른 시작 템플릿https://github.com/Azure/azure-devtestlab/tree/master/ARMTemplates

ARM 템플릿 리소스 정의

랩/virtualmachines 리소스 종류는 다음을 대상으로 하는 작업으로 배포할 수 있습니다.

각 API 버전에서 변경된 속성 목록은 변경 로그를 참조하세요.

리소스 형식

Microsoft.DevTestLab/labs/virtualmachines 리소스를 만들려면 템플릿에 다음 JSON을 추가합니다.

{
  "type": "Microsoft.DevTestLab/labs/virtualmachines",
  "apiVersion": "2018-09-15",
  "name": "string",
  "location": "string",
  "tags": {
    "tagName1": "tagValue1",
    "tagName2": "tagValue2"
  },
  "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",
          "weeklyRecurrence": {
            "time": "string",
            "weekdays": [ "string" ]
          }
        },
        "tags": {}
      }
    ],
    "size": "string",
    "sshKey": "string",
    "storageType": "string",
    "userName": "string"
  }
}

속성 값

labs/virtualmachines

속성 Description
형식 리소스 종류 'Microsoft.DevTestLab/labs/virtualmachines'
apiVersion 리소스 api 버전 '2018-09-15'
name 리소스 이름

JSON ARM 템플릿에서 자식 리소스의 이름 및 형식을 설정하는 방법을 참조하세요.
string(필수)

문자 제한: 1-15(Windows)
1-64(Linux)

유효한 문자:
영숫자 및 하이픈

영숫자로 시작하고 끝납니다. 모두 숫자일 수는 없습니다.
위치 리소스의 위치입니다. 문자열
tags 리소스의 태그입니다. 태그 이름 및 값의 사전입니다. 템플릿의 태그를 참조하세요.
properties 리소스의 속성입니다. LabVirtualMachineProperties (필수)

LabVirtualMachineProperties

속성 Description
allowClaim 다른 사용자가 가상 머신의 소유권을 가져올 수 있는지 여부를 나타냅니다. bool
아티팩트 가상 머신에 설치할 아티팩트입니다. ArtifactInstallProperties[]
createdDate 가상 머신의 생성 날짜입니다. 문자열
customImageId 가상 머신의 사용자 지정 이미지 식별자입니다. 문자열
dataDiskParameters 만든 후 가상 머신에 연결할 새 데이터 디스크 또는 기존 데이터 디스크 DataDiskProperties[]
disallowPublicIpAddress 공용 IP 주소 없이 가상 머신을 만들 것인지 여부를 나타냅니다. bool
environmentId 이 가상 머신이 포함된 환경의 리소스 ID(있는 경우)입니다. 문자열
expirationDate VM의 만료 날짜입니다. 문자열
galleryImageReference 가상 머신의 Microsoft Azure Marketplace 이미지 참조입니다. GalleryImageReference
isAuthenticationWithSshKey 이 가상 머신이 인증에 SSH 키를 사용하는지 여부를 나타냅니다. bool
labSubnetName 가상 머신의 랩 서브넷 이름입니다. 문자열
labVirtualNetworkId 가상 머신의 랩 가상 네트워크 식별자입니다. 문자열
networkInterface 네트워크 인터페이스 속성입니다. NetworkInterfaceProperties
정보 가상 머신의 노트입니다. 문자열
ownerObjectId 가상 머신 소유자의 개체 식별자입니다. 문자열
ownerUserPrincipalName 가상 머신 소유자의 사용자 계정 이름입니다. 문자열
password 가상 머신 관리자의 암호입니다. 문자열
planId 가상 머신 이미지와 연결된 계획의 ID입니다. 문자열
scheduleParameters 만들 Virtual Machine 일정 ScheduleCreationParameter[]
크기 가상 컴퓨터의 크기. 문자열
sshKey 가상 머신 관리자의 SSH 키입니다. 문자열
storageType 가상 머신(예: 표준, 프리미엄)에 사용할 스토리지 유형입니다. 문자열
userName 가상 머신의 사용자 이름입니다. 문자열

ArtifactInstallProperties

속성 Description
artifactId 아티팩트의 식별자입니다. 문자열
artifactTitle 아티팩트의 제목입니다. 문자열
deploymentStatusMessage 배포의 상태 메시지입니다. 문자열
installTime 아티팩트가 가상 머신에 설치하기 시작하는 시간입니다. 문자열
매개 변수 아티팩트 매개 변수입니다. ArtifactParameterProperties[]
상태 아티팩트 상태. 문자열
vmExtensionStatusMessage 가상 머신 확장의 상태 메시지입니다. 문자열

ArtifactParameterProperties

속성 Description
name 아티팩트 매개 변수의 이름입니다. 문자열
아티팩트 매개 변수의 값입니다. 문자열

DataDiskProperties

속성 Description
attachNewDataDiskOptions 가상 머신에 새 디스크를 연결하는 옵션을 지정합니다. AttachNewDataDiskOptions
existingLabDiskId 가상 머신에 연결할 기존 랩 디스크 ID를 지정합니다. 문자열
hostCaching 데이터 디스크에 대한 캐싱 옵션(예: 없음, ReadOnly, ReadWrite). 'None'
'ReadOnly'
'ReadWrite'

AttachNewDataDiskOptions

속성 Description
diskName 연결할 디스크의 이름입니다. 문자열
diskSizeGiB Gibibytes로 연결할 디스크의 크기입니다. int
diskType 디스크의 스토리지 유형(예: 표준, 프리미엄)입니다. '프리미엄'
'Standard'
'StandardSSD'

GalleryImageReference

속성 Description
제품 갤러리 이미지의 제안입니다. 문자열
osType 갤러리 이미지의 OS 유형입니다. 문자열
publisher 갤러리 이미지의 게시자입니다. 문자열
sku 갤러리 이미지의 SKU입니다. 문자열
버전 갤러리 이미지의 버전입니다. 문자열

NetworkInterfaceProperties

속성 Description
dnsName DNS 이름입니다. 문자열
privateIpAddress 개인 IP 주소입니다. 문자열
publicIpAddress 공용 IP 주소입니다. 문자열
publicIpAddressId 공용 IP 주소의 리소스 ID입니다. 문자열
rdpAuthority RdpAuthority 속성은 서버 DNS 호스트 이름 또는 IP 주소 뒤에 RDP에 대한 서비스 포트 번호(원격 데스크톱 프로토콜)입니다. 문자열
sharedPublicIpAddressConfiguration 여러 가상 머신에서 공용 IP 주소를 공유하기 위한 구성입니다. SharedPublicIpAddressConfiguration
sshAuthority SshAuthority 속성은 서버 DNS 호스트 이름 또는 IP 주소 뒤에 SSH에 대한 서비스 포트 번호입니다. 문자열
subnetId 서브넷의 리소스 ID입니다. 문자열
virtualNetworkId 가상 네트워크의 리소스 ID입니다. 문자열

SharedPublicIpAddressConfiguration

속성 Description
inboundNatRules 들어오는 NAT 규칙 InboundNatRule[]

InboundNatRule

속성 Description
backendPort 외부 트래픽을 리디렉션할 포트입니다. int
frontendPort 인바운드 연결의 외부 엔드포인트 포트입니다. 가능한 값은 1에서 65535(포함) 사이입니다. 지정하지 않으면 값이 자동으로 할당됩니다. int
transportProtocol 엔드포인트의 전송 프로토콜입니다. 'Tcp'
'Udp'

ScheduleCreationParameter

속성 Description
name 가상 머신 또는 환경의 이름 문자열
properties 일정의 속성입니다. ScheduleCreationParameterProperties
tags 리소스의 태그입니다. object

ScheduleCreationParameterProperties

속성 Description
dailyRecurrence 일정이 요일마다 한 번씩 발생하는 경우 일별 되풀이를 지정합니다. DayDetails
hourlyRecurrence 일정이 하루에 여러 번 발생하는 경우 시간별 되풀이를 지정합니다. HourDetails
notificationSettings 알림 설정. NotificationSettings
상태 일정의 상태(예: 사용, 사용 안 함) 'Disabled'
'Enabled'
targetResourceId 일정이 속한 리소스 ID 문자열
taskType 일정의 작업 유형(예: LabVmsShutdownTask, LabVmAutoStart)입니다. 문자열
weeklyRecurrence 일정이 요일 중 일부만 발생하는 경우 매주 되풀이를 지정합니다. WeekDetails

DayDetails

속성 Description
time 일정이 발생하는 시간입니다. 문자열

HourDetails

속성 Description
minute 일정이 실행되는 시간(분)입니다. int

NotificationSettings

속성 Description
emailRecipient 알림을 보낼 전자 메일 받는 사람(세미콜론으로 구분된 전자 메일 주소 목록일 수 있음). 문자열
notificationLocale 알림을 보낼 때 사용할 로캘입니다(지원되지 않는 언어에 대한 대체는 EN임). 문자열
상태 이 일정에 대해 알림이 사용하도록 설정된 경우(예: 사용, 사용 안 함) 'Disabled'
'Enabled'
timeInMinutes 알림이 전송되는 이벤트 전 시간(분)입니다. int
webhookUrl 알림을 보낼 웹후크 URL입니다. 문자열

WeekDetails

속성 Description
time 일정이 수행되는 날짜의 시간입니다. 문자열
평일 일정이 설정된 요일(예: 일요일, 월요일, 화요일 등)입니다. string[]

빠른 시작 템플릿

다음 빠른 시작 템플릿은 이 리소스 종류를 배포합니다.

템플릿 Description
Windows Server VM을 사용하여 Azure DevTest Labs 랩 만들기

Azure에 배포
이 템플릿은 Windows Server 2019 Datacenter VM을 사용하여 새 DevTest Lab/DTL instance 만듭니다. 에서 사용할 수 있는 Azure DevTest Labs 대한 Azure Resource Manager 빠른 시작 템플릿https://github.com/Azure/azure-devtestlab/tree/master/ARMTemplates
클레임된 VM을 사용하여 Azure DevTest Labs 랩 만들기

Azure에 배포
이 템플릿은 클레임된 Windows Server 2019 Datacenter VM이 포함된 새 DevTest Lab/DTL instance 만듭니다. 에서 사용할 수 있는 Azure DevTest Labs 대한 Azure Resource Manager 빠른 시작 템플릿https://github.com/Azure/azure-devtestlab/tree/master/ARMTemplates

Terraform(AzAPI 공급자) 리소스 정의

랩/virtualmachines 리소스 종류는 다음을 대상으로 하는 작업을 사용하여 배포할 수 있습니다.

  • 리소스 그룹

각 API 버전에서 변경된 속성 목록은 변경 로그를 참조하세요.

리소스 형식

Microsoft.DevTestLab/labs/virtualmachines 리소스를 만들려면 템플릿에 다음 Terraform을 추가합니다.

resource "azapi_resource" "symbolicname" {
  type = "Microsoft.DevTestLab/labs/virtualmachines@2018-09-15"
  name = "string"
  location = "string"
  parent_id = "string"
  tags = {
    tagName1 = "tagValue1"
    tagName2 = "tagValue2"
  }
  body = jsonencode({
    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"
            weeklyRecurrence = {
              time = "string"
              weekdays = [
                "string"
              ]
            }
          }
          tags = {}
        }
      ]
      size = "string"
      sshKey = "string"
      storageType = "string"
      userName = "string"
    }
  })
}

속성 값

labs/virtualmachines

속성 Description
형식 리소스 종류 "Microsoft.DevTestLab/labs/virtualmachines@2018-09-15"
name 리소스 이름 string(필수)

문자 제한: 1-15(Windows)
1-64(Linux)

유효한 문자:
영숫자 및 하이픈

영숫자로 시작하고 끝납니다. 모두 숫자일 수는 없습니다.
위치 리소스의 위치입니다. 문자열
parent_id 이 리소스의 부모인 리소스의 ID입니다. 형식의 리소스에 대한 ID:
tags 리소스의 태그입니다. 태그 이름 및 값의 사전입니다.
properties 리소스의 속성입니다. LabVirtualMachineProperties (필수)

LabVirtualMachineProperties

속성 Description
allowClaim 다른 사용자가 가상 머신의 소유권을 가져올 수 있는지 여부를 나타냅니다. bool
아티팩트 가상 머신에 설치할 아티팩트입니다. ArtifactInstallProperties[]
createdDate 가상 머신의 생성 날짜입니다. 문자열
customImageId 가상 머신의 사용자 지정 이미지 식별자입니다. 문자열
dataDiskParameters 만든 후 가상 머신에 연결할 새 데이터 디스크 또는 기존 데이터 디스크 DataDiskProperties[]
disallowPublicIpAddress 공용 IP 주소 없이 가상 머신을 만들 것인지 여부를 나타냅니다. bool
environmentId 이 가상 머신이 포함된 환경의 리소스 ID(있는 경우)입니다. 문자열
expirationDate VM의 만료 날짜입니다. 문자열
galleryImageReference 가상 머신의 Microsoft Azure Marketplace 이미지 참조입니다. GalleryImageReference
isAuthenticationWithSshKey 이 가상 머신이 인증에 SSH 키를 사용하는지 여부를 나타냅니다. bool
labSubnetName 가상 머신의 랩 서브넷 이름입니다. 문자열
labVirtualNetworkId 가상 머신의 랩 가상 네트워크 식별자입니다. 문자열
networkInterface 네트워크 인터페이스 속성입니다. NetworkInterfaceProperties
정보 가상 머신의 노트입니다. 문자열
ownerObjectId 가상 머신 소유자의 개체 식별자입니다. 문자열
ownerUserPrincipalName 가상 머신 소유자의 사용자 계정 이름입니다. 문자열
password 가상 머신 관리자의 암호입니다. 문자열
planId 가상 머신 이미지와 연결된 계획의 ID입니다. 문자열
scheduleParameters 만들 Virtual Machine 일정 ScheduleCreationParameter[]
크기 가상 컴퓨터의 크기. 문자열
sshKey 가상 머신 관리자의 SSH 키입니다. 문자열
storageType 가상 머신(예: 표준, 프리미엄)에 사용할 스토리지 유형입니다. 문자열
userName 가상 머신의 사용자 이름입니다. 문자열

ArtifactInstallProperties

속성 Description
artifactId 아티팩트의 식별자입니다. 문자열
artifactTitle 아티팩트의 제목입니다. 문자열
deploymentStatusMessage 배포의 상태 메시지입니다. 문자열
installTime 아티팩트가 가상 머신에 설치하기 시작하는 시간입니다. 문자열
매개 변수 아티팩트 매개 변수입니다. ArtifactParameterProperties[]
상태 아티팩트 상태. 문자열
vmExtensionStatusMessage 가상 머신 확장의 상태 메시지입니다. 문자열

ArtifactParameterProperties

속성 Description
name 아티팩트 매개 변수의 이름입니다. 문자열
아티팩트 매개 변수의 값입니다. 문자열

DataDiskProperties

속성 Description
attachNewDataDiskOptions 가상 머신에 새 디스크를 연결하는 옵션을 지정합니다. AttachNewDataDiskOptions
existingLabDiskId 가상 머신에 연결할 기존 랩 디스크 ID를 지정합니다. 문자열
hostCaching 데이터 디스크에 대한 캐싱 옵션(예: 없음, ReadOnly, ReadWrite). “None”
"ReadOnly"
"ReadWrite"

AttachNewDataDiskOptions

속성 Description
diskName 연결할 디스크의 이름입니다. 문자열
diskSizeGiB Gibibytes에 연결할 디스크의 크기입니다. int
diskType 디스크의 스토리지 유형(예: 표준, 프리미엄)입니다. "프리미엄"
"표준"
"StandardSSD"

GalleryImageReference

속성 Description
제품 갤러리 이미지의 제안입니다. 문자열
osType 갤러리 이미지의 OS 유형입니다. 문자열
publisher 갤러리 이미지의 게시자입니다. 문자열
sku 갤러리 이미지의 SKU입니다. 문자열
버전 갤러리 이미지의 버전입니다. 문자열

NetworkInterfaceProperties

속성 Description
dnsName DNS 이름입니다. 문자열
privateIpAddress 개인 IP 주소입니다. 문자열
publicIpAddress 공용 IP 주소입니다. 문자열
publicIpAddressId 공용 IP 주소의 리소스 ID입니다. 문자열
rdpAuthority RdpAuthority 속성은 서버 DNS 호스트 이름 또는 IP 주소 뒤에 RDP(원격 데스크톱 프로토콜)에 대한 서비스 포트 번호입니다. 문자열
sharedPublicIpAddressConfiguration 여러 가상 머신에서 공용 IP 주소를 공유하기 위한 구성입니다. SharedPublicIpAddressConfiguration
sshAuthority SshAuthority 속성은 서버 DNS 호스트 이름 또는 IP 주소 뒤에 SSH에 대한 서비스 포트 번호입니다. 문자열
subnetId 서브넷의 리소스 ID입니다. 문자열
virtualNetworkId 가상 네트워크의 리소스 ID입니다. 문자열

SharedPublicIpAddressConfiguration

속성 Description
inboundNatRules 들어오는 NAT 규칙 InboundNatRule[]

InboundNatRule

속성 Description
backendPort 외부 트래픽이 리디렉션될 포트입니다. int
frontendPort 인바운드 연결의 외부 엔드포인트 포트입니다. 가능한 값은 1에서 65535(포함) 사이입니다. 지정하지 않으면 값이 자동으로 할당됩니다. int
transportProtocol 엔드포인트의 전송 프로토콜입니다. "Tcp"
"Udp"

ScheduleCreationParameter

속성 Description
name 가상 머신 또는 환경의 이름 문자열
properties 일정의 속성입니다. ScheduleCreationParameterProperties
tags 리소스의 태그입니다. object

ScheduleCreationParameterProperties

속성 Description
dailyRecurrence 일정이 요일마다 한 번씩 발생하는 경우 일별 되풀이를 지정합니다. DayDetails
hourlyRecurrence 일정이 하루에 여러 번 발생하는 경우 시간별 되풀이를 지정합니다. HourDetails
notificationSettings 알림 설정. NotificationSettings
상태 일정의 상태(예: 사용, 사용 안 함) "사용 안 함"
"사용"
targetResourceId 일정이 속한 리소스 ID 문자열
taskType 일정의 작업 유형(예: LabVmsShutdownTask, LabVmAutoStart)입니다. 문자열
weeklyRecurrence 일정이 요일 중 일부만 발생하는 경우 매주 되풀이를 지정합니다. WeekDetails

DayDetails

속성 Description
time 일정이 발생하는 시간입니다. 문자열

HourDetails

속성 Description
minute 일정이 실행되는 시간(분)입니다. int

NotificationSettings

속성 Description
emailRecipient 알림을 보낼 전자 메일 받는 사람(세미콜론으로 구분된 전자 메일 주소 목록일 수 있음). 문자열
notificationLocale 알림을 보낼 때 사용할 로캘입니다(지원되지 않는 언어에 대한 대체는 EN임). 문자열
상태 이 일정에 대한 알림이 활성화된 경우(예: 사용, 사용 안 함) "사용 안 함"
"사용"
timeInMinutes 알림이 전송되는 이벤트 전 시간(분)입니다. int
webhookUrl 알림을 보낼 웹후크 URL입니다. 문자열

WeekDetails

속성 Description
time 일정이 발생하는 날짜 시간입니다. 문자열
평일 일정이 설정된 요일(예: 일요일, 월요일, 화요일 등)입니다. string[]