빠른 시작: ARM 템플릿을 사용하여 DevTest Labs에서 랩 만들기

이 빠른 시작은 ARM(Azure Resource Manager) 템플릿을 사용하여 Azure DevTest Labs에 Windows Server 2019 데이터 센터 VM(가상 머신)이 하나 있는 랩을 생성합니다.

이 빠른 시작에서 수행하는 작업은 다음과 같습니다.

  • ARM 템플릿을 검토합니다.
  • ARM 템플릿을 배포하여 랩 및 VM을 만듭니다.
  • 배포를 확인합니다.
  • 리소스를 정리합니다.

필수 조건

Azure 구독이 없는 경우, 시작하기 전에 무료 계정을 만드십시오.

템플릿 검토

Azure Resource Manager 템플릿은 프로젝트의 인프라 및 구성을 정의하는 JSON(JavaScript Object Notation) 파일입니다. 이 템플릿은 선언적 구문을 사용합니다. 배포를 만들기 위한 프로그래밍 명령 시퀀스를 작성하지 않고 의도한 배포를 설명합니다.

DevTest Labs는 랩 만들기 및 프로비저닝부터 사용자 추가에 이르기까지 많은 작업에 ARM 템플릿을 사용할 수 있습니다. 이 빠른 시작에서는 Azure 빠른 시작 템플릿 갤러리에서 클레임된 VM ARM 템플릿을 사용하여 랩 만들기를 사용합니다. 템플릿은 다음 리소스 종류를 정의합니다.

{
  "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
  "contentVersion": "1.0.0.0",
  "metadata": {
    "_generator": {
      "name": "bicep",
      "version": "0.5.6.12127",
      "templateHash": "12097184829658896385"
    }
  },
  "parameters": {
    "labName": {
      "type": "string",
      "metadata": {
        "description": "The name of the new lab instance to be created"
      }
    },
    "location": {
      "type": "string",
      "defaultValue": "[resourceGroup().location]",
      "metadata": {
        "description": "Location for all resources."
      }
    },
    "vmName": {
      "type": "string",
      "metadata": {
        "description": "The name of the vm to be created."
      }
    },
    "vmSize": {
      "type": "string",
      "defaultValue": "Standard_D4_v3",
      "metadata": {
        "description": "The size of the vm to be created."
      }
    },
    "userName": {
      "type": "string",
      "metadata": {
        "description": "The username for the local account that will be created on the new vm."
      }
    },
    "password": {
      "type": "secureString",
      "metadata": {
        "description": "The password for the local account that will be created on the new vm."
      }
    }
  },
  "variables": {
    "labSubnetName": "[format('{0}Subnet', variables('labVirtualNetworkName'))]",
    "labVirtualNetworkId": "[resourceId('Microsoft.DevTestLab/labs/virtualnetworks', parameters('labName'), variables('labVirtualNetworkName'))]",
    "labVirtualNetworkName": "[format('Dtl{0}', parameters('labName'))]"
  },
  "resources": [
    {
      "type": "Microsoft.DevTestLab/labs",
      "apiVersion": "2018-09-15",
      "name": "[parameters('labName')]",
      "location": "[parameters('location')]"
    },
    {
      "type": "Microsoft.DevTestLab/labs/virtualnetworks",
      "apiVersion": "2018-09-15",
      "name": "[format('{0}/{1}', parameters('labName'), variables('labVirtualNetworkName'))]",
      "dependsOn": [
        "[resourceId('Microsoft.DevTestLab/labs', parameters('labName'))]"
      ]
    },
    {
      "type": "Microsoft.DevTestLab/labs/virtualmachines",
      "apiVersion": "2018-09-15",
      "name": "[format('{0}/{1}', parameters('labName'), parameters('vmName'))]",
      "location": "[parameters('location')]",
      "properties": {
        "userName": "[parameters('userName')]",
        "password": "[parameters('password')]",
        "labVirtualNetworkId": "[variables('labVirtualNetworkId')]",
        "labSubnetName": "[variables('labSubnetName')]",
        "size": "[parameters('vmSize')]",
        "allowClaim": false,
        "galleryImageReference": {
          "offer": "WindowsServer",
          "publisher": "MicrosoftWindowsServer",
          "sku": "2019-Datacenter",
          "osType": "Windows",
          "version": "latest"
        }
      },
      "dependsOn": [
        "[resourceId('Microsoft.DevTestLab/labs', parameters('labName'))]",
        "[resourceId('Microsoft.DevTestLab/labs/virtualnetworks', parameters('labName'), variables('labVirtualNetworkName'))]"
      ]
    }
  ],
  "outputs": {
    "labId": {
      "type": "string",
      "value": "[resourceId('Microsoft.DevTestLab/labs', parameters('labName'))]"
    }
  }
}

