Microsoft.DevTestLab labs/virtualmachines 2016-05-15

Bicep リソース定義

labs/virtualmachines リソースの種類は、次をターゲットとする操作でデプロイできます。

各 API バージョンの変更されたプロパティの一覧については、「 変更ログ」を参照してください。

リソース形式

Microsoft.DevTestLab/labs/virtualmachines リソースを作成するには、次の Bicep をテンプレートに追加します。

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'
  }
}

プロパティ値

labs/virtualmachines

名前 説明
name リソース名

Bicep で子リソースの名前と型を設定する方法を参照してください。
string (必須)

文字制限: 1 から 15 (Windows)
1-64 (Linux)

有効な文字:
英数字とハイフン。

先頭と末尾には英数字を使用します。 すべて数字にすることはできません。
location リソースの場所。 string
tags リソースのタグ。 タグ名と値のディクショナリ。 「テンプレートのタグ」を参照してください
parent Bicep では、子リソースの親リソースを指定できます。 このプロパティを追加する必要があるのは、子リソースが親リソースの外部で宣言されている場合のみです。

詳細については、「 親リソースの外部にある子リソース」を参照してください。
種類のリソースのシンボル名: ラボ
properties リソースのプロパティ。 LabVirtualMachineProperties (必須)

LabVirtualMachineProperties

名前 説明
allowClaim 別のユーザーが仮想マシンの所有権を取得できるかどうかを示します [bool]
applicableSchedule 仮想マシンに適用されるスケジュール。 ApplicableSchedule
artifactDeploymentStatus 仮想マシンの成果物のデプロイ状態。 ArtifactDeploymentStatusProperties
artifacts 仮想マシンにインストールする成果物。 ArtifactInstallProperties[]
computeVm コンピューティング仮想マシンのプロパティ。 ComputeVmProperties
createdByUser 仮想マシンの作成者のメール アドレス。 string
createdByUserId 仮想マシンの作成者のオブジェクト識別子。 string
createdDate 仮想マシンの作成日。 string
customImageId 仮想マシンのカスタム イメージ識別子。 string
disallowPublicIpAddress パブリック IP アドレスなしで仮想マシンを作成するかどうかを示します。 [bool]
environmentId この仮想マシンを含む環境のリソース ID (存在する場合)。 string
expirationDate VM の有効期限。 string
fqdn 仮想マシンの完全修飾ドメイン名。 string
galleryImageReference 仮想マシンの Microsoft Azure Marketplace イメージ参照。 GalleryImageReference
isAuthenticationWithSshKey この仮想マシンが認証に SSH キーを使用するかどうかを示します。 [bool]
labSubnetName 仮想マシンのラボ サブネット名。 string
labVirtualNetworkId 仮想マシンのラボ仮想ネットワーク識別子。 string
networkInterface ネットワーク インターフェイスのプロパティ。 NetworkInterfaceProperties
notes 仮想マシンのメモ。 string
osType 仮想マシンの OS の種類。 string
ownerObjectId 仮想マシンの所有者のオブジェクト識別子。 string
ownerUserPrincipalName 仮想マシン所有者のユーザー プリンシパル名。 string
password 仮想マシン管理者のパスワード。 string
provisioningState リソースのプロビジョニング状態。 string
size 仮想マシンのサイズ。 string
sshKey 仮想マシン管理者の SSH キー。 string
storageType 仮想マシンに使用するストレージの種類 (Standard、Premium など)。 string
Uniqueidentifier リソースの一意の不変識別子 (Guid)。 string
userName 仮想マシンのユーザー名。 string
virtualMachineCreationSource ラボ仮想マシンの作成元に指示します。 Output プロパティのみ。 'FromCustomImage'
'FromGalleryImage'

ApplicableSchedule

名前 説明 [値]
location リソースの場所。 string
properties リソースのプロパティ。 ApplicableScheduleProperties (必須)
tags リソースのタグ。 object
location リソースの場所。 string
properties リソースのプロパティ。 ApplicableScheduleProperties (必須)
tags リソースのタグ。 object

ApplicableScheduleProperties

名前 説明
labVmsShutdown 自動シャットダウン スケジュール (ラボまたはラボ リソース レベルで設定されている場合)。 [スケジュール]
labVmsStartup 自動起動スケジュール (ラボまたはラボ リソース レベルで設定されている場合)。 [スケジュール]

スケジュール

