Azure Virtual Machine (VM)

What it is

An Azure virtual machine (VM) is a software-defined computer running on Azure infrastructure. It has an operating system, CPU and memory size, disks, and network interfaces. A VM is IaaS: Azure operates the physical hardware, but you operate the guest operating system and the software you install on it.

Why it exists

Some workloads need a real OS you can install anything on, tune, patch, and manage — existing on-premises apps, custom agents, licensed software. VMs give you that control without buying or racking hardware. You pay per second/hour for what you run.

Key ideas

  • Choose a VM size for CPU, memory, disk, and network needs. A larger size costs more; a small size can become a bottleneck.
  • A VM normally has an OS disk and can have data disks. Keep important application data off temporary local storage, which can be lost when the VM is deallocated or deleted.
  • A virtual NIC connects the VM to a VNet subnet. A public IP, NSG, routes, and load-balancing design determine how traffic reaches it; a VM is not automatically public.
  • You choose a secure administrator-access method and remain responsible for patching, configuration, applications, and data. Azure’s management of hardware does not patch the guest OS for you.
  • One VM is a single compute instance. Use availability-zones, availability sets, or a scale set when the workload needs replicas or a larger availability design.

Northwind example

Northwind initially runs a legacy warehouse connector on one Linux VM because the software requires OS-level configuration. Luis selects a size, managed data disk, private subnet, and SSH key authentication. The VM can connect to the ordering application, but it is not a resilient design by itself: a VM or its zone can fail. Northwind later runs two connector instances behind a health-aware traffic path if continuity is required.

Common confusion

  • Stopped and deallocated are different billing and capacity states. Check the current billing state before assuming compute charges have stopped; disks and other retained resources can still cost money.
  • A VM image is the starting software template. A snapshot is a point-in-time copy. Neither alone is a tested application recovery plan.
  • A VM is a compute resource, not a private network, firewall, backup, or load balancer.

How it fits (diagram)

Before creating one

Decide the resource group, region, size, operating-system image, disk type, network design, access method, monitoring, backup, and availability requirement. Use Bicep or ARM templates when a consistent, repeatable configuration is needed.

vm-sizes · managed-disks · vm-snapshot · availability-set · availability-zones · virtual-machine-scale-set · azure-vm-extension · azure-cli · bicep · northwind-traders-case-study

📘 Source: Microsoft Learn — Virtual machines in Azure, checked 2026-09-16.