L7. Core Compute Services: VMs, App Service, Functions, and AKS
Video generating
Check back soon for the video lesson on Core Compute Services: VMs, App Service, Functions, and AKS
Azure offers multiple compute models for different workloads. The AZ-900 exam tests when to use Virtual Machines, App Service, Azure Functions, and Azure Kubernetes Service.
Azure Virtual Machines (IaaS)
Azure VMs are on-demand, scalable computing resources that run Windows or Linux. They are the closest equivalent to on-premises servers. Choose VMs when: You need full OS control, need to run legacy applications, or are migrating an existing workload without refactoring ("lift and shift"). Key VM features for AZ-900:
- VM Scale Sets: auto-scale a pool of identical VMs based on demand or schedule
- Azure Bastion: browser-based RDP/SSH access without exposing public IPs
- Availability Sets: distribute VMs across update domains and fault domains within a datacenter
Azure App Service (PaaS)
App Service is a fully managed HTTP-based service for hosting web apps, REST APIs, and mobile back ends. No OS management required. Supports: .NET, Java, Node.js, Python, PHP, Ruby Includes: Auto-scaling, custom domains, TLS certificates, deployment slots (staging) Choose App Service when: You want to deploy web applications or APIs without managing servers or the OS.
Azure Functions (Serverless)
Azure Functions is an event-driven, serverless compute service. You write code that runs in response to events (HTTP request, timer, queue message, blob created). Billing: Consumption plan charges per execution and execution duration. You pay nothing when functions are not running. Choose Functions when: You have event-driven tasks, short-lived workloads, or want to pay only when code executes.
Azure Kubernetes Service (AKS) - Managed PaaS
AKS is a managed Kubernetes service. Azure manages the Kubernetes control plane (free); you pay for worker nodes. Choose AKS when: You need to orchestrate containerized applications at scale.
Azure Container Instances (ACI)
ACI runs containers without managing any infrastructure. Good for simple, isolated container runs.
Quick Comparison
| Service | Model | Best For |
|---|---|---|
| Virtual Machines | IaaS | Full OS control, lift-and-shift |
| App Service | PaaS | Web apps, APIs, no OS management |
| Azure Functions | Serverless | Event-driven, short-lived code |
| AKS | Managed PaaS | Container orchestration at scale |
| ACI | Serverless containers | Simple isolated container runs |
- ✓Azure VMs are IaaS: you manage the OS; best for lift-and-shift and workloads requiring OS control
- ✓App Service is PaaS: managed web hosting; you deploy code, Azure manages OS and runtime
- ✓Azure Functions is serverless: event-driven, pay per execution, ideal for short-lived tasks
- ✓AKS manages the Kubernetes control plane for free; you pay only for worker nodes
- ✓VM Scale Sets provide auto-scaling for VM pools; Azure Bastion enables browser-based RDP/SSH without public IPs
1. A developer wants to run code that automatically processes images as they are uploaded to Azure Blob Storage without managing any servers. Which Azure service is most appropriate?
2. Which Azure compute service would you choose to migrate an existing on-premises Windows application with minimal code changes?
Recommended: Pluralsight
This free course covers the theory. Pluralsight adds guided video paths, hands-on Azure labs, and timed practice exams to help you pass AZ-900 with confidence.