Azure Monitor for VMs
Start course

This course offers an in-depth look at VM scale sets, VM configuration management, VM storage options, and VM monitoring within Azure. We kick things off by looking at VM scale sets, vertical scaling, and horizontal scaling.

After that, you'll learn about the tools used for configuration management, as well as how to deploy software using VM extensions and how to deploy an Azure PowerShell DSC Configuration.

The course will then cover the wide range of VM storage options available in Microsoft Azure and show you how to use them. Finally, you'll learn about Azure Monitor, a service that allows you to monitor the performance and health of your VMs and VM scale sets.

This course is packed full of step-by-step demonstrations that you can follow along with, allowing you to see all of the above topics put into practice in real-life Azure environments.

For any feedback relating to this course, please feel free to contact us at

Learning Objectives

  • Scale VMs using scale sets and understand the difference between vertical and horizontal scaling
  • Learn about the tools used for managing VM configurations
  • Deploy software using VM extensions and PowerShell DSC
  • Understand the various VM storage options available in Azure
  • Learn about Azure Monitor and its uses

Intended Audience

  • Anyone interested in learning about scale sets, configuration management, storage, and monitoring for Azure VMs


To get the most from this course you should have a basic understanding of Microsoft Azure and of the Azure portal.


Hello and welcome to Azure Monitor for VMs. Over the next few minutes, we're going to look at what Azure Monitor for VMs is and what it provides.

Azure Monitor for VMs is a cloud offering that you can use to monitor both Azure virtual machines and virtual machine scale sets. What it does is analyze both the performance and health of Windows and Linux virtual machines. It monitors processes running on the VMs, dependencies on other resources, and it can even monitor external processes. Azure Monitor for VMs can even monitor virtual machines and physical machines that are on-prem or hosted by other cloud providers.

Azure Monitor for VMs provides predefined trending performance charts that show key performance metrics for the OS of the VM being monitored. It also provides a dependency map. This dependency map is pretty slick because it shows interconnected components with the virtual machine being monitored from all of your resource groups and subscriptions.

The dependency map gets its data from the Microsoft dependency agent, which in turn, relies on the log analytics agent for its connection to log analytics. This means that to use the map feature in Azure Monitor for VMs, your system needs to have the log analytics agent installed, and it needs to be configured with the dependency agent. Microsoft recommends that you use the Azure VM dependency agent extension for both Windows and Linux to install the agent on your Azure VMs.

The integration of Azure Monitor for VMs with Azure Monitor logs provides aggregation capabilities, filtering capabilities, and the ability to analyze VM data trends over time. To view the collected data, you can either look at it from the Insights page for a single VM, or you can see an aggregated view of all VMs from within Azure Monitor.

Organizations typically use Azure Monitor to identify performance bottlenecks and network issues that affect applications.

The data that gets collected by your virtual machines is stored in Azure Monitor. A log analytics workspace is required to store the performance and dependency data that's collected.

You can set up Azure Monitor for VMs in a few different ways. To monitor a single VM or VM scale set, you can do so right from the Insights link right from the page for the individual VM or scale set. If you need to monitor more than one Azure VM or scale set, it's usually best to use Azure Policy to do so. That being said, you can also use PowerShell, if you need to monitor more than one Azure VM or scale set as well.

The table on your screen shows all of the different operating systems that Azure Monitor for VMs supports.

I should point out before we dive into the upcoming demonstration that you need to have at least the log analytics contributor role to enable and access the Azure Monitor for VM features. If you want to view the performance, health, and map data, you need to have the monitoring reader role for the particular Azure VM that you're interested in.

In the upcoming demonstration, we'll enable Azure Monitor for a single VM through the Azure portal.

About the Author
Learning Paths

Tom is a 25+ year veteran of the IT industry, having worked in environments as large as 40k seats and as small as 50 seats. Throughout the course of a long an interesting career, he has built an in-depth skillset that spans numerous IT disciplines. Tom has designed and architected small, large, and global IT solutions.

In addition to the Cloud Platform and Infrastructure MCSE certification, Tom also carries several other Microsoft certifications. His ability to see things from a strategic perspective allows Tom to architect solutions that closely align with business needs.

In his spare time, Tom enjoys camping, fishing, and playing poker.