---
title: "VHD Based Azure Virtualization"
slug: "vhd-based-azure-virtualization-1"
tags: ["lgc"]
updated: 2024-09-06T16:16:24Z
published: 2024-09-06T16:16:24Z
canonical: "docs.skillable.com/vhd-based-azure-virtualization-1"
---

> ## Documentation Index
> Fetch the complete documentation index at: https://docs.skillable.com/llms.txt
> Use this file to discover all available pages before exploring further.

# VHD Based Azure Virtualization

This is a deprecated method. For new implementations, please use the [Compute Gallery method](/v1/docs/azure-compute-gallery-virtual-machine) instead.

This document describes how to upload template virtual hard disks (VHDs) into a Azure Subscription, that can be used to create a Virtual Machine Profile (VM).

Virtual machines can be hosted in Azure and used in Skillable Studio. The Virtual Disk for the VM is stored in an Azure storage account container, and is used by Skillable Studio when the lab is launched.

## Azure Set Up

To upload template VHDs into a Microsoft Azure subscription using the Microsoft Azure Portal, you must perform the following tasks:

- Create a resource group where you will store VHDs.
- Create a storage account inside of your resource group where template VHDs will be stored in a storage container.
- Create a container inside your storage account.
- Upload each template VHD you want available to your Cloud Slice labs.

### Create the Resource Group Where You Will Store VHDs

