PowerShell 및 Azure 모듈을 사용하여 Azure Lab Services에서 랩 만들기
Important
Azure Lab Services는 2027년 6월 28일에 사용 중지됩니다. 자세한 내용은 사용 중지 가이드를 참조하세요.
이 문서에서는 PowerShell 및 Azure 모듈을 사용하여 랩을 만드는 방법을 알아봅니다. 랩은 이전에 만들어진 랩 계획의 설정을 사용합니다. Azure Lab Services에 대한 자세한 개요는 Azure Lab Services 소개를 참조하세요.
필수 조건
- 활성 구독이 있는 Azure 계정. Azure 구독이 아직 없는 경우 시작하기 전에 체험 계정을 만듭니다.
- 랩 작성자, 소유자, 기여자또는 Lab Services 기여자 Azure RBAC 역할과 같은 랩을 관리할 수 있는 권한이 있는 Azure 계정입니다. Azure Lab Services 기본 제공 역할 및 할당 범위에 대해 자세히 알아봅니다.
- Azure 랩 플랜입니다. 랩 플랜이 아직 없는 경우 빠른 시작: 랩을 만들 리소스 설정 단계를 따릅니다.
Azure Az PowerShell 모듈. 버전 7.2 이상이어야 합니다.
Install-Module 'Az'
-
Install-Module 'Az.LabServices'
랩 계획 랩 계획을 만들려면 PowerShell 및 Azure 모듈을 사용하여 랩 계획 만들기를 참조하세요.
Connect-AzAccount를 실행하여 Azure에 로그인하고 활성 구독을 확인합니다.
랩 만들기
랩을 만들려면 먼저 랩 계획 리소스가 필요합니다. PowerShell을 사용하여 랩 계획 만들기에서는 MyResourceGroup
이라는 리소스 그룹에서 ContosoLabPlan
이라는 랩 계획을 만드는 방법을 알아봅니다.
$plan = Get-AzLabServicesLabPlan `
-Name "ContosoLabPlan" `
-ResourceGroupName "MyResourceGroupName"
또한 랩 계획에 사용 가능한 이미지에서 랩 VM에 대한 기본 이미지를 선택해야 합니다. 사용 가능한 내용을 살펴보겠습니다.
$plan | Get-AzLabServicesPlanImage | Where-Object { $_.EnabledState.ToString() -eq "enabled" }
Windows 11 이미지를 선택합니다.
$image = $plan | Get-AzLabServicesPlanImage | Where-Object { $_.EnabledState.ToString() -eq "enabled" -and $_.DisplayName -eq "Windows 11 Pro (Gen2)" }
PowerShell을 사용하여 랩을 만들 때 리소스 SKU 정보도 제공해야 합니다. 다음 명령은 REST API를 사용하여 SKU 목록을 검색하고 Classic_Fsv2_4_8GB_128_S_SSD
SKU를 선택합니다.
$subscriptionId = (Get-AzContext).Subscription.ID
$skus = (Invoke-AzRestMethod -Uri https://management.azure.com/subscriptions/$subscriptionId/providers/Microsoft.LabServices/skus?api-version=2022-08-01 | Select-Object -Property "Content" -ExpandProperty Content | ConvertFrom-Json).value
$sku = $skus | Where-Object -Property "name" -eq "Classic_Fsv2_4_8GB_128_S_SSD" | select-object -First 1
이제 Window 11 Pro 이미지 및 Classic_Fsv2_4_8GB_128_S_SSD
리소스 SKU를 사용하여 랩 플랜을 기반으로 랩을 만들 준비가 되었습니다. 다음 명령은 위에서 만든 랩 계획을 사용하여 랩을 만듭니다.
# $plan and $image are from the Create LabPlan QuickStart.
$password = "<custom password>"
$lab = New-AzLabServicesLab -Name "ContosoLab" `
-ResourceGroupName "MyResourceGroup" `
-Location "westus" `
-LabPlanId $plan.Id `
-AdminUserPassword (ConvertTo-SecureString $password -AsPlainText -Force) `
-AdminUserUsername "adminUser" `
`
-AutoShutdownProfileShutdownOnDisconnect Enabled `
-AutoShutdownProfileDisconnectDelay $(New-Timespan) `
-AutoShutdownProfileShutdownOnIdle "LowUsage" `
-AutoShutdownProfileIdleDelay $(New-TimeSpan -Minutes 15) `
-AutoShutdownProfileShutdownWhenNotConnected Disabled `
-AutoShutdownProfileNoConnectDelay $(New-TimeSpan -Minutes 15) `
`
-ConnectionProfileClientRdpAccess Public `
-ConnectionProfileClientSshAccess None `
-ConnectionProfileWebRdpAccess None `
-ConnectionProfileWebSshAccess None `
-SecurityProfileOpenAccess Disabled `
`
-ImageReferenceOffer $image.Offer `
-ImageReferencePublisher $image.Publisher `
-ImageReferenceSku $image.Sku `
-ImageReferenceVersion $image.Version `
-SkuCapacity 1 `
-SkuName $sku.size `
`
-Title "Contoso Lab" `
-Description "The Contoso lab" `
-AdditionalCapabilityInstallGpuDriver Disabled `
-VirtualMachineProfileCreateOption "TemplateVM" `
-VirtualMachineProfileUseSharedPassword Enabled
리소스 정리
이 애플리케이션을 계속 사용하지 않으려면 다음 단계에 따라 계획 및 랩을 삭제합니다.
$lab | Remove-AzLabServicesLab
자세한 정보
관리자로서 Azure PowerShell 모듈 및 Az.LabServices cmdlet에 대해 자세히 알아볼 수 있습니다.