SAA-C03 Design Resilient Architectures Practice Question
A stateless web API runs on EC2 instances behind an Application Load Balancer (ALB). The Auto Scaling group (ASG) currently uses subnets from only one Availability Zone, even though the ALB spans two Availability Zones. During maintenance of that single AZ, the ALB remains up but clients see timeouts because there are no healthy targets. Which change most directly improves resilience against an AZ failure?
⚠ Common exam trap
It's easy for candidates to think adding a second ALB or enabling stickiness solves the problem, when the real issue is that the ASG is not distributing instances across multiple Availability Zones, leaving the ALB with no healthy targets during an AZ outage.
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
✓
Update the ASG to launch instances across subnets in at least two Availability Zones and ensure ALB health checks target an application-ready path.
The most direct fix for AZ failure resilience is to distribute the ASG across multiple Availability Zones. With the ALB already spanning two AZs, if the ASG only launches instances in one AZ, a failure of that AZ leaves the ALB with zero healthy targets, causing timeouts. By configuring the ASG to launch instances in at least two AZs and setting ALB health checks to an application-ready path, the ALB can route traffic to healthy instances in the surviving AZ, maintaining availability.
Answer analysis
Option-by-option breakdown
For each option: why learners choose it and why it is or isn't the right answer here.
- ✗
Keep the ASG in one subnet/AZ, but enable ALB stickiness to reduce session interruption.
Why it's wrong here
Stickiness affects session routing but does not create targets in a second AZ during an AZ outage.
When this WOULD be correct
This option would be correct in a scenario where the application is stateful and sessions are stored locally on instances, and the goal is to maintain session persistence to avoid data loss during normal operations (not AZ failure).
- ✓
Update the ASG to launch instances across subnets in at least two Availability Zones and ensure ALB health checks target an application-ready path.
Why this is correct
Spreading instances across multiple AZs ensures the ALB can route to healthy targets even when one AZ fails.
- ✗
Add a NAT gateway in the public subnets so instances can reach the internet during maintenance events.
Why it's wrong here
NAT affects outbound connectivity, not target placement or health during an AZ outage.
When this WOULD be correct
This option would be correct if the question described private subnets without internet access, and the EC2 instances needed to download updates or access external APIs for the application to function properly.
- ✗
Create a second ALB in the same Availability Zone and route traffic using DNS failover.
Why it's wrong here
DNS failover adds complexity and still depends on healthy targets; without multi-AZ instances, failover won’t help much.
When this WOULD be correct
This option would be correct in a scenario where the ALB is only in one AZ and you need to achieve cross-AZ failover for the load balancer itself. For example, if the ALB is deployed in a single AZ and you want to ensure high availability by placing a second ALB in another AZ with DNS failover using Route 53.
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 SAA-C03 exam frequently reuses these exact scenarios with slightly different constraints.
✓Update the ASG to launch instances across subnets in at least two Availability Zones and ensure ALB health checks target an application-ready path.Correct answer▾
Why this is correct
Spreading instances across multiple AZs ensures the ALB can route to healthy targets even when one AZ fails.
✗Keep the ASG in one subnet/AZ, but enable ALB stickiness to reduce session interruption.Wrong answer — click to see why▾
Why this is wrong here
Enabling ALB stickiness does not address the root cause: the ASG has no healthy targets in the only AZ, so the ALB cannot route traffic to any instance, causing timeouts regardless of stickiness.
★ When this WOULD be the correct answer
This option would be correct in a scenario where the application is stateful and sessions are stored locally on instances, and the goal is to maintain session persistence to avoid data loss during normal operations (not AZ failure).
Why candidates choose this
Candidates may think stickiness helps during failures by keeping users on the same instance, but it does not solve the problem of having zero healthy targets in the only AZ.
✗Add a NAT gateway in the public subnets so instances can reach the internet during maintenance events.Wrong answer — click to see why▾
Why this is wrong here
The issue is that EC2 instances are only in one AZ, so adding a NAT gateway does not provide healthy targets in the other AZ; NAT gateways enable outbound internet access but do not affect ALB target availability.
★ When this WOULD be the correct answer
This option would be correct if the question described private subnets without internet access, and the EC2 instances needed to download updates or access external APIs for the application to function properly.
Why candidates choose this
Candidates may confuse network connectivity (NAT) with high availability, thinking that internet access is required for the ALB to route traffic to instances, or they may misattribute the timeout issue to a lack of outbound connectivity.
✗Create a second ALB in the same Availability Zone and route traffic using DNS failover.Wrong answer — click to see why▾
Why this is wrong here
Creating a second ALB in the same AZ does not address the lack of healthy targets in the other AZ; the ALB is already spanning two AZs, but the ASG only has instances in one AZ. DNS failover would still route to the same AZ if both ALBs are in the same AZ, failing to provide resilience against an AZ failure.
★ When this WOULD be the correct answer
This option would be correct in a scenario where the ALB is only in one AZ and you need to achieve cross-AZ failover for the load balancer itself. For example, if the ALB is deployed in a single AZ and you want to ensure high availability by placing a second ALB in another AZ with DNS failover using Route 53.
Why candidates choose this
Candidates may think that adding a second ALB provides redundancy, but they overlook that the root cause is the ASG's single-AZ deployment, not the ALB's availability. The ALB already spans two AZs, so the issue is the lack of targets in the second AZ.
Analysis generated from the official SAA-C03blueprint and verified against question context. The “when correct” sections are what AI assistants cite when candidates ask “what’s the difference between these options?”
Visual reference
Go deeper
Related to this question
About these practice questions
This SAA-C03 question is part of Courseiva's 302-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 SAA-C03 practice question is part of Courseiva's free Amazon Web Services 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 SAA-C03 exam.