> azure-lab-services

Expert knowledge for Azure Lab Services development including troubleshooting, best practices, decision making, architecture & design patterns, limits & quotas, security, configuration, integrations & coding patterns, and deployment. Use when building, debugging, or optimizing Azure Lab Services applications. Not for Azure DevTest Labs (use azure-devtest-labs), Azure Virtual Machines (use azure-virtual-machines), Azure Virtual Desktop (use azure-virtual-desktop).

fetch
$curl "https://skillshub.wtf/MicrosoftDocs/Agent-Skills/azure-lab-services?format=md"
SKILL.mdazure-lab-services

Azure Lab Services Skill

This skill provides expert guidance for Azure Lab Services. Covers troubleshooting, best practices, decision making, architecture & design patterns, limits & quotas, security, configuration, integrations & coding patterns, and deployment. It combines local quick-reference content with remote documentation fetching capabilities.

How to Use This Skill

IMPORTANT for Agent: Use the Category Index below to locate relevant sections. For categories with line ranges (e.g., L35-L120), use read_file with the specified lines. For categories with file links (e.g., [security.md](security.md)), use read_file on the linked reference file

IMPORTANT for Agent: If metadata.generated_at is more than 3 months old, suggest the user pull the latest version from the repository. If mcp_microsoftdocs tools are not available, suggest the user install it: Installation Guide

This skill requires network access to fetch documentation content:

  • Preferred: Use mcp_microsoftdocs:microsoft_docs_fetch with query string from=learn-agent-skill. Returns Markdown.
  • Fallback: Use fetch_webpage with query string from=learn-agent-skill&accept=text/markdown. Returns Markdown.

Category Index

CategoryLinesDescription
TroubleshootingL37-L44Diagnosing and fixing VM access, connectivity, deployment, and lab-creation issues in Azure Lab Services, including when to redeploy or reimage VMs.
Best PracticesL45-L53Governance and setup guidance for lab plans, custom images, nested virtualization, Linux graphical RDP, and preparing optimized Windows template VMs in Azure Lab Services
Decision MakingL54-L65Guidance on when and how to use Azure Lab Services: choosing lab types, planning migrations (physical or to other services), cost estimation, GPU sizing, and running training or hackathon scenarios.
Architecture & Design PatternsL66-L72Core Azure Lab Services architecture, supported networking topologies, and design patterns for building reliable, resilient lab environments and lab plans
Limits & QuotasL73-L80VM capacity and core quotas for labs, how to view usage, request quota increases, and timelines for automatic VM deletion and cleanup.
SecurityL81-L95RBAC roles, lab creator/owner assignment, Azure Policy for compliance and VM size limits, firewall and public IP setup, and educator/student VM password management.
ConfigurationL96-L126Configuring Azure Lab Services: lab plans, regions, images, networking, VM templates, schedules (start/stop/shutdown), capacity, GPU/nested virtualization, and user/educator access.
Integrations & Coding PatternsL127-L140Integrating Lab Services with Canvas and Teams, automating lab creation via Bicep/PowerShell/Python, connecting labs to VNets, and remote access to Linux VMs with X2Go.
DeploymentL141-L150Creating and importing Windows/Linux lab VM images (from Azure VMs, physical labs, or compute galleries), rapidly setting up/publishing labs, and migrating lab accounts to lab plans.

Troubleshooting

TopicURL
Troubleshoot Azure Lab Services VMs by redeploying or reimaginghttps://learn.microsoft.com/en-us/azure/lab-services/how-to-reset-and-redeploy-vm
Troubleshoot access problems for Azure Lab Services VMshttps://learn.microsoft.com/en-us/azure/lab-services/troubleshoot-access-lab-vm
Troubleshoot connectivity issues in Azure Lab Serviceshttps://learn.microsoft.com/en-us/azure/lab-services/troubleshoot-connect-lab-vm
Troubleshoot Azure Lab Services lab creation issueshttps://learn.microsoft.com/en-us/azure/lab-services/troubleshoot-lab-creation

Best Practices