名前 説明 [値]
location リソースの場所。 string
properties リソースのプロパティ。 ScheduleProperties (必須)
tags リソースのタグ。 object

ScheduleProperties

名前 説明
dailyRecurrence スケジュールが週の各日に 1 回行われる場合は、毎日の繰り返しを指定します。 DayDetails
hourlyRecurrence スケジュールが 1 日に複数回発生する場合は、時間単位の繰り返しを指定します。 HourDetails
notificationSettings 通知設定。 NotificationSettings
provisioningState リソースのプロビジョニング状態。 string
status スケジュールの状態 (有効、無効) 'Disabled'
'Enabled'
targetResourceId スケジュールが属するリソース ID string
taskType スケジュールのタスクの種類 (LabVmsShutdownTask、LabVmAutoStart など)。 string
Timezoneid タイム ゾーン ID (太平洋標準時など)。 string
Uniqueidentifier リソースの一意の不変識別子 (Guid)。 string
weeklyRecurrence スケジュールが週の数日だけ発生する場合は、週単位の繰り返しを指定します。 WeekDetails

DayDetails

名前 説明
time スケジュールが発生する時刻。 string

HourDetails

名前 説明
minute スケジュールが実行される時間の分数。 INT

NotificationSettings

名前 説明
status このスケジュールに対して通知が有効になっている場合 (つまり、有効、無効)。 'Disabled'
'Enabled'
timeInMinutes 通知が送信されるイベントの前の時間 (分)。 INT
webhookUrl 通知の送信先となる Webhook URL。 string

WeekDetails

名前 説明
time スケジュールが発生する時刻。 string
平日 スケジュールが設定されている曜日 (日曜日、月曜日、火曜日など)。 string[]

ArtifactDeploymentStatusProperties

名前 説明
artifactsApplied 正常に適用された成果物の合計数。 INT
deploymentStatus 成果物のデプロイの状態。 string
totalArtifacts 仮適用された成果物の合計数。 INT

ArtifactInstallProperties

名前 説明
artifactId 成果物の識別子。 string
deploymentStatusMessage デプロイからのステータス メッセージ。 string
installTime 成果物が仮想マシンへのインストールを開始する時間。 string
parameters 成果物のパラメーター。 ArtifactParameterProperties[]
status 成果物の状態。 string
vmExtensionStatusMessage 仮想マシン拡張機能からのステータス メッセージ。 string

ArtifactParameterProperties

名前 説明
name 成果物パラメーターの名前。 string
value 成果物パラメーターの値。 string

ComputeVmProperties

名前 説明
dataDiskIds 仮想マシンのデータ ディスク BLOB URI を取得します。 string[]
dataDisks 仮想マシンに接続されているすべてのデータ ディスクを取得します。 ComputeDataDisk[]
networkInterfaceId 仮想マシンのネットワーク インターフェイス ID を取得します。 string
osDiskId 仮想マシンの OS ディスク BLOB URI を取得します。 string
osType 仮想マシンの OS の種類を取得します。 string
statuses 仮想マシンの状態を取得します。 ComputeVmInstanceViewStatus[]
vmSize 仮想マシンのサイズを取得します。 string

ComputeDataDisk

名前 説明
diskSizeGiB GiB のデータ ディスク サイズを取得します。 INT
diskUri BLOB でサポートされている場合は、基になる BLOB の URI。 string
managedDiskId マネージド ディスクによってバックアップされる場合、これはコンピューティング ディスク リソースの ID です。 string
name データ ディスク名を取得します。 string

ComputeVmInstanceViewStatus

名前 説明
code 状態 Code を取得します。 string
displayStatus 状態の短いローカライズ可能なラベルを取得します。 string
message 状態に関連付けられているメッセージを取得します。 string

GalleryImageReference

名前 説明
offer ギャラリー イメージのオファー。 string
osType ギャラリー イメージの OS の種類。 string
publisher ギャラリー イメージの発行元。 string
sku ギャラリー イメージの SKU。 string
version ギャラリー イメージのバージョン。 string

NetworkInterfaceProperties

