共用方式為


使用 PowerShell 和 Azure 模組在 Azure 實驗室服務中建立實驗室

重要

Azure 實驗室服務將於 2027 年 6 月 28 日淘汰。 如需詳細資訊,請參閱淘汰指南

在本文中,您將了解如何使用 PowerShell 和 Azure 模組來建立實驗室。 實驗室會使用先前建立的實驗室計劃的設定。 如需 Azure 實驗室服務的詳細概觀,請參閱 Azure 實驗室服務簡介

必要條件

  • 具有有效訂用帳戶的 Azure 帳戶。 如尚未擁有 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

我們現在已準備好使用 Windows 11 專業版映像和 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