To create the resource group where you will store template and deployed virtual hard disks in your Microsoft Azure subscription, navigate to the [Microsoft Azure Portal](https://portal.azure.com), and then do the following:

1. Navigate to the **Resource Groups** section in the Azure portal.
2. Click on **+ Add**. This will open the Create Resource Group blade.
3. Enter a **resource group name** (e.g. cloud-slice-resources) into the Resource group name field. Save this name in a document because you will need it later on.
4. Select the region where you want the resource group to be created in the **Region** field.
5. Click the **Review + Create** button to create the resource group.

### Create a Storage Account Inside the New Resource Group

Once you have created the resource group for your virtual hard disks, you need to create a storage account where those VHD files will actually be stored in a container. To accomplish this, you must do the following:

1. Navigate to the resource group you created in previous steps, if you are not there already.
2. Click **+ Add** to add a resource to the resource group.
3. Search for **Storage** and select the **Storage Accounts** service.
4. Click the **create** button to add a new storage account. This will open the Create storage account blade.
5. Select the **Resource group** drop-down and select the resource group you created in the previous task.
6. Enter a name for your storage account in the **Storage account name** field. This name must be globally unique, so it is a good idea to choose a name that is meaningful to you and that will be unique. Save this name in a document because you will need it later on.
7. Choose the region where you want to store your storage account from the list of regions available in the **Location** drop-down.
8. Click **Review + create** to create the storage account.

### Create Containers Inside of the Blob Service in Your Storage Account

Once you have created a resource group and a storage account within it, you need to create containers inside of the blob service in your storage account to store VHD files and host running virtual machine instances. This can be done from within the Microsoft Azure Portal, by following these steps:

1. Navigate to the storage account that you created in the previous task. This will open the storage account blade.
2. Click on the Containers service in the storage account blade. This will open the container service blade.
3. Click on the **+ container** button to create a new storage container.
4. In the Name field, enter the name that you would like to use for your storage container (e.g. template-vhds for the container for template virtual hard disks, or instance-vhds for the container for running virtual machine instances). Save the name in a document because you will need it later on.
5. Select **Blob** for the **Public access level**.
6. Click on **OK** to create the container.
7. Repeat these steps to create a second storage container, this time for running virtual machine instances.

### Uploading a VHD To Azure

1. Navigate to the [Azure Portal](https://portal.azure.com) if you are not already at the Azure portal.
2. Navigate to the storage account you are going to use to store VHD files and host running virtual machine instances.
3. In the storage account, go to the container where the VHD files will uploaded (template VHD storage).
4. Click the **upload** button near the top of the page.
5. Click the **blue folder icon** and select the VHD file that you want to upload.
6. Click **Advanced**.
7. Select the drop-down menu for **Blob type** and change the blob type to **Page blob**.

If the VHD is uploaded as a *Block Blob* (default upload setting), the VHD will not be able to be used for a VM in a lab. The VHD must be uploaded as a page blob.
8. Click the **Upload** button to upload the VHD to the container.
9. After the VHD uploads, copy the VHD file name and save the name in a document because you will need it later on.

At this point, you should everything set up in Azure and are now ready to configure the VM profile in Skillable Studio and add the VM to a lab.

## Skillable Studio Set Up

### Basic Information

1. Navigate to the **Virtual Machine Profiles** tile, on the Skillable Studio Admin page.
2. Click **Create Virtual Machine Profile**.
3. Select the drop-down menu for **Platform** and select **Azure**.

![Azure selected in the Virtualizatino Platform drop-down menu](https://cdn.document360.io/a298db04-a0fe-47e0-bfe3-c52d6f9d7c8c/Images/Documentation/select-virt-platform.png)
4. Enter a **Name** for the virtual machine. This will be the display name of the VM.
5. Enter a **Description** for the VM.
6. If you wish to associate the VM with a **Lab Series**, click **Choose** and select the series.
7. Select the **Organization** that the VM will be available to.
8. Select the Machine type. Machine types available correspond to Azure VM SKUs. For more information about Azure machine types, [read here](https://azure.microsoft.com/en-us/pricing/details/virtual-machines/series/).
9. Enter the **Operating System** the VM will use.
10. Enter the **Username** to log in to the VM.
11. Enter the **Password** to log in to the VM.
12. Enter the **Screen Width**.
13. Enter the **Screen Height**.
14. Check the **Enabled** box to enable the VM for use.
15. Check the **Enable Dynamic Screen Resizing** box to enable dynamic screen resizing.

### Hard Disks

1. **Add a Hard Disk**: enter the name of the hard disk that the VM will use.

The hard disk should be in **VHD** format and stored in an Azure storage account container. Ensure that hard disk name in the VM profile matches the VHD file name exactly as it appears in your storage account container in Azure. If the hard disk name in the VM profile doesn't match the file name in the Azure container, the VM will fail to launch.

### Map Storage Account in Skillable Studio

The storage account where the VHD is stored needs to be mapped in the cloud subscription that is associated with the lab that will use the VM.

To map the storage account in the subscription:

1. Navigate to the **cloud subscription** in Skillable Studio.
2. Click **Edit** next to the subscription that you want to map.
3. Click the **Storage** tab of the *Edit Cloud Subscription* dialog.
4. Enter the name of each in Skillable Studio, to align with the containers in your Azure storage account.

![Edit cloud subscription](https://cdn.document360.io/a298db04-a0fe-47e0-bfe3-c52d6f9d7c8c/Images/Documentation/cloud-subscription-storage.png)
  - **Template Storage Account**: Storage account name where template images (VHD files) are copied from during virtual machine deployment.
  - **Template Storage Resource Group**: Resource group name containing the storage account used to copy template images (VHD files) from during virtual machine deployment.
  - **Template Storage**: Storage container within template storage account used to host source template VHD files for virtual machine deployment.
  - **Instance Storage Account**: Storage account name where template images (VHD files) are copied to during virtual machine deployment.
  - **Instance Storage Resource Group**: Resource group name that contains the storage account used for running instance storage.
  - **Instance Storage**: Storage container within the instance storage account used to host storage for running virtual machines.

These fields need to be configured for each subscription in the subscription pool.
5. If you have not created containers in your Azure storage account container, review the [previous section to create containers](/docs/vhd-based-azure-virtualization-1#Create-a-storage-account-inside-the-new-resource-group) in the storage account.

### Network Adapters

A network adapter is **required** for all Azure hosted VMs in order for the lab to connect to and display the VM.

1. **Add Network Adapter**: Click to add a network adapter, and configure adapter settings.
  - **Specify ethernet (MAC) address**: Allows the MAC address to be set to a unique value, or generate a random MAC address.
  - **Is legacy adapter**: Allows the network adapter to operate as a legacy adapter without a Hardware ID.

### Internal Notes

This area is used to record notes, or additional information about the VM. This is useful if the VM has specific configurations, or if there are multiple users/authors that use the VM.

Azure represents Microsoft Azure - Microsoft's public cloud computing platform.

A subscription is an assignment to an individual for access to a set of courses for a set amount of time for self-paced access. Students can choose which courses to access from the subscription, which then open as a course assignment, and they can access the courses at any time for the duration of the subscription.

A Virtual Machine profile represents the hardware configuration of a virtual machine. Base settings would include, memory, processor, network adapters and storage configuration. The actual settings available are dependent on the fabric the Virtual Machine would be running on.

The individual files that are used to represent physical disks in a virtual machine.
