A stateless Linux API should start with 2 instances, scale out to 6 when average CPU stays above 75 percent for 10 minutes, and scale back in when load drops. Which Azure compute resource should the administrator deploy?
A virtual machine scale set is built for identical compute instances that need to scale horizontally. Autoscale rules can watch CPU, adjust the instance count automatically, and maintain the minimum and maximum capacity you define. This fits stateless services very well because any instance can handle incoming requests once traffic is distributed across the set.
Why this answer
A virtual machine scale set (VMSS) with autoscale rules is the correct choice because it natively supports scaling out and scaling in based on performance metrics like average CPU percentage. The requirement for a stateless Linux API with a minimum of 2 instances, scaling to 6 when CPU exceeds 75% for 10 minutes, and scaling back in when load drops is exactly the use case VMSS is designed for. Autoscale rules can be configured to use a scale-out and scale-in policy with a cool-down period, ensuring the application remains responsive while optimizing cost.
Exam trap
The trap here is that candidates may confuse an availability set with autoscaling, not realizing that availability sets only provide redundancy and fault tolerance, not dynamic scaling, or they may think a load balancer with two VMs is sufficient, overlooking the requirement for automatic scaling based on CPU thresholds.
Why the other options are wrong
An availability set with manual VM resizing does not provide automatic scaling based on CPU thresholds; it only ensures high availability across fault domains, not dynamic scaling.
A single Standard D-series VM with scheduled shutdown cannot scale out to 6 instances or handle variable load; it's a fixed-size VM that only shuts down on a schedule, not based on CPU metrics.
This setup lacks autoscaling; scaling requires manual intervention or additional configuration, and unmanaged VMs do not support the automated scale-out/in rules needed for the stateless API's CPU-based scaling requirements.