Lab environments are essential to lots of people in IT, including system administrators needing to test out the latest software or software developers needing to deploy their own custom software to test before rolling it out to production.
Labs are critical to ensuring changes made to production environments go out without a problem. Setting up new lab environments is a time-consuming endeavor. Depending on how many systems you have to set up, it can take days to create lab environments with dozens of VMs with different configurations. Not only being time-consuming, there are other problems like no access to production artifacts, little control over security and more. Luckily, we can make creating lab environments easier using Azure’s DevTest Labs feature.
Azure DevTest Labs is a Microsoft Azure service that’s closely related to their Virtual Machines service. It allows administrators to create groups of virtual machines called labs which allow administrators to set policies, define shared artifacts, set up custom images, and more.
If you have a Microsoft Azure account, log into the Azure portal and either search for DevTest or select it from All Services. Once on the DevTest Lab blade, click Create a DevTest Lab which will bring you to the screen below.
Creating Azure DevTest Lab
Fill out the fields however you’d like and click on Create. Your lab should be created in a couple of minutes. Once created, your first task should be creating a virtual machine. You’re asked to choose a base like Windows Server, FreeBSD, Ubuntu, etc. After you’ve selected your image, you’re then asked some standard server-specific information like the VM name, user, and password. You’re also asked if you’d like to add any artifacts. This is one of the cool features of Azure DevTest Labs.
The lab allows you to install various shared artifacts on the VM image automatically, so you don’t have to do it yourself. An artifact is any component you’d like installed on the server you’re deploying. An artifact can be just about anything even a PowerShell script!
Choosing Lab Artifacts
Once you’ve got a lab built and a VM inside, you can then begin to check out the various policies that can be applied. In the Configuration and Policies section, you can see the total cloud cost across the entire lab, policies that control settings like allowed VM sizes, add custom VM images, and more.
Below is an example of one of the policies that can be set controlling the total number of VMs available in the lab.
Virtual Machines Per Lab
Azure DevTest Labs is about giving anyone needing a lab environment easy access yet retain some modicum of control by an overseer. The administrator creates the lab and delegates rights to the lab to different individuals to perform various actions.
This feature of Azure opens up lab access in a self-service fashion. A lab administrator creates the lab which then creates a management and security boundary that allows sharing of resources as well as control via policy. It opens up IaaS to a lot more people because organizations now have more control over their labs and can set limits to the actions users take in their labs.