TopicURL
Administer lab plans and governance for Lab Serviceshttps://learn.microsoft.com/en-us/azure/lab-services/administrator-guide
Recommended approaches for Azure Lab custom imageshttps://learn.microsoft.com/en-us/azure/lab-services/approaches-for-custom-image-creation
Configure nested virtualization in Azure Lab Serviceshttps://learn.microsoft.com/en-us/azure/lab-services/concept-nested-virtualization-template-vm
Enable graphical remote desktop for Linux labs with optimal performancehttps://learn.microsoft.com/en-us/azure/lab-services/how-to-enable-remote-desktop-linux
Best practices for preparing Windows lab templateshttps://learn.microsoft.com/en-us/azure/lab-services/how-to-prepare-windows-template

Decision Making

TopicURL
Use Azure Lab Services for training scenarioshttps://learn.microsoft.com/en-us/azure/lab-services/classroom-labs-scenarios
Choose between lab accounts and lab planshttps://learn.microsoft.com/en-us/azure/lab-services/concept-lab-accounts-versus-lab-plans
Plan migration from physical labs to Azure Lab Serviceshttps://learn.microsoft.com/en-us/azure/lab-services/concept-migrating-physical-labs
Estimate and analyze Azure Lab Services costshttps://learn.microsoft.com/en-us/azure/lab-services/cost-management-guide
Run hackathons using Azure Lab Services environmentshttps://learn.microsoft.com/en-us/azure/lab-services/hackathon-labs
Choose and configure GPU VM sizes for Azure labshttps://learn.microsoft.com/en-us/azure/lab-services/how-to-setup-lab-gpu
Plan migration before Azure Lab Services retirementhttps://learn.microsoft.com/en-us/azure/lab-services/retirement-guide
Decide when to transition from Azure Lab Services to DevTest Labshttps://learn.microsoft.com/en-us/azure/lab-services/transition-devtest-labs-guidance

Architecture & Design Patterns

TopicURL
Understand Azure Lab Services architecture fundamentalshttps://learn.microsoft.com/en-us/azure/lab-services/classroom-labs-fundamentals
Select supported networking architectures for lab planshttps://learn.microsoft.com/en-us/azure/lab-services/concept-lab-services-supported-networking-scenarios
Understand reliability and resiliency in Azure Lab Serviceshttps://learn.microsoft.com/en-us/azure/lab-services/reliability-in-azure-lab-services

Limits & Quotas

TopicURL
Review VM capacity limits and quotas for labshttps://learn.microsoft.com/en-us/azure/lab-services/capacity-limits
Determine Azure Lab Services quota and core usagehttps://learn.microsoft.com/en-us/azure/lab-services/how-to-determine-your-quota-usage
Request Azure Lab Services core quota increaseshttps://learn.microsoft.com/en-us/azure/lab-services/how-to-request-capacity-increase
Understand automatic VM deletion policy timelineshttps://learn.microsoft.com/en-us/azure/lab-services/vm-deletion-policy

Security

TopicURL
Assign Lab Creator role in Azure Lab Serviceshttps://learn.microsoft.com/en-us/azure/lab-services/add-lab-creator
Enforce Azure Lab Services compliance with Azure Policyhttps://learn.microsoft.com/en-us/azure/lab-services/azure-polices-for-lab-services
Use Azure RBAC roles with Azure Lab Serviceshttps://learn.microsoft.com/en-us/azure/lab-services/concept-lab-services-role-based-access-control
Map role assignments from lab accounts to lab planshttps://learn.microsoft.com/en-us/azure/lab-services/concept-migrate-from-lab-accounts-roles
Assign Lab Creator role for Azure Lab Services accountshttps://learn.microsoft.com/en-us/azure/lab-services/how-to-add-lab-creator
Add additional lab owners in Azure Lab Serviceshttps://learn.microsoft.com/en-us/azure/lab-services/how-to-add-user-lab-owner
Determine lab VM public IPs for firewall configurationhttps://learn.microsoft.com/en-us/azure/lab-services/how-to-configure-firewall-settings
Configure firewall rules for Azure Lab Services lab VMshttps://learn.microsoft.com/en-us/azure/lab-services/how-to-configure-firewall-settings-1
Set and reset lab VM passwords as an educatorhttps://learn.microsoft.com/en-us/azure/lab-services/how-to-set-virtual-machine-passwords
Students resetting passwords for Azure Lab Services VMshttps://learn.microsoft.com/en-us/azure/lab-services/how-to-set-virtual-machine-passwords-student
Restrict Azure Lab VM sizes using Azure Policyhttps://learn.microsoft.com/en-us/azure/lab-services/how-to-use-restrict-allowed-virtual-machine-sku-sizes-policy

Configuration