名前 説明
dnsName DNS 名。 string
privateIpAddress プライベート IP アドレス。 string
publicIpAddress パブリック IP アドレス。 string
publicIpAddressId パブリック IP アドレスのリソース ID。 string
rdpAuthority RdpAuthority プロパティは、サーバー DNS ホスト名または IP アドレスの後に RDP (リモート デスクトップ プロトコル) のサービス ポート番号が続くものです。 string
sharedPublicIpAddressConfiguration 複数の仮想マシン間でパブリック IP アドレスを共有するための構成。 SharedPublicIpAddressConfiguration
sshAuthority SshAuthority プロパティは、サーバー DNS ホスト名または IP アドレスの後に SSH のサービス ポート番号が続くものです。 string
subnetId サブネットのリソース ID。 string
virtualNetworkId 仮想ネットワークのリソース ID。 string

SharedPublicIpAddressConfiguration

名前 説明
inboundNatRules 受信 NAT 規則 InboundNatRule[]

InboundNatRule

名前 説明
backendPort 外部トラフィックがリダイレクトされるポート。 INT
frontendPort 受信接続の外部エンドポイント ポート。 指定できる値は 1 以上 65535 以下です。 指定しない場合、値は自動的に割り当てられます。 INT
transportProtocol エンドポイントのトランスポート プロトコル。 'Tcp'
'Udp'

クイック スタート テンプレート

次のクイックスタート テンプレートでは、このリソースの種類をデプロイします。

Template 説明
Windows Server VM を使用してAzure DevTest Labsにラボを作成します

Azure にデプロイする
このテンプレートは、Windows Server 2019 Datacenter VM を含む新しい DevTest Lab/DTL インスタンスを作成します。 その他の Azure Resource Manager Azure DevTest Labs 用クイック スタート テンプレートについては、以下を参照してください。https://github.com/Azure/azure-devtestlab/tree/master/ARMTemplates
要求された VM を使用してAzure DevTest Labsにラボを作成します

Azure にデプロイする
このテンプレートは、要求された Windows Server 2019 Datacenter VM を含む新しい DevTest Lab/DTL インスタンスを作成します。 その他の Azure Resource Manager Azure DevTest Labs 用クイック スタート テンプレートについては、以下を参照してください。https://github.com/Azure/azure-devtestlab/tree/master/ARMTemplates

ARM テンプレート リソース定義

labs/virtualmachines リソースの種類は、次をターゲットとする操作でデプロイできます。

各 API バージョンの変更されたプロパティの一覧については、「 変更ログ」を参照してください。

リソース形式

Microsoft.DevTestLab/labs/virtualmachines リソースを作成するには、次の JSON をテンプレートに追加します。

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

プロパティ値

labs/virtualmachines

名前 説明
type リソースの種類 'Microsoft.DevTestLab/labs/virtualmachines'
apiVersion リソース API のバージョン '2016-05-15'
name リソース名

JSON ARM テンプレートで子リソースの名前と型を設定する方法を参照してください。
string (必須)

文字制限: 1 から 15 (Windows)
1-64 (Linux)

有効な文字:
英数字とハイフン。

先頭と末尾には英数字を使用します。 すべて数字にすることはできません。
location リソースの場所。 string
tags リソースのタグ。 タグ名と値のディクショナリ。 「テンプレートのタグ」を参照してください
properties リソースのプロパティ。 LabVirtualMachineProperties (必須)

LabVirtualMachineProperties

名前 説明
allowClaim 別のユーザーが仮想マシンの所有権を取得できるかどうかを示します [bool]
applicableSchedule 仮想マシンに適用されるスケジュール。 ApplicableSchedule
artifactDeploymentStatus 仮想マシンの成果物のデプロイ状態。 ArtifactDeploymentStatusProperties
artifacts 仮想マシンにインストールする成果物。 ArtifactInstallProperties[]
computeVm コンピューティング仮想マシンのプロパティ。 ComputeVmProperties
createdByUser 仮想マシンの作成者のメール アドレス。 string
createdByUserId 仮想マシンの作成者のオブジェクト識別子。 string
createdDate 仮想マシンの作成日。 string
customImageId 仮想マシンのカスタム イメージ識別子。 string
disallowPublicIpAddress パブリック IP アドレスなしで仮想マシンを作成するかどうかを示します。 [bool]
environmentId この仮想マシンを含む環境のリソース ID (存在する場合)。 string
expirationDate VM の有効期限。 string
fqdn 仮想マシンの完全修飾ドメイン名。 string
galleryImageReference 仮想マシンの Microsoft Azure Marketplace イメージ参照。 GalleryImageReference
isAuthenticationWithSshKey この仮想マシンが認証に SSH キーを使用するかどうかを示します。 [bool]
labSubnetName 仮想マシンのラボ サブネット名。 string
labVirtualNetworkId 仮想マシンのラボ仮想ネットワーク識別子。 string
networkInterface ネットワーク インターフェイスのプロパティ。 NetworkInterfaceProperties
notes 仮想マシンのメモ。 string
osType 仮想マシンの OS の種類。 string
ownerObjectId 仮想マシンの所有者のオブジェクト識別子。 string
ownerUserPrincipalName 仮想マシン所有者のユーザー プリンシパル名。 string
password 仮想マシン管理者のパスワード。 string
provisioningState リソースのプロビジョニング状態。 string
size 仮想マシンのサイズ。 string
sshKey 仮想マシン管理者の SSH キー。 string
storageType 仮想マシンに使用するストレージの種類 (Standard、Premium など)。 string
Uniqueidentifier リソースの一意の不変識別子 (Guid)。 string
userName 仮想マシンのユーザー名。 string
virtualMachineCreationSource ラボ仮想マシンの作成元に指示します。 Output プロパティのみ。 'FromCustomImage'
'FromGalleryImage'

