- Print
- DarkLight
AWS VM + Cloud Based Lab Onboarding
Overview:
This document provides a comprehensive guide to the end-to-end process of onboarding a VM + AWS based lab scenario using the CloudLabs Admin Portal. For instance, if you need the users to create resources in AWS by following a certain lab guide or document and want a pre-deploy VM in which the users will perform the tasks, then this is the scenario you want to proceed with. Follow the steps outlined below for a successful lab setup.
In this document you will be going through with the below topics:
Link to be replaced
Prerequisites
Before you begin onboarding a VM + AWS based lab through CloudLabs, ensure you have the following prerequisites:
Admin access to CloudLabs Admin Portal (If access is unavailable, kindly reach out to your point of contact or CloudLabs Support).
An active subscription in CloudLabs Admin Portal. Refer How to Onboard AWS Accounts to CloudLabs Portal document.
Lab Guide/Reference documents containing necessary instructions, often provided through GitHub which are in GitMarkdown format.
Information used for VM with AWS based lab onboarding
To onboard a VM + AWS based lab to CloudLabs, use the below details:
Subscription Types: To onboard a VM + AWS based lab, you should firstly determine what type of access the participants would require and post that you need to select the Subscription type from one of the three types below that CloudLabs offers. It is highly recommended that you apply access and policy constraints for the chosen subscription type.
Dedicated Subscription : One of the AWS Organization Member account will be given to the one user.
Dedicated Tenant: When a access to the Organization root account is needed.
Once you are ready to Onboard the labs on CloudLabs Admin Portal, you need to follow the instructions mentioned below:
Let’s begin with the Onboarding Process:
Setup Template on CloudLabs for AWS
The first step in the onboarding process is to add a template in CloudLabs Admin Portal.
You can follow the detailed guide mentioned here to login to the CloudLabs Admin Portal
Follow the below mentioned guide to Add Template in CloudLabs.
You have successfully onboarded the template into CloudLabs.
Use VM Images in CloudFormation template
In AWS, there are two ways that you can use Amazon Machine Images (AMIs) to deploy a virtual machine. You can either utilize AWS Marketplace AMIs or create custom AMIs through AWS's EC2 Image Builder or other methods.
Amazon Machine Images (AMIs)
To deploy a virtual machine using any Amazon Machine Image (AMI) in AWS, you need to specify the AMI ID for the instance in the resources section of your CloudFormation template. You can find the AMI ID details from the AWS Management Console or using AWS CLI commands.
{
"Resources": {
"MyEC2Instance": {
"Type": "AWS::EC2::Instance",
"Properties": {
"ImageId": "<AMI ID>",
"InstanceType": "<Instance type>",
"KeyName": "<KeyPair>",
"SecurityGroupIds": [
"<security group(s)>"
],
"Tags": [
{
"Key": "Name",
"Value": "<Name tag for the instance>"
}
]
}
}
}
}
Amazon EBS
You can follow the detailed guide mentioned below on how to use AWS Amazon EBS service to create a custom Amazon Machine Image (AMI) and utilize it.
You can create custom Amazon Machine Images (AMIs) for both Windows and Linux instances based on the lab requirements. The below mentioned guide will navigate you to the AWS CloudFormation section of Adding Template in CloudLabs.
Setup ODL on CloudLabs Admin Portal
You'll need to create the On-Demand Lab (ODL) and map the template you've created in the previous step. The creation of ODL is only for Admins and not users.
Note: One template can be mapped with multiple ODLs.
The onboarding process can vary depending on the requirements of your lab scenario.
To create ODL from CloudLabs Admin Portal follow instructions mentioned in the below guide:
You have successfully onboarded the On-Demand Lab (ODL) on CloudLabs Admin Portal.
Launch the lab
From the On Demand Labs Page (1), choose your ODL (2) and click on the Users icon (3) to register into the environment.
Click on + Add User and enter your details then click on Submit.
Now you have successfully registered yourself as a user.
Within the Users page, you will find an instance registered under your name, indicated by its status being in the Approved state (1). Proceed by clicking the Launch (2) button.
Now you will be navigated to a different browser tab where you will be able to view the page as shown in the screenshot below. On this page, click on the Launch Lab button.
Upon clicking the Launch Lab button, the deployment process will initiate, leading you to the screen illustrated in the provided screenshot below:
After the instance is successfully deployed, you will encounter the screen depicted in the provided screenshot:
You can also activate the lab at bulk using Bit.ly URL by following the below steps.
From the On Demand Labs Page, choose your ODL (1) and note down the ODL ID. Click on the Elipses icon (2) and select Manage Activation Codes (3) to create an activation code.
Click on + ADD ACTIVATION CODE
Provide the below values for the Activation Code properties.
Name: The Activation code should always follow the naming convention ACTIVATE<-ODL-ID->. For instance, if your ODL ID is 38407, then the Activation Code will be ACTIVATE38407.
Customer: Provide your company or customer name.
City: Provide your city name.
Country: Select your country from the dropdown.
Expiry Date: Select an expiry date for the Activation code, post which the Activation code will be invalid.
Finally, click Submit to save details.
Copy the Bit.ly URL and share it with the users.
Users can activate their labs by following the below steps:
Navigate to the Bit.ly URL.
Provide the required details.
Click on Submit.
To find more information on ODL and Manging the lab click on the below link to access the guide. You can find information on how to invite users, manage users, extend lab duration and much more.
Common Issues and Resolutions
The CloudFormation Template & Parameter files must be stored in the S3 Storage Bucket. The storage bucket and the objects must be publicly accessible, steps to make a bucket public are described here Creating a Bucket with Public Access once the files are uploaded you can retrieve the URL & provide it in the CloudFormation details tab in the CloudLabs Template.
Make sure that Enable EC2 Access Over Http flag is enabled in CloudLabs Template, and ACI deployment style should be given as Default in On Demand Lab settings. For more information on how to enable RDP/SSH access for EC2 refer following documentation: How to Enable RDP/SSH Access over HTTPS for EC2
CloudFormation templates and parameters files syntax must be correct. refer to below sample Cloudformation template and parameter files urls:
Cloudformation Template File: sample Cloudformation template file
Parameters File: sample parameters file
Make sure you are adding the URLs of IAM Policy and UsagePolicy files in its respective fields.
While creating the ODL, make sure you map the ODL with correct template to avoid conflict in labs.
Ensure you are following the Syntax correctly while creating the IAM Policies to avoid deployment failures.