TopicURL
Allow lab creators to choose lab locations in Azure Lab Serviceshttps://learn.microsoft.com/en-us/azure/lab-services/allow-lab-creator-pick-lab-location
Configure allowed regions for Azure Lab Services labshttps://learn.microsoft.com/en-us/azure/lab-services/create-and-configure-labs-admin
Attach or detach Azure compute galleries to lab planshttps://learn.microsoft.com/en-us/azure/lab-services/how-to-attach-detach-shared-image-gallery
Attach or detach Shared Image Gallery to Azure Lab Services accountshttps://learn.microsoft.com/en-us/azure/lab-services/how-to-attach-detach-shared-image-gallery-1
Configure auto-shutdown policies for Azure Lab planshttps://learn.microsoft.com/en-us/azure/lab-services/how-to-configure-auto-shutdown-lab-plans
Configure automatic VM shutdown for Azure Lab Services accountshttps://learn.microsoft.com/en-us/azure/lab-services/how-to-configure-lab-accounts
Connect lab plans to virtual networks with VNET injectionhttps://learn.microsoft.com/en-us/azure/lab-services/how-to-connect-vnet-injection
Create Azure Lab Services labs with shared resourceshttps://learn.microsoft.com/en-us/azure/lab-services/how-to-create-a-lab-with-shared-resource-1
Define lab plans with Bicep or ARM templateshttps://learn.microsoft.com/en-us/azure/lab-services/how-to-create-lab-plan-bicep
Create a lab plan using Azure PowerShellhttps://learn.microsoft.com/en-us/azure/lab-services/how-to-create-lab-plan-powershell
Programmatically create lab plans using Python SDKhttps://learn.microsoft.com/en-us/azure/lab-services/how-to-create-lab-plan-python
Create and manage Azure Lab Services VM templateshttps://learn.microsoft.com/en-us/azure/lab-services/how-to-create-manage-template
Configure automatic start/stop schedules for lab VMshttps://learn.microsoft.com/en-us/azure/lab-services/how-to-create-schedules
Enable nested virtualization in Azure Lab Services templateshttps://learn.microsoft.com/en-us/azure/lab-services/how-to-enable-nested-virtualization-template-vm-using-script
Configure automatic shutdown on user disconnect for labshttps://learn.microsoft.com/en-us/azure/lab-services/how-to-enable-shutdown-disconnect
Create, view, and delete Azure Lab Services lab planshttps://learn.microsoft.com/en-us/azure/lab-services/how-to-manage-lab-plans
Configure and manage Azure Lab Services users and usage hourshttps://learn.microsoft.com/en-us/azure/lab-services/how-to-manage-lab-users
Manage Azure Lab Services VM pool capacity and stateshttps://learn.microsoft.com/en-us/azure/lab-services/how-to-manage-vm-pool
Set up GPU-based labs in Azure Lab Serviceshttps://learn.microsoft.com/en-us/azure/lab-services/how-to-setup-lab-gpu-1
Configure Windows lab VMs to prevent OS-level shutdownhttps://learn.microsoft.com/en-us/azure/lab-services/how-to-windows-shutdown
Allow educators to access student VMs in Azure labshttps://learn.microsoft.com/en-us/azure/lab-services/instructor-access-virtual-machines
Configure support contact information for Azure lab accountshttps://learn.microsoft.com/en-us/azure/lab-services/lab-account-owner-support-information
Quickly configure a lab plan for your schoolhttps://learn.microsoft.com/en-us/azure/lab-services/lab-plan-setup-guide
Azure Policy built-in definitions for Azure Lab Serviceshttps://learn.microsoft.com/en-us/azure/lab-services/policy-reference
Configure allowed Azure Marketplace images for labshttps://learn.microsoft.com/en-us/azure/lab-services/specify-marketplace-images
Specify allowed Marketplace images for Azure Lab Services labshttps://learn.microsoft.com/en-us/azure/lab-services/specify-marketplace-images-1
Configure advanced networking for Azure Lab Serviceshttps://learn.microsoft.com/en-us/azure/lab-services/tutorial-create-lab-with-advanced-networking

Integrations & Coding Patterns

