AZ-305 Design infrastructure solutions Practice Question
A company runs a web application on Azure VMs in a single region. The application must scale out automatically based on CPU utilization. The VMs are behind an Azure Load Balancer. Which Azure service should they use to automatically add or remove VMs based on demand?
⚠ Common exam trap
Many exam-takers confuse Azure App Service's autoscale feature (which scales the number of App Service instances, not VMs) with the requirement to scale VMs behind a load balancer, leading them to select App Service instead of VMSS.
Answer choices
Why each option matters
Answer the question above first, then reveal the full breakdown to understand why each option is right or wrong.
Correct answer & explanation
✓
Azure Virtual Machine Scale Sets
Azure Virtual Machine Scale Sets (VMSS) is the correct service because it provides automatic scaling of identical VM instances based on metrics like CPU utilization. When you configure an autoscale rule on a VMSS, it automatically adds or removes VM instances behind the Azure Load Balancer, ensuring the application scales out or in based on demand without manual intervention.
Answer analysis
Option-by-option breakdown
For each option: why learners choose it and why it is or isn't the right answer here.
- ✓
Azure Virtual Machine Scale Sets
Why this is correct
Azure Virtual Machine Scale Sets (VMSS) is the correct choice because it directly manages a group of identical VMs as a single pool, providing automatic horizontal scaling based on performance metrics like CPU or memory utilization, custom metrics, or scheduled times. It integrates natively with Azure Load Balancer and Application Gateway to distribute incoming web traffic across the VM instances, making it ideal for a web application hosted on Azure VMs. VMSS also supports manual scaling, automatic scale rules, and health monitoring to replace unhealthy instances, ensuring high availability and elastic capacity for fluctuating web workloads.
- ✗
Azure App Service
Why it's wrong here
Azure App Service is incorrect because it is a fully managed Platform-as-a-Service (PaaS) offering for hosting web apps, REST APIs, and mobile backends, not a service for managing or scaling a fleet of VMs. With App Service, you deploy your code to a managed runtime environment and scale via App Service plans, which adjust the number and size of worker nodes behind the scenes—you never control or access the underlying VMs. Since the company in the question is already running on Azure VMs, App Service would require rearchitecting the application to a PaaS model, rather than providing VM-level scaling.
- ✗
Azure Functions
Why it's wrong here
Azure Functions is incorrect because it is a serverless compute service designed for event-driven, short-lived functions that scale automatically based on incoming triggers such as HTTP requests, queue messages, or timers, not for orchestrating or scaling a set of virtual machines. It abstracts away all infrastructure, including VMs, and executes stateless code with scale controlled by the Functions runtime, not by VM scale rules. For a web application already deployed on VMs, Functions cannot scale or manage those VMs; it is a completely different execution model.
- ✗
Azure Batch
Why it's wrong here
Azure Batch is incorrect because it is a service for planning, scheduling, and running large-scale parallel and high-performance computing (HPC) batch workloads, not for autoscaling web application VMs. Batch allocates and manages a pool of compute nodes to process many jobs in a queue, with scaling based on the number of pending tasks, and those nodes are typically isolated from public-facing traffic. Unlike VMSS, which integrates with load balancers for serving web requests, Batch is designed for offline processing and does not provide the health probes, rolling upgrades, or load balancing features needed to operate a web frontend.
Go deeper
Related to this question
About these practice questions
This AZ-305 question is part of Courseiva's 795-question bank — original exam-style content with full explanations and wrong-answer analysis, never real exam questions or exam dumps. Learn why practice questions differ from exam dumps →
JA
Written by Johnson Ajibi, MSc IT Security
Senior Network & Security Engineer · founder of Courseiva
This AZ-305 practice question is part of Courseiva's free Microsoft certification practice question bank. Courseiva provides original exam-style practice questions with explanations, topic-based practice, mock exams, readiness tracking, and study analytics to help learners prepare for the AZ-305 exam.