ApplicableSchedule

名前 説明 [値]
location リソースの場所。 string
properties リソースのプロパティ。 ApplicableScheduleProperties (必須)
tags リソースのタグ。 object
location リソースの場所。 string
properties リソースのプロパティ。 ApplicableScheduleProperties (必須)
tags リソースのタグ。 object

ApplicableScheduleProperties

名前 説明
labVmsShutdown 自動シャットダウン スケジュール (ラボまたはラボ リソース レベルで設定されている場合)。 [スケジュール]
labVmsStartup 自動起動スケジュール (ラボまたはラボ リソース レベルで設定されている場合)。 [スケジュール]

スケジュール

名前 説明 [値]
location リソースの場所。 string
properties リソースのプロパティ。 ScheduleProperties (必須)
tags リソースのタグ。 object

ScheduleProperties

名前 説明
dailyRecurrence スケジュールが曜日ごとに 1 回発生する場合は、毎日の繰り返しを指定します。 DayDetails
hourlyRecurrence スケジュールが 1 日に複数回発生する場合は、時間単位の繰り返しを指定します。 HourDetails
notificationSettings 通知設定。 NotificationSettings
provisioningState リソースのプロビジョニング状態。 string
status スケジュールの状態 (有効、無効) 'Disabled'
'Enabled'
targetResourceId スケジュールが属するリソース ID string
taskType スケジュールのタスクの種類 (LabVmsShutdownTask、LabVmAutoStart など)。 string
Timezoneid タイム ゾーン ID (太平洋標準時など)。 string
Uniqueidentifier リソースの一意の不変識別子 (Guid)。 string
weeklyRecurrence スケジュールが週の数日だけ発生する場合は、週単位の繰り返しを指定します。 WeekDetails

DayDetails

名前 説明
time スケジュールが発生する時刻。 string

HourDetails

名前 説明
minute スケジュールが実行される時間の分数。 INT

NotificationSettings

名前 説明
status このスケジュールに対して通知が有効になっている場合 (つまり、有効、無効)。 'Disabled'
'Enabled'
timeInMinutes 通知が送信されるイベントの前の時間 (分)。 INT
webhookUrl 通知の送信先となる Webhook URL。 string

WeekDetails

名前 説明
time スケジュールが発生する時刻。 string
平日 スケジュールが設定されている曜日 (日曜日、月曜日、火曜日など)。 string[]

ArtifactDeploymentStatusProperties

名前 説明
artifactsApplied 正常に適用された成果物の合計数。 INT
deploymentStatus 成果物のデプロイ状態。 string
totalArtifacts 仮適用された成果物の合計数。 INT

ArtifactInstallProperties

名前 説明
artifactId 成果物の識別子。 string
deploymentStatusMessage デプロイからのステータス メッセージ。 string
installTime 成果物が仮想マシンへのインストールを開始する時間。 string
parameters 成果物のパラメーター。 ArtifactParameterProperties[]
status 成果物の状態。 string
vmExtensionStatusMessage 仮想マシン拡張機能からのステータス メッセージ。 string

ArtifactParameterProperties

名前 説明
name 成果物パラメーターの名前。 string
value 成果物パラメーターの値。 string

ComputeVmProperties

