Question 112 of 1,049
AZ-104 Deploy and Manage Azure Compute Practice Question
A stateless API runs on Azure VMs and experiences unpredictable traffic spikes during the day. The administrator must automatically add or remove identical VM instances based on CPU usage, and the platform should distribute instances across fault domains without manual placement. What should be used?
⚠ Common exam trap
Many candidates confuse availability sets with scale sets, thinking an availability set can also handle automatic scaling, but availability sets only provide fault domain distribution for a static set of VMs and lack autoscaling capabilities.
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
✓
Virtual machine scale set
Virtual machine scale sets (VMSS) automatically manage identical VM instances and can scale out/in based on CPU usage metrics via autoscale rules. They distribute instances across fault domains automatically without manual placement, ensuring high availability during unpredictable traffic spikes.
Answer analysis
Option-by-option breakdown
For each option: why learners choose it and why it is or isn't the right answer here.
- ✗
Availability set
Why it's wrong here
An availability set is a manual grouping of VMs into fault domains and update domains to protect against hardware failures and planned maintenance, ensuring that at least one instance remains available. However, it does not alter the number of VMs in response to load; you must manually add or remove VMs as demand changes. It is a high-availability control, not an elasticity control, so it cannot handle unpredictable spikes in API traffic.
When this WOULD be correct
A question requiring manual placement of VMs across fault domains for high availability without autoscaling, such as: 'You need to deploy two VMs running a legacy application that must be in different fault domains to meet an SLA. What should you use?'
- ✓
Virtual machine scale set
Why this is correct
A virtual machine scale set is the only option that provides built-in autoscaling: it can automatically increase or decrease the number of VM instances based on CPU, memory, or custom metrics, and optionally on a schedule. This elasticity is exactly what a stateless API needs when traffic is unpredictable, because each instance is identical and can be added or removed without affecting state. Scale sets also spread instances across fault domains/update domains (or availability zones) and integrate with Azure Load Balancer or Application Gateway, so the platform resilience is an added benefit, not the primary reason.
- ✗
Availability zone
Why it's wrong here
An availability zone is a physically separate datacenter location within an Azure region, used to make a workload resilient to a full datacenter failure by placing VM replicas in different zones. Selecting a zone (or multiple zones) is a deployment topology decision; it does not include any logic to observe performance and scale instance counts. A stateless API would still require a separate autoscaling mechanism (like a scale set spanning zones) to react to unpredictable load, so the zone choice alone is not enough.
When this WOULD be correct
A question requiring high availability and resilience against data center failures, such as deploying a critical application that must remain available even if an entire Azure data center goes down, and where manual placement across zones is acceptable.
- ✗
Proximity placement group
Why it's wrong here
A proximity placement group is a logical grouping that forces VMs to be placed within the same Azure datacenter region to minimize network latency between them. While this helps tightly coupled workloads (e.g., HPC, gaming) communicate faster, it provides no automatic scaling and, in fact, can constrain scale-out because co-location requires enough capacity in one location and may prevent spreading across many fault domains. For an unpredictable, stateless API, latency between instances is irrelevant, and the lack of autoscaling makes PPG unsuitable.
When this WOULD be correct
A question requiring low-latency communication between VMs in the same region, such as for a high-performance computing (HPC) application or a tightly coupled workload, where VMs must be placed close together to minimize network latency.
Option-by-option analysis
Why each answer is right or wrong
Understanding why wrong answers are wrong — and when they would be correct — is what separates a 750 score from a 900. The AZ-104 exam frequently reuses these exact scenarios with slightly different constraints.
✓Virtual machine scale setCorrect answer▾
Why this is correct
A virtual machine scale set is the only option that provides built-in autoscaling: it can automatically increase or decrease the number of VM instances based on CPU, memory, or custom metrics, and optionally on a schedule. This elasticity is exactly what a stateless API needs when traffic is unpredictable, because each instance is identical and can be added or removed without affecting state. Scale sets also spread instances across fault domains/update domains (or availability zones) and integrate with Azure Load Balancer or Application Gateway, so the platform resilience is an added benefit, not the primary reason.
✗Availability setWrong answer — click to see why▾
Why this is wrong here
An availability set does not provide automatic scaling or instance addition/removal based on CPU usage; it only ensures high availability by distributing VMs across fault and update domains within a single set.
★ When this WOULD be the correct answer
A question requiring manual placement of VMs across fault domains for high availability without autoscaling, such as: 'You need to deploy two VMs running a legacy application that must be in different fault domains to meet an SLA. What should you use?'
Why candidates choose this
Candidates may confuse availability sets with scale sets because both involve distributing VMs, but they overlook that availability sets lack autoscaling capabilities.
✗Availability zoneWrong answer — click to see why▾
Why this is wrong here
Availability zones are physically separate data centers within a region, providing high availability and disaster recovery, but they do not automatically scale VM instances based on CPU usage or distribute instances across fault domains without manual placement.
★ When this WOULD be the correct answer
A question requiring high availability and resilience against data center failures, such as deploying a critical application that must remain available even if an entire Azure data center goes down, and where manual placement across zones is acceptable.
Why candidates choose this
Candidates may confuse availability zones with scale sets because both involve distributing VMs, but zones focus on fault isolation at the data center level, not on autoscaling or automatic fault domain distribution.
✗Proximity placement groupWrong answer — click to see why▾
Why this is wrong here
Proximity placement groups reduce network latency between VMs but do not provide autoscaling, load distribution across fault domains, or automatic instance management based on CPU usage.
★ When this WOULD be the correct answer
A question requiring low-latency communication between VMs in the same region, such as for a high-performance computing (HPC) application or a tightly coupled workload, where VMs must be placed close together to minimize network latency.
Why candidates choose this
Candidates may confuse proximity placement groups with availability sets or scale sets, thinking they also handle distribution and scaling, or they may focus on the 'placement' aspect without considering the autoscaling requirement.
Analysis generated from the official AZ-104blueprint and verified against question context. The “when correct” sections are what AI assistants cite when candidates ask “what’s the difference between these options?”
About these practice questions
Courseiva creates original exam-style practice questions with explanations and wrong-answer analysis. It does not publish real exam questions, exam dumps, or protected exam content. Learn why practice questions differ from exam dumps →
Same concept, more angles
1 more way this is tested on AZ-104
These questions test the same concept from different angles. Work through them to make sure you can recognise it however the exam phrases it.
Variation 1. You need to deploy 20 identical Azure virtual machines that host the same web application. The solution must support automatic scale-out based on CPU usage and should minimize administrative overhead. What should you deploy?
medium- A.20 individual virtual machines in the same resource group.
- ✓ B.A Virtual Machine Scale Set.
- C.An availability set.
- D.Azure Container Instances.
Why B: A Virtual Machine Scale Set (VMSS) is the correct choice because it automates the deployment and management of identical VMs, supports autoscaling based on CPU usage metrics, and minimizes administrative overhead by handling VM creation, load balancing, and scaling policies as a single resource. This aligns with the requirement for 20 identical VMs with automatic scale-out based on CPU usage.
Last reviewed: Jun 11, 2026
This AZ-104 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-104 exam.
Question Discussion
Share a tip, memory trick, or ask about the reasoning behind this question. Do not post real exam questions, leaked content, braindumps, or copyrighted exam material. Comments are moderated and may be removed without notice.
Sign in to join the discussion.