Azure 빠른 시작 템플릿 갤러리Azure 빠른 시작 템플릿 공용 GitHub 리포지토리에는 몇 가지 다른 DevTest Labs ARM 빠른 시작 템플릿이 있습니다.

Azure Lab Services Community 공용 GitHub 리포지토리에는 필요에 따라 사용하거나 사용자 지정할 수 있는 많은 DevTest Labs, 아티팩트, 환경, PowerShell 스크립트, 빠른 시작 ARM 템플릿도 있습니다.

템플릿 배포

  1. 다음 Azure에 배포 단추를 선택하여 Azure Portal에 로그인하고 빠른 시작 ARM 템플릿을 엽니다.

    Button to deploy the Resource Manager template to Azure.

  2. 클레임된 VM을 사용하여 Azure DevTest Labs에서 랩 만들기 화면에서 다음 항목을 완료합니다.

    • 리소스 그룹: 드롭다운 목록에서 기존 리소스 그룹을 선택하거나 나중에 쉽게 정리할 수 있도록 새 리소스 그룹을 만듭니다.
    • 지역: 새 리소스 그룹을 만든 경우 리소스 그룹 및 랩의 위치를 선택합니다.
    • 랩 이름: 새 랩의 이름을 입력합니다.
    • Vm 이름: 새 VM의 이름을 입력합니다.
    • 사용자 이름: VM에 액세스할 수 있는 사용자의 이름을 입력합니다.
    • 암호: VM 사용자의 암호를 입력합니다.
  3. 검토 + 만들기를 선택하고 유효성 검사를 통과하면 만들기를 선택합니다.

    Screenshot of the Create a lab page.

  4. 배포하는 동안 화면 맨 위에 있는 알림 아이콘을 선택하여 템플릿 개요 페이지에서 배포 진행률을 확인할 수 있습니다. 특히 VM을 만드는 배포에는 시간이 걸립니다.

배포 유효성 검사

  1. 배포가 완료되면 템플릿 개요 페이지 또는 알림에서 리소스 그룹으로 이동을 선택합니다.

    Screenshot that shows deployment complete and the Go to resource group button.

  2. 리소스 그룹 페이지에는 랩과 가상 네트워크 및 VM 같은 종속 리소스를 포함하는 리소스 그룹의 리소스가 나열됩니다. DevTest Lab 리소스를 선택하여 랩의 개요 페이지로 이동합니다.

    Screenshot of resource group overview.

  3. 개요 페이지에 있는 내 가상 머신에서 VM을 확인할 수 있습니다.

    Screenshot that shows the lab Overview page with the virtual machine.

참고 항목

또한 배포는 VM에 대한 리소스 그룹을 만듭니다. 리소스 그룹에는 IP 주소, 네트워크 인터페이스 및 디스크와 같은 VM 리소스가 포함됩니다. 리소스 그룹은 <랩 이름>-<vm 이름>-<숫자 문자열> 이름을 사용하여 구독의 리소스 그룹 목록에 나타납니다.

리소스 정리

이러한 랩 리소스 사용을 완료하면 추가 요금이 발생하지 않도록 해당 리소스를 삭제합니다. 랩이 있는 리소스 그룹은 삭제할 수 없으므로 먼저 랩을 삭제합니다.

  1. 랩 개요 페이지의 상단 메뉴에서 삭제를 선택합니다.

    Screenshot of lab delete button.

  2. 정말로 삭제하시겠습니까? 페이지에서 랩 이름을 입력한 다음 삭제를 선택합니다.

    삭제하는 동안 화면 위쪽에서 알림을 선택하여 진행 상황을 볼 수 있습니다. 랩을 삭제하는 데 시간이 걸립니다.

이제 랩이 포함된 리소스 그룹을 삭제하여 리소스 그룹의 모든 리소스를 삭제할 수 있습니다.

  1. 구독의 리소스 그룹 목록에서 랩이 포함된 리소스 그룹을 선택합니다.

  2. 페이지 위쪽에서 리소스 그룹 삭제를 선택합니다.

  3. “<리소스 그룹 이름>”을 정말로 삭제하시겠습니까? 페이지에서 리소스 그룹 이름을 입력한 다음, 삭제를 선택합니다.

다음 단계

이 빠른 시작에서는 Windows VM이 있는 랩을 만들었습니다. 랩 VM에 연결하고 관리하는 방법을 알아보려면 다음 자습서를 참조하세요.