Azure Virtual Machines
VMs are the workhorse of IaaS. From running legacy apps to scaling with VM Scale Sets β here's everything AZ-900 tests about Azure virtual machines.
What is an Azure virtual machine?
A virtual machine (VM) is a computer inside a computer.
Instead of buying a physical server, you rent a virtual one from Azure. It looks and behaves like a real computer β it has a CPU, memory, storage, and an operating system. You can install software, configure settings, and connect to it remotely.
The difference? Itβs not a physical box under your desk. Itβs a piece of a much larger server in one of Azureβs datacenters. Multiple VMs share the same physical hardware but are completely isolated from each other.
You pick the size (how much CPU and RAM), the OS (Windows or Linux), and the region. Azure handles the physical hardware.
VM options in Azure
Azure Virtual Machines (standard)
The core IaaS offering. You choose:
- Size β from 1 vCPU / 0.5 GB RAM to 416 vCPUs / 12 TB RAM
- Image β Windows Server, Ubuntu, Red Hat, custom images
- Region β where the VM physically runs
- Disk β OS disk + optional data disks
Azure Virtual Machine Scale Sets
Scale Sets let you deploy and manage a group of identical VMs that automatically scale based on demand:
| Feature | Single VM | VM Scale Set |
|---|---|---|
| Number of VMs | 1 | 1 to 1,000+ |
| Auto-scaling | No (manual) | Yes (rules-based) |
| Load balancing | Must add separately | Built-in |
| Identical config | N/A | All VMs are identical |
| Best for | Dev/test, single workloads | Web apps, APIs, batch processing |
Summit Construction uses a Scale Set for their project portal:
- Normal: 2 VMs
- Peak (quarterly reviews): auto-scales to 8 VMs
- After peak: scales back to 2 VMs
Availability sets
Availability sets protect against hardware failures within a datacenter by spreading VMs across:
- Fault domains β separate physical racks (protects against rack-level failures)
- Update domains β VMs that can be rebooted during maintenance without all going down at once
| Concept | What It Protects Against |
|---|---|
| Fault domains | Physical hardware failure (rack, power, network switch) |
| Update domains | Planned maintenance (Azure reboots VMs in one update domain at a time) |
Availability sets vs availability zones
Both protect against failures, but at different scales:
- Availability sets protect within a single datacenter (rack-level failures)
- Availability zones protect across datacenters within a region
For the highest availability within a region, use availability zones. Availability sets are the older approach and still work, but zones provide stronger protection.
Exam tip: If a question asks for the HIGHEST availability, the answer is usually availability zones, not availability sets.
Azure Virtual Desktop
Azure Virtual Desktop (AVD) is a desktop and app virtualisation service:
- Users access a full Windows desktop or individual apps from any device
- The desktop runs in Azure, not on the userβs computer
- Supports multi-session Windows 11 (unique to Azure β no other cloud offers this)
Harbour Health use case: Doctors access patient records from personal devices through Azure Virtual Desktop. The data never leaves Azure β only screen pixels are sent to the device. This satisfies compliance requirements while enabling remote work.
Resources required for a VM
When you create a VM, Azure also creates (or requires) these supporting resources:
| Resource | Required? | Purpose |
|---|---|---|
| Virtual network (VNet) | Yes | Network connectivity |
| Network interface (NIC) | Yes | Connects the VM to the VNet |
| OS disk | Yes | Stores the operating system (managed disk) |
| Public IP address | Optional | Allows internet access to the VM |
| Network security group (NSG) | Recommended | Firewall rules for inbound/outbound traffic |
| Data disks | Optional | Additional storage for applications and data |
Key exam concept: A VM is not just a VM β itβs a collection of resources. When you delete a VM, you should also clean up the NIC, disks, and public IP, or theyβll keep incurring charges.
VM sizing families
Azure organises VM sizes into families based on workload type:
| Family | Optimised For | Example Use Case |
|---|---|---|
| B-series | Burstable, low cost | Dev/test, small web servers |
| D-series | General purpose | Most production workloads |
| E-series | Memory-optimised | Databases, in-memory analytics |
| F-series | Compute-optimised | Batch processing, gaming servers |
| N-series | GPU-enabled | AI/ML training, video rendering |
The AZ-900 exam doesnβt test specific VM sizes, but understanding the concept of families and that VMs come in different sizes for different workloads is important.
π¬ Video walkthrough
π¬ Video coming soon
Azure Virtual Machines β AZ-900
Azure Virtual Machines β AZ-900
~10 minFlashcards
Knowledge Check
Summit Construction's project portal experiences unpredictable traffic spikes during quarterly reviews. Which Azure VM feature automatically adds more VMs during high demand and removes them when demand drops?
Which of the following resources are REQUIRED when creating an Azure VM? (Select THREE)
Next up: More Azure compute options β containers, Azure Functions, and Azure App Service.