Créer un labo dans Azure Lab Services à l’aide de PowerShell et des modules Azure
Important
Azure Lab Services sera mis hors service le 28 juin 2027. Pour plus d’informations, consultez le guide de mise hors service.
Dans cet article, vous allez découvrir comment créer un labo à l’aide de PowerShell et des modules Azure. Le labo utilise les paramètres d’un plan de labo créé précédemment. Pour obtenir une vue d’ensemble détaillée d’Azure Lab Services, consultez Présentation d’Azure Lab Services.
Prérequis
- Compte Azure avec un abonnement actif. Si vous n’avez pas d’abonnement Azure, créez un compte gratuit avant de commencer.
- Un compte Azure avec autorisation de gérer un labo, tel que le rôle Azure RBAC Créateur de labo, Propriétaire, Contributeur ou Contributeur Lab Services. En savoir plus sur les Rôles intégrés et les étendues d’affectation Azure Lab Services.
- Un plan de labo Azure. Si vous n’avez pas encore de plan de labo, suivez la procédure dans Démarrage rapide : Configurer des ressources pour créer des labos.
Module Azure Az PowerShell. Doit être de version 7.2 ou ultérieure.
Install-Module 'Az'
Module Az.LabServices PowerShell.
Install-Module 'Az.LabServices'
Plan Lab. Pour créer un plan de labo, consultez Créer un plan de labo à l’aide de PowerShell et des modules Azure.
Exécutez Connect-AzAccount pour vous connecter à Azure et vérifier que l’abonnement est actif.
Création d’un laboratoire
Avant de pouvoir créer un labo, vous avez besoin de la ressource de plan de labo. L’article Créer un plan de labo à l’aide de PowerShell vous explique comment créer un plan de labo nommé ContosoLabPlan
dans un groupe de ressources nommé MyResourceGroup
.
$plan = Get-AzLabServicesLabPlan `
-Name "ContosoLabPlan" `
-ResourceGroupName "MyResourceGroupName"
Nous devons également choisir une image de base pour les machines virtuelles de laboratoire à partir des images disponibles pour le plan de laboratoire. Voyons ce qui est disponible.
$plan | Get-AzLabServicesPlanImage | Where-Object { $_.EnabledState.ToString() -eq "enabled" }
Nous allons choisir l’image de Windows 11.
$image = $plan | Get-AzLabServicesPlanImage | Where-Object { $_.EnabledState.ToString() -eq "enabled" -and $_.DisplayName -eq "Windows 11 Pro (Gen2)" }
Lorsque vous créez un lab à l’aide de PowerShell, vous devez également fournir les informations sur la référence SKU de la ressource. La commande suivante utilise l’API REST pour récupérer la liste des références SKU et sélectionne la référence SKU Classic_Fsv2_4_8GB_128_S_SSD
:
$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
Nous sommes maintenant prêts à créer un laboratoire basé sur notre plan lab avec l’image de Windows 11 Pro et le SKU de ressource Classic_Fsv2_4_8GB_128_S_SSD
. La commande suivante crée un labo à l’aide du plan lab créé ci-dessus.
# $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
Nettoyer les ressources
Si vous ne comptez pas continuer à utiliser cette application, supprimez le plan et le laboratoire en effectuant les étapes suivantes :
$lab | Remove-AzLabServicesLab
Plus d’informations
En tant qu’administrateur, vous pouvez en savoir plus sur le module Azure PowerShell et les applets de commande Az.LabServices.