Chapter One
Compute
Eight ways to run code, from raw virtual machines you patch yourself to functions that scale to zero. The right choice turns on your workload, your team's container experience, and how much operations you want to own.
Virtual Machines
Raw VMs. You pick the image, size, disk, and network, and you own the OS.
AKS
Managed Kubernetes. You run the cluster's workloads; Azure runs the control plane.
Container Apps
Serverless containers on managed Kubernetes. Scale to zero, no nodes to patch.
App Service
Managed PaaS for web apps. Push code or a container; Azure runs the platform.
Functions
Event-driven functions. Azure runs your code per trigger; nothing when idle.
More controlLess ops
You manage the OS, patching, and scaling.Azure manages everything except your code.
Core Terminology
A handful of terms recur across this chapter. Defining them here keeps the service pages focused on trade-offs.
Region
A geographic area such as
eastus or westeurope holding one or more datacenters. Region choice drives latency, data residency, feature availability, and price.Availability Zone
Physically separate datacenters within a Region, each with independent power, cooling, and network. Spreading instances across zones survives a single-datacenter failure.
VM Size
A named hardware profile such as
Standard_D4s_v5 defining vCPUs, memory, and capabilities. Families target general-purpose, compute, memory, or GPU workloads.Resource Group
A logical container for resources that share a lifecycle. Deleting the group deletes everything in it — the unit of management and access control.
Managed Identity
An Entra ID identity Azure manages for a workload, so it calls other services without secrets in code or config.
Scale Set
A group of identical VMs managed as one unit, with autoscale rules and rolling upgrades — the basis of elastic VM capacity.
Services in This Chapter
Service 01
Azure Virtual Machines
Infrastructure-as-a-service compute with full OS control. The foundation for lift-and-shift migrations, stateful workloads, GPU jobs, and anything that needs the whole machine.
Service 02
VM Scale Sets
Identical VMs managed as one elastic fleet with autoscale and rolling upgrades. The way you run VM-based capacity that grows and shrinks with load.
Service 03
Azure Functions
Function-as-a-service. Write a handler, bind it to a trigger, pay per execution. The glue of event-driven Azure architectures.
Service 04
App Service
Managed platform for web apps and APIs. Deploy code or a container; Azure provides the runtime, TLS, scaling, and deployment slots.
Service 05
Container Instances
A single container started in seconds with no orchestrator. Built for burst jobs, sidecars, and simple tasks that do not justify a cluster.
Service 06
Azure Kubernetes Service
Managed Kubernetes — Azure runs the control plane, you run the node pools. The choice when you want the Kubernetes API and ecosystem and can absorb its operational weight.
Service 07
Container Apps
Serverless containers on managed Kubernetes and KEDA. Scale to zero, event-driven scaling, and built-in Dapr — without managing nodes.
Service 08
Azure Batch
Managed batch computing. Submit jobs; Batch provisions pools to run them in parallel, then scales back down. Built for queued, throughput-bound work.