Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
I den här artikeln får du lära dig hur du använder Python och Azure Python SDK för att skapa en labbplan. Labbplaner används när du skapar labb för Azure Lab Services. Du lägger också till en rolltilldelning så att en lärare kan skapa labb baserat på labbplanen. En översikt över Azure Lab Services finns i En introduktion till Azure Lab Services.
Förutsättningar
- Ett Azure-konto med en aktiv prenumeration. Om du inte har någon Azure-prenumeration skapar du ett kostnadsfritt konto innan du börjar.
- Ett Azure-konto med behörighet att hantera ett labb, till exempel rollen Labbskapare, ägare, deltagare eller Lab Services-deltagare i Azure RBAC. Läs mer om inbyggda roller och tilldelningsomfång för Azure Lab Services.
- Konfigurera lokal Python-utvecklingsmiljö för Azure.
- Requirements.txt kan laddas ned från Azure Python-exempel
Skapa en labbplan
Följande steg visar hur du skapar en labbplan. Alla egenskaper som anges i labbplanen används i labb som skapats med den här planen.
# --------------------------------------------------------------------------
# Copyright (c) Microsoft Corporation. All rights reserved.
# Licensed under the MIT License. See License.txt in the project root for
# license information.
# --------------------------------------------------------------------------
import os
import time
from datetime import timedelta
from azure.identity import DefaultAzureCredential
from azure.mgmt.labservices import LabServicesClient
from azure.mgmt.resource import ResourceManagementClient
def main():
SUBSCRIPTION_ID = "<Subscription ID>"
TIME = str(time.time()).replace('.','')
GROUP_NAME = "BellowsCollege_rg"
LABPLAN = "BellowsCollege_labplan"
LAB = "BellowsCollege_lab"
LOCATION = 'southcentralus'
# Create clients
# # For other authentication approaches, please see: https://pypi.org/project/azure-identity/
resource_client = ResourceManagementClient(
credential=DefaultAzureCredential(),
subscription_id=SUBSCRIPTION_ID
)
labservices_client = LabServicesClient(
credential=DefaultAzureCredential(),
subscription_id=SUBSCRIPTION_ID
)
# Create resource group
resource_client.resource_groups.create_or_update(
GROUP_NAME,
{"location": LOCATION}
)
# Create lab services lab plan
LABPLANBODY = {
"location" : LOCATION,
"properties" : {
"defaultConnectionProfile" : {
"webSshAccess" : "None",
"webRdpAccess" : "None",
"clientSshAccess" : "None",
"clientRdpAccess" : "Public"
},
"defaultAutoShutdownProfile" : {
"shutdownOnDisconnect" : "Disabled",
"shutdownWhenNotConnected" : "Disabled",
"shutdownOnIdle" : "None"
},
"allowedRegions" : [LOCATION],
"supportInfo" : {
"email" : "user@bellowscollege.com",
"phone" : "123-123-1234",
"instructions" : "Bellows College support."
}
}
}
#Create Lab Plan
poller = labservices_client.lab_plans.begin_create_or_update(
GROUP_NAME,
LABPLAN,
LABPLANBODY
)
# Poll for long running execution.
labplan_result = poller.result()
print(f"Created Lab Plan: {labplan_result.name}")
# Get LabServices Lab Plans by resource group
labservices_client.lab_plans.list_by_resource_group(
GROUP_NAME
)
#Get single LabServices Lab Plan
labservices_labplan = labservices_client.lab_plans.get(GROUP_NAME, LABPLAN)
if __name__ == "__main__":
main()
Rensa resurser
Om du inte fortsätter att använda det här programmet tar du bort labbet med följande steg:
# --------------------------------------------------------------------------
# Copyright (c) Microsoft Corporation. All rights reserved.
# Licensed under the MIT License. See License.txt in the project root for
# license information.
# --------------------------------------------------------------------------
from datetime import timedelta
import time
from azure.identity import DefaultAzureCredential
from azure.mgmt.labservices import LabServicesClient
from azure.mgmt.resource import ResourceManagementClient
# - other dependence -
# - end -
#
def main():
SUBSCRIPTION_ID = "<Subscription ID>"
TIME = str(time.time()).replace('.','')
GROUP_NAME = "BellowsCollege_rg" + TIME
LABPLAN = "BellowsCollege_labplan" + TIME
LAB = "BellowsCollege_lab" + TIME
LOCATION = 'southcentralus'
# Create clients
# # For other authentication approaches, please see: https://pypi.org/project/azure-identity/
resource_client = ResourceManagementClient(
credential=DefaultAzureCredential(),
subscription_id=SUBSCRIPTION_ID
)
labservices_client = LabServicesClient(
credential=DefaultAzureCredential(),
subscription_id=SUBSCRIPTION_ID
)
# Delete Lab
labservices_client.labs.begin_delete(
GROUP_NAME,
LAB
).result()
print("Deleted lab.\n")
# Delete Group
resource_client.resource_groups.begin_delete(
GROUP_NAME
).result()
if __name__ == "__main__":
main()
Nästa steg
I den här artikeln har du skapat en resursgrupp och en labbplan. Som administratör kan du lära dig mer om Azure PowerShell-modulen och Az.LabServices-cmdletar.