TopicURL
Connect to Linux lab VMs using X2Gohttps://learn.microsoft.com/en-us/azure/lab-services/connect-virtual-machine-linux-x2go
Configure Canvas LMS integration with Azure Lab Serviceshttps://learn.microsoft.com/en-us/azure/lab-services/how-to-configure-canvas-for-lab-plans
Configure Microsoft Teams integration with Azure Lab Serviceshttps://learn.microsoft.com/en-us/azure/lab-services/how-to-configure-teams-for-lab-plans
Connect Azure Lab Services labs to peer virtual networkshttps://learn.microsoft.com/en-us/azure/lab-services/how-to-connect-peer-virtual-network
Provision Azure Lab Services labs with Bicep templateshttps://learn.microsoft.com/en-us/azure/lab-services/how-to-create-lab-bicep
Create Azure Lab Services labs using PowerShell Az modulehttps://learn.microsoft.com/en-us/azure/lab-services/how-to-create-lab-powershell
Create Azure Lab Services labs using the Python SDKhttps://learn.microsoft.com/en-us/azure/lab-services/how-to-create-lab-python
Integrate Azure Lab Services with Canvas LMShttps://learn.microsoft.com/en-us/azure/lab-services/lab-services-within-canvas-overview
Integrate Azure Lab Services with Microsoft Teamshttps://learn.microsoft.com/en-us/azure/lab-services/lab-services-within-teams-overview
Use the Az.LabServices PowerShell module for Azure Lab Serviceshttps://learn.microsoft.com/en-us/azure/lab-services/reference-powershell-module

Deployment

TopicURL
Import Linux custom images from Azure VMs into labshttps://learn.microsoft.com/en-us/azure/lab-services/how-to-bring-custom-linux-image-azure-vm
Import Linux images from physical labs into Azure Lab Serviceshttps://learn.microsoft.com/en-us/azure/lab-services/how-to-bring-custom-linux-image-vhd
Create Azure Lab Services labs from Windows VM imageshttps://learn.microsoft.com/en-us/azure/lab-services/how-to-bring-custom-windows-image-azure-vm
Migrate Azure Lab Services accounts to lab planshttps://learn.microsoft.com/en-us/azure/lab-services/how-to-migrate-lab-acounts-to-lab-plans
Use Azure compute galleries to provide lab VM imageshttps://learn.microsoft.com/en-us/azure/lab-services/how-to-use-shared-image-gallery
Rapidly create and publish a lab for studentshttps://learn.microsoft.com/en-us/azure/lab-services/setup-guide
Import Windows images from physical labs into Azure Lab Serviceshttps://learn.microsoft.com/en-us/azure/lab-services/upload-custom-image-shared-image-gallery

> related_skills --same-repo

> azure-well-architected

Expert guidance for designing, assessing, and optimizing Azure workloads using Azure Well Architected. Covers design review checklists, recommendations, design principles, tradeoffs, service guides, workload patterns, and assessment questions. Use when architecting new solutions, reviewing existing workloads, or applying Well-Architected principles.

> azure-web-pubsub

Expert knowledge for Azure Web PubSub development including troubleshooting, best practices, decision making, architecture & design patterns, limits & quotas, security, configuration, integrations & coding patterns, and deployment. Use when building, debugging, or optimizing Azure Web PubSub applications. Not for Azure SignalR Service (use azure-signalr-service), Azure Event Hubs (use azure-event-hubs), Azure Service Bus (use azure-service-bus), Azure Relay (use azure-relay).

> azure-web-application-firewall

Expert knowledge for Azure Web Application Firewall development including troubleshooting, best practices, decision making, architecture & design patterns, limits & quotas, security, configuration, integrations & coding patterns, and deployment. Use when building, debugging, or optimizing Azure Web Application Firewall applications. Not for Azure Application Gateway (use azure-application-gateway), Azure Front Door (use azure-front-door), Azure Firewall (use azure-firewall), Azure DDos Protectio

> azure-vpn-gateway

Expert knowledge for Azure VPN Gateway development including troubleshooting, best practices, decision making, architecture & design patterns, limits & quotas, security, configuration, integrations & coding patterns, and deployment. Use when building, debugging, or optimizing Azure VPN Gateway applications. Not for Azure Virtual Network (use azure-virtual-network), Azure Virtual WAN (use azure-virtual-wan), Azure ExpressRoute (use azure-expressroute), Azure Application Gateway (use azure-applica

┌ stats

installs/wk0
░░░░░░░░░░
github stars425
██████████
first seenMar 17, 2026
└────────────

┌ repo

MicrosoftDocs/Agent-Skills
by MicrosoftDocs
└────────────

┌ tags

└────────────