名前 説明
dataDiskIds 仮想マシンのデータ ディスク BLOB URI を取得します。 string[]
dataDisks 仮想マシンに接続されているすべてのデータ ディスクを取得します。 ComputeDataDisk[]
networkInterfaceId 仮想マシンのネットワーク インターフェイス ID を取得します。 string
osDiskId 仮想マシンの OS ディスク BLOB URI を取得します。 string
osType 仮想マシンの OS の種類を取得します。 string
statuses 仮想マシンの状態を取得します。 ComputeVmInstanceViewStatus[]
vmSize 仮想マシンのサイズを取得します。 string

ComputeDataDisk

名前 説明
diskSizeGiB GiB のデータ ディスク サイズを取得します。 INT
diskUri BLOB でサポートされている場合は、基になる BLOB の URI。 string
managedDiskId マネージド ディスクによってバックアップされる場合、これはコンピューティング ディスク リソースの ID です。 string
name データ ディスク名を取得します。 string

ComputeVmInstanceViewStatus

名前 説明
code 状態 Code を取得します。 string
displayStatus 状態の短いローカライズ可能なラベルを取得します。 string
message 状態に関連付けられているメッセージを取得します。 string

GalleryImageReference

名前 説明
offer ギャラリー イメージのオファー。 string
osType ギャラリー イメージの OS の種類。 string
publisher ギャラリー イメージの発行元。 string
sku ギャラリー イメージの SKU。 string
version ギャラリー イメージのバージョン。 string

NetworkInterfaceProperties

名前 説明
dnsName DNS 名。 string
privateIpAddress プライベート IP アドレス。 string
publicIpAddress パブリック IP アドレス。 string
publicIpAddressId パブリック IP アドレスのリソース ID。 string
rdpAuthority RdpAuthority プロパティは、サーバー DNS ホスト名または IP アドレスの後に RDP (リモート デスクトップ プロトコル) のサービス ポート番号が続くものです。 string
sharedPublicIpAddressConfiguration 複数の仮想マシン間でパブリック IP アドレスを共有するための構成。 SharedPublicIpAddressConfiguration
sshAuthority SshAuthority プロパティは、サーバー DNS ホスト名または IP アドレスの後に SSH のサービス ポート番号が続くものです。 string
subnetId サブネットのリソース ID。 string
virtualNetworkId 仮想ネットワークのリソース ID。 string

SharedPublicIpAddressConfiguration

名前 説明
inboundNatRules 受信 NAT 規則 InboundNatRule[]

InboundNatRule

名前 説明
backendPort 外部トラフィックがリダイレクトされるポート。 INT
frontendPort 受信接続の外部エンドポイント ポート。 指定できる値は 1 以上 65535 以下です。 指定しない場合、値は自動的に割り当てられます。 INT
transportProtocol エンドポイントのトランスポート プロトコル。 'Tcp'
'Udp'

クイック スタート テンプレート

次のクイックスタート テンプレートでは、このリソースの種類をデプロイします。

Template 説明
Windows Server VM を使用してAzure DevTest Labsにラボを作成します

Azure にデプロイする
このテンプレートは、Windows Server 2019 Datacenter VM を含む新しい DevTest Lab/DTL インスタンスを作成します。 その他の Azure Resource Manager Azure DevTest Labs 用クイック スタート テンプレートについては、以下を参照してください。https://github.com/Azure/azure-devtestlab/tree/master/ARMTemplates
要求された VM を使用してAzure DevTest Labsにラボを作成します

Azure にデプロイする
このテンプレートは、要求された Windows Server 2019 Datacenter VM を含む新しい DevTest Lab/DTL インスタンスを作成します。 その他の Azure Resource Manager Azure DevTest Labs 用クイック スタート テンプレートについては、以下を参照してください。https://github.com/Azure/azure-devtestlab/tree/master/ARMTemplates

Terraform (AzAPI プロバイダー) リソース定義

labs/virtualmachines リソースの種類は、次をターゲットとする操作でデプロイできます。

  • リソース グループ

各 API バージョンの変更されたプロパティの一覧については、「 変更ログ」を参照してください。

リソース形式

Microsoft.DevTestLab/labs/virtualmachines リソースを作成するには、次の Terraform をテンプレートに追加します。

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"
    }
  })
}

プロパティ値

labs/virtualmachines

名前 説明
type リソースの種類 "Microsoft.DevTestLab/labs/virtualmachines@2016-05-15"
name リソース名 string (必須)

文字制限: 1 から 15 (Windows)
1-64 (Linux)

有効な文字:
英数字とハイフン。

先頭と末尾には英数字を使用します。 すべて数字にすることはできません。
location リソースの場所。 string
parent_id このリソースの親であるリソースの ID。 種類のリソースの ID: ラボ
tags リソースのタグ。 タグの名前と値のディクショナリ。
properties リソースのプロパティ。 LabVirtualMachineProperties (必須)

LabVirtualMachineProperties

名前 説明
allowClaim 別のユーザーが仮想マシンの所有権を取得できるかどうかを示します [bool]
applicableSchedule 仮想マシンに適用されるスケジュール。 ApplicableSchedule
artifactDeploymentStatus 仮想マシンの成果物のデプロイ状態。 ArtifactDeploymentStatusProperties
artifacts 仮想マシンにインストールする成果物。 ArtifactInstallProperties[]
computeVm コンピューティング仮想マシンのプロパティ。 ComputeVmProperties
createdByUser 仮想マシンの作成者の電子メール アドレス。 string
createdByUserId 仮想マシンの作成者のオブジェクト識別子。 string
createdDate 仮想マシンの作成日。 string
customImageId 仮想マシンのカスタム イメージ識別子。 string
disallowPublicIpAddress パブリック IP アドレスなしで仮想マシンを作成するかどうかを示します。 [bool]
environmentId この仮想マシンを含む環境のリソース ID (存在する場合)。 string
expirationDate VM の有効期限。 string
fqdn 仮想マシンの完全修飾ドメイン名。 string
galleryImageReference 仮想マシンの Microsoft Azure Marketplace イメージ 参照。 GalleryImageReference
isAuthenticationWithSshKey この仮想マシンが認証に SSH キーを使用するかどうかを示します。 [bool]
labSubnetName 仮想マシンのラボ サブネット名。 string
labVirtualNetworkId 仮想マシンのラボ仮想ネットワーク識別子。 string
networkInterface ネットワーク インターフェイスのプロパティ。 NetworkInterfaceProperties
notes 仮想マシンのメモ。 string
osType 仮想マシンの OS の種類。 string
ownerObjectId 仮想マシンの所有者のオブジェクト識別子。 string
ownerUserPrincipalName 仮想マシン所有者のユーザー プリンシパル名。 string
password 仮想マシン管理者のパスワード。 string
provisioningState リソースのプロビジョニング状態。 string
size 仮想マシンのサイズ。 string
sshKey 仮想マシン管理者の SSH キー。 string
storageType 仮想マシンに使用するストレージの種類 (Standard、Premium など)。 string
Uniqueidentifier リソースの一意の不変識別子 (Guid)。 string
userName 仮想マシンのユーザー名。 string
virtualMachineCreationSource ラボ仮想マシンの作成元に指示します。 Output プロパティのみ。 "FromCustomImage"
"FromGalleryImage"

ApplicableSchedule

名前 説明 [値]
location リソースの場所。 string
properties リソースのプロパティ。 ApplicableScheduleProperties (必須)
tags リソースのタグ。 object
location リソースの場所。 string
properties リソースのプロパティ。 ApplicableScheduleProperties (必須)
tags リソースのタグ。 object

ApplicableScheduleProperties

名前 説明
labVmsShutdown 自動シャットダウン スケジュール (ラボまたはラボ リソース レベルで設定されている場合)。 [スケジュール]
labVmsStartup 自動起動スケジュール (ラボまたはラボ リソース レベルで設定されている場合)。 [スケジュール]

スケジュール

名前 説明 [値]
location リソースの場所。 string
properties リソースのプロパティ。 ScheduleProperties (必須)
tags リソースのタグ。 object

ScheduleProperties

名前 説明
dailyRecurrence スケジュールが週の各日に 1 回行われる場合は、毎日の繰り返しを指定します。 DayDetails
hourlyRecurrence スケジュールが 1 日に複数回発生する場合は、時間単位の繰り返しを指定します。 HourDetails
notificationSettings 通知設定。 NotificationSettings
provisioningState リソースのプロビジョニング状態。 string
status スケジュールの状態 (有効、無効) "無効"
"有効"
targetResourceId スケジュールが属するリソース ID string
taskType スケジュールのタスクの種類 (LabVmsShutdownTask、LabVmAutoStart など)。 string
Timezoneid タイム ゾーン ID (太平洋標準時など)。 string
Uniqueidentifier リソースの一意の不変識別子 (Guid)。 string
weeklyRecurrence スケジュールが週の数日だけ発生する場合は、週単位の繰り返しを指定します。 WeekDetails

