- 13 Sep 2024
- 5 Minutes to read
- Print
Create & Configure Labs (Lab Developer)
- Updated on 13 Sep 2024
- 5 Minutes to read
- Print
Creating & configuring labs is Skillable Studio first and primary goal as a platform, with countless tools and options to accomplish that goal. Lab developers create & modify labs and the various Skillable Studio components, such as VM profiles and resource templates, that make up a lab definition. When a user has the Azure Lab Developer role in Skillable Studio, they can do the following activities:
Publish Lab Series to the API.
View, create and edit lab profiles from lab templates or from scratch.
View, create and edit VM profiles that align to an Azure Marketplace or Compute Gallery image.
View, create and edit ARM templates that deploy additional lab resources beyond VMs.
View, create and edit Access Control Policies that control costs and what the user is able to deploy.
View, create and edit lab instructions.
View and assign cloud subscriptions to labs
View and assign evaluations to labs
Import lab definitions exported from Azure.
Skillable Studio Documentation
The topics on this page and within this section have been tailored as the most relevant for customers transitioning from Azure Labs Services. For both a broader platform overview and specifics on more features, see the Skillable Studio documentation.
Key Terminology
As you get started using Skillable Studio for lab building there a number of terms you will come across that may or may not be familiar. Below are a few of the most important ones as you build labs on Azure:
Term | Definition |
---|---|
Template Gallery | The template gallery allows lab developers to easily search for and select pre-created lab profile templates to use as the base for a new lab. |
Lab Series | A Lab Series is a container that holds one or more Lab Profiles. The Lab Series contains Lab Profiles and settings for the Lab Series. It is like the cover of a book, while the Lab Profiles are like the chapters within the book. |
Lab Profile | Labs in Skillable Studio are housed or defined in a Lab Profile. The Lab Profile contains the information about the configurable settings and the virtual machines or cloud components that make up a lab. For a Lab Profile to be published it must be part of a Lab Series. |
Virtual Machine Profile | A Virtual Machine profile represents the configuration a virtual machine will have when it is deployed. Base settings would include CPU/RAM, VM Image or hard disks, and network adapters. |
Lab Client | The interface that the user sees as they work in a lab. The interface is presented in a HTML5 compatible browser window and normally contains two sections. One section presents the environment the Learner will interact with, and the second section contains instructions and other resources to guide the learner. |
Lab Instance | The individual occurrence of a lab profile launch. Each lab instance is unique for each lab launch, and all details related to the lab launch are displayed on the lab instance details. |
Cloud Slice | Cloud Slice is the term for the complete Skillable feature-set that enables you to take a cloud subscription (one of yours or one of ours) and divide it up to provide numerous individual users one or more dedicated cloud resources (virtual machines, networks, databases, websites, etc.). |
Cloud Subscription Pool | Cloud Subscription Pools are used by labs to provision Cloud Slices in a load balanced fashion to ensure optimal ability to scale. Even if you are only using one managed Cloud Subscription, you still must create a Cloud Subscription Pool. This setup allows you to add additional subscriptions to your subscription pool as needed with no modifications to the labs themselves. |
Resource Template | Resource Templates are JSON definitions used to deploy resources in Azure. |
Access Control Policy (ACP) | An Access Control Policy is a JSON Azure Policy Definition applied to a cloud lab to limit the resources that can be provisioned within the environment. This prevents additional cloud costs by preventing users from creating resources that are not relevant to the content and/or outside the scope of the lab. |
Skillable Studio Object Hierarchy
As outlined in the Key Terminology above, there are a number of various objects in studio. While they are all important, when it comes to the fundamentals of Skillable Studio four are more important than any other: Organizations, Lab Profiles, Lab Series, & Lab Instances. The below outlines the hierarchical relation of each of these objects and their purposes.
Organization
Customer or group (hierarchical)
Lab Series
Container for Lab Profiles
Used heavily to assign labs in TMS or publish over API
Often translate to courses
Lab Profile
“The Lab” built by the Lab Developer/Author
Environments, Life Cycle Actions, settings
Lab instructions & skill validation activities
Lab Instance
Each Learner’s personal “copy” of the Lab Profile
Lab Creation Overview
Labs on the Skillable platform can be incredibly feature-rich in many various facets. To best plan and think about lab design, it is best to think of it in four overarching categories: Creating Lab Environments, Creating Instructions, Creating Skill Validation Activities, and Configuring Cost Controls/Business Rules. Each of these categories can be fulfilled in various ways, culminating into an impactful hands-on experience for your leaners.
The environment is the most vital of all components of a lab. This is the virtual machine or other cloud components that comprise the software and scenario the user is learning.
Instruction sets are what tell the user what to do within the lab. Some scenarios (like sandboxes) are very intentionally light on instructions while others may provide learners with specific tasks to accomplish or steps to take. Whether a lab is “instructions-light” or “instructions-heavy”, it is important it is clear to the learner what the expectations are of them and how to accomplish it.
(Optional) Creating Skills Validation Activities
Skills Validation Activities come in Multiple Choice Question (MCQ), Short Answer, and Automated varieties. They all serve a purpose of validating a learner has the knowledge the lab is intending to teach, but automated activities go to the next level and validate not only that they know, but that they can DO.
Once you know exactly what your scenario looks like and what the learner is anticipated to do, you can start applying cost controls. Cost controls include timers like how long the learner is allowed in the lab and idle time outs as well as full access controls around what they can or cannot do in Microsoft Azure.