1. Home
  2. Training Library
  3. Microsoft Azure
  4. Courses
  5. Azure Resource Manager Virtual Machines

Demo - Configure Storage Redundancy and Host Caching


Overview of the course
Course Intro
Course Overview
Start course
2h 17m

Azure Resource Manager Virtual Machines

Virtual Machines are a very foundational and fundamental resource in Cloud Computing. Deploying virtual machines gives you more flexibility and control over your cloud infrastructure and services, however, it also means you have more responsibility to maintain and configure these resources. This course gives you an overview of why use virtual machines as well as how to create, configure, and monitor VMs in Azure Resource Manager.

Azure Resource Manager Virtual Machines: What You'll Learn

Lesson What you'll learn
Overview Overview of the course and the Learning Objectives
What is a Virtual Machine? Understand what are Azure Virtual Machines and what workloads are ideal for VMs
Creating and Connecting to Azure VMs Learn to deploy Windows and Linux VMs as well as how to connect to these VMs
Scaling Azure Virtual Machines Understand VM scaling, load-balancing, and Availability Sets in Azure Resource Manager
Configuration Management Understand the basic concepts of Desired State Configuration and the options available to Azure VMs
Design and Implement VM Storage Gain an understanding of the underlying Storage options available to VMs as well as Encryption
Configure Monitoring & Alerts for Azure VMs Learn to monitor VMs in Azure Resource Manager as well as configure alerts.
Summary Course summary and conclusion


GitHub Code Repository



In this demo let’s create a VM, add a Data disk while exploring different storage redundancy options and host caching. In the portal, let’s click ‘+NEW’, type “2016” in the search box, and select “Windows Server 2016 Datacenter” as our VM image. We’re using the default Resource Manager deployment model, so click Create.

Let’s call it “StorageVM.” Next we have the VM disk type which presents us two options: SSD or HDD. We now know that by choosing SSD we are choosing a Premium VM disk and by choosing HDD, we are choosing Standard storage. Let’s create a username and password. And create a new Resource Group called “StorageRG.” Our VM will be in the “East US” region. Click OK.

In choosing the VM size, we’ll use the Standard DS1_V2 size and if you notice it says 7 GB of Local SSD storage. This storage is your Cache that made available to help boost performance on your OS disk. Even if we were to choose the HDD option we still get a Local SSD storage option. This shows up as a logical volume call “Temporary” within our Azure VM. Do not store data there as it is highly volatile storage and the data is not guaranteed to be persistent. There is a README file on that disk to communicate this. Also you’ll notice that this VM size allows us to attach up to 2 Data disks.

In Step 3 this is where we make the decision on whether or not to use Managed Disks or Unmanaged disks. There is a note that says Managed Disks may not be available in all regions, just keep that in mind. For this demo let’s stick with the default ‘NO’ for Unmanaged Disks.

Let’s click on the new storage account. Here we see we’re creating a “Premium” storage account due to the Premium SSD disk we selected and as discussed we only have an option for Locally-redundant storage. Let’s go back and change our disk to an HDD disk and see what options we’re presented with. Let’s choose the Standard D1_V2 VM Size which has a 50GB local cache and allows us 2 Data disks. Now when we click on the storage account, we are using Standard storage and get the option so choosing LRS, GRS, or RA-GRS. Note that ZRS is not available as ZRS is only available for Block Blob storage and not for VM disks. Let’s leave this option has LRS. Let’s leave everything else as default and click OK.

Everything looks good on the Summary screen and so we’ll Click OK to build the VM. Our deployment has succeeded. Let’s take a look at our VM disk by Selecting “Disks” under “Settings.” Note that our OS disk of of type Standard_LRS and Host Caching is set to Read/write by default.

We also get an option to add a data disk. Let’s do that now. Click “+Add data disk.” Let’s call it “DataDisk1.” Under “Source type” we get the option of adding an existing disk, but we’re going to leave this a “New (empty disk).” The “Account type” only gives us the option of Standard (HDD) and this is because our storage account as a whole is Standard Storage and not Premium. Let’s change the Disk size 5 GB. Notice how the Azure portal is nice enough to give us some info on the “Estimated Performance” and VM disk limits. The “Storage container” option allows us to attach a disk from a storage account, but we’ll stick with the same storage account as our OS disk and we’ll select the default Container called “vhds.” We’ll leave the “Storage blob name” as the default and hit okay to add the new data disk to our VM.

We’re not quite done yet until we “Save” our changes. This view presents us with the ability to configure the Disk LUN number, disk name, and the Host Caching option which shows “None,” “Read-only,” and “Read/write.” We’ll leave Host Caching as “None” and click Save to create our new disk and attach it to our VM. Typically when modifying storage options on your VM it’s best to stop the VM until shows Stopped and deallocated, make the changes and then start the VM. This helps Azure plan resources accordingly on the backend.

Looks like it has successfully completed. Let’s connect to it to verify we have the added data disk. Let’s Right-Click on the Start Button and go to Disk Management. And here we see it’s asking us to initialize our added Disk. Let’s click okay. We can see our unallocated 5 GB of space. Let’s create a Simple Volume and format the disk. Let’s open File Explorer and there’s our new disk. Also note the Temporary 50 GB Volume. There’s a README file here explaining not to use this disk for storing application data due to potential data loss. This concludes our demo.

About the Author
Learning Paths

Chris has over 15 years of experience working with top IT Enterprise businesses.  Having worked at Google helping to launch Gmail, YouTube, Maps and more and most recently at Microsoft working directly with Microsoft Azure for both Commercial and Public Sectors, Chris brings a wealth of knowledge and experience to the team in architecting complex solutions and advanced troubleshooting techniques.  He holds several Microsoft Certifications including Azure Certifications.

In his spare time, Chris enjoys movies, gaming, outdoor activities, and Brazilian Jiu-Jitsu.