DayDetails

名前 説明
time スケジュールが発生する時刻。 string

HourDetails

名前 説明
minute スケジュールが実行される時間の分数。 INT

NotificationSettings

名前 説明
status このスケジュールに対して通知が有効になっている場合 (つまり、有効、無効)。 "無効"
"有効"
timeInMinutes 通知が送信されるイベントの前の時間 (分)。 INT
webhookUrl 通知の送信先となる Webhook URL。 string

WeekDetails

名前 説明
time スケジュールが発生する時刻。 string
平日 スケジュールが設定されている曜日 (日曜日、月曜日、火曜日など)。 string[]

ArtifactDeploymentStatusProperties

名前 説明
artifactsApplied 正常に適用された成果物の合計数。 INT
deploymentStatus 成果物のデプロイの状態。 string
totalArtifacts 仮適用された成果物の合計数。 INT

ArtifactInstallProperties

名前 説明
artifactId 成果物の識別子。 string
deploymentStatusMessage デプロイからのステータス メッセージ。 string
installTime 成果物が仮想マシンへのインストールを開始する時間。 string
parameters 成果物のパラメーター。 ArtifactParameterProperties[]
status 成果物の状態。 string
vmExtensionStatusMessage 仮想マシン拡張機能からのステータス メッセージ。 string

ArtifactParameterProperties

名前 説明
name 成果物パラメーターの名前。 string
value 成果物パラメーターの値。 string

ComputeVmProperties

名前 説明
dataDiskIds 仮想マシンのデータ ディスク BLOB URI を取得します。 string[]
dataDisks 仮想マシンに接続されているすべてのデータ ディスクを取得します。 ComputeDataDisk[]
networkInterfaceId 仮想マシンのネットワーク インターフェイス ID を取得します。 string
osDiskId 仮想マシンの OS ディスク BLOB URI を取得します。 string
osType 仮想マシンの OS の種類を取得します。 string
statuses 仮想マシンの状態を取得します。 ComputeVmInstanceViewStatus[]
vmSize 仮想マシンのサイズを取得します。 string

ComputeDataDisk

名前 説明
diskSizeGiB GiB のデータ ディスク サイズを取得します。 INT
diskUri BLOB でサポートされている場合は、基になる BLOB の URI。 string
managedDiskId マネージド ディスクでサポートされている場合、これはコンピューティング ディスク リソースの ID です。 string
name データ ディスク名を取得します。 string

ComputeVmInstanceViewStatus

名前 説明
code 状態コードを取得します。 string
displayStatus 状態の短いローカライズ可能なラベルを取得します。 string
message 状態に関連付けられているメッセージを取得します。 string

GalleryImageReference

名前 説明
offer ギャラリー イメージのオファー。 string
osType ギャラリー イメージの OS の種類。 string
publisher ギャラリー イメージの発行元。 string
sku ギャラリー イメージの SKU。 string
version ギャラリー イメージのバージョン。 string

NetworkInterfaceProperties

名前 説明
dnsName DNS 名。 string
privateIpAddress プライベート IP アドレス。 string
publicIpAddress パブリック IP アドレス。 string
publicIpAddressId パブリック IP アドレスのリソース ID。 string
rdpAuthority RdpAuthority プロパティは、サーバー DNS ホスト名または IP アドレスの後に RDP (リモート デスクトップ プロトコル) のサービス ポート番号が続くものです。 string
sharedPublicIpAddressConfiguration 複数の仮想マシン間でパブリック IP アドレスを共有するための構成。 SharedPublicIpAddressConfiguration
sshAuthority SshAuthority プロパティは、サーバー DNS ホスト名または IP アドレスの後に SSH のサービス ポート番号が続くものです。 string
subnetId サブネットのリソース ID。 string
virtualNetworkId 仮想ネットワークのリソース ID。 string

SharedPublicIpAddressConfiguration

名前 説明
inboundNatRules 受信 NAT 規則 InboundNatRule[]

InboundNatRule

名前 説明
backendPort 外部トラフィックがリダイレクトされるポート。 INT
frontendPort 受信接続の外部エンドポイント ポート。 指定できる値は 1 以上 65535 以下です。 指定しない場合、値は自動的に割り当てられます。 INT
transportProtocol エンドポイントのトランスポート プロトコル。 "Tcp"
"Udp"