SAA-C03 · 26% of the exam
Design Resilient Architectures practice questions
10 free Design Resilient Architectures questions for the AWS Certified Solutions Architect – Associate (SAA-C03) exam, each with the correct answer and an explanation for every option.
What this domain covers
Architectures that stay up and recover: decoupling, multi-AZ and multi-Region designs, scaling and disaster recovery strategies.
- Exam weight
- 26%
- On a real exam
- ≈ 17 questions
- In our bank
- 161 questions
Topics that come up most
- Multi-AZ vs read replicas
- Auto Scaling groups behind load balancers
- SQS, SNS and EventBridge for decoupling
- Backup and DR strategies from backup-restore to active-active
- Route 53 routing and failover
How to study it
Learn the four DR strategies with their rough RTO/RPO and cost order; many questions are 'cheapest option that still meets this RTO'.
Sample Design Resilient Architectures questions
Try each one before opening the answer. Original questions written to the official exam objectives.
Question 1
A company uses AWS Organizations and AWS Backup to protect its Amazon EBS volumes and Amazon RDS databases. For disaster recovery, it must keep copies of these backups in a second AWS Region and in a separate, dedicated backup account. The copies must be created automatically and managed centrally. Which AWS Backup capabilities meet these requirements? (Choose two.)
Select 2 answers.
- AA copy action in the backup plan rule that copies recovery points to a backup vault in the DR Region
- BCross-account backup that copies recovery points to a vault in a backup account in the same organization
- CAWS Backup Vault Lock in compliance mode applied to the backup vault in the production account
- DA lifecycle rule that moves recovery points to cold storage after 30 days in the source vault
- ERestoring recovery points from the production account directly into the DR account when needed
Show answer and explanation
Answer: A) A copy action in the backup plan rule that copies recovery points to a backup vault in the DR Region; B) Cross-account backup that copies recovery points to a vault in a backup account in the same organization
AWS Backup plan rules can automatically copy recovery points to a vault in another Region and to a vault in another account in the same organization. Vault Lock, cold storage lifecycle rules, and restores don't create off-Region or off-account copies.
- AAWS Backup can copy backups to another Region automatically as part of a scheduled backup plan, which meets the geographic DR requirement.
- BAfter cross-account backup is enabled from the Organizations management account, and the destination vault's access policy allows backup:CopyIntoBackupVault, a backup plan can copy recovery points into another account's vault.
- CVault Lock makes recovery points immutable (WORM) and protects them from deletion. It doesn't copy them to another Region or account, so the only copy still sits in the production account and Region.
- DCold storage lowers storage cost but keeps backups in the same vault, Region, and account. AWS Backup also doesn't support cross-Region or cross-account copies for cold-tier storage.
- EAWS Backup doesn't support restoring a backup from one account directly into another. You must first copy the backup to the other account and then restore it there. This option also creates no DR copies ahead of time.
Question 2
A company uses failover records in a Route 53 private hosted zone for an internal application. The primary EC2 instances are in a VPC and have only private IP addresses. The company wants Route 53 to fail over to the secondary resource when the primary instances become impaired. How should the health check for the primary record be configured?
- ACreate a CloudWatch alarm on the instances' StatusCheckFailed metric and a health check that monitors the alarm
- BCreate an endpoint health check that sends HTTP requests to the private IP address of each primary instance
- CCreate a calculated health check whose child health checks each target one primary instance's private IP
- DCreate an endpoint health check that uses the private hosted zone's domain name so it resolves inside the VPC
Show answer and explanation
Answer: A) Create a CloudWatch alarm on the instances' StatusCheckFailed metric and a health check that monitors the alarm
Route 53 health checks can monitor endpoints, other health checks (calculated checks), or CloudWatch alarms. Because health checkers run outside the VPC, a health check based on a CloudWatch alarm is the way to monitor instances that have only private IP addresses.
- ARoute 53 health checkers are outside the VPC. AWS recommends a health check that monitors the data stream of a CloudWatch alarm, for example on StatusCheckFailed, for instances that have only private IP addresses.
- BEndpoint health checks are sent from Route 53 health checkers outside the VPC, so they cannot reach private IP addresses. An instance would need a public IP address for this to work.
- CA calculated health check only combines the status of its child health checks. The children here are endpoint checks on private IPs, which Route 53 health checkers cannot reach, so the result is still wrong.
- DHealth checkers send their requests over the internet from outside the VPC. Using a private domain name does not let them reach resources inside the VPC.
Question 3
An e-commerce site knows a marketing campaign will drive a large, predictable traffic surge every day at 12:00. Reactive scaling alone is too slow to absorb the sudden jump. What should be added?
- AA scheduled scaling action on the Auto Scaling group that raises minimum capacity shortly before 12:00, alongside dynamic (target-tracking) scaling for the rest of the day
- BOnly a target-tracking policy on CPU
- CA fixed capacity sized for the noon peak, all day
- DManually adding instances each day at 11:55
Show answer and explanation
Answer: A) A scheduled scaling action on the Auto Scaling group that raises minimum capacity shortly before 12:00, alongside dynamic (target-tracking) scaling for the rest of the day
- AScheduled scaling pre-provisions capacity for a known event so instances are already warm when the spike hits; dynamic scaling then handles the unpredictable remainder.
- BReactive policies lag a sudden step change; the scenario already says that isn't fast enough.
- CThat wastes capacity for the other 23 hours.
- DManual daily intervention is error-prone; scheduled scaling automates exactly this.
Question 4
Private instances in three Availability Zones currently route all outbound internet traffic through a single NAT gateway in one AZ. What is the resilient design?
- ADeploy one NAT gateway per Availability Zone and give each AZ's private subnets a route table that uses the NAT gateway in the same AZ
- BKeep the single NAT gateway but make it a larger size
- CGive every private instance a public IP instead
- DRoute outbound traffic through an internet gateway directly from the private subnets
Show answer and explanation
Answer: A) Deploy one NAT gateway per Availability Zone and give each AZ's private subnets a route table that uses the NAT gateway in the same AZ
- AA per-AZ NAT gateway removes the cross-AZ single point of failure: if one AZ (or its NAT gateway) fails, the other AZs keep their outbound connectivity.
- BSize doesn't change the fact that one AZ's failure takes down internet egress for every AZ routed through it.
- CThat exposes all instances directly to the internet, defeating the private-subnet design.
- DPrivate subnets by definition have no route to an internet gateway; adding one makes them public.
Question 5
An application writes user uploads to local instance storage. Users report lost files after scaling events. What is the resilient fix?
- AStore uploads in Amazon S3 (or Amazon EFS for shared file semantics) instead of instance storage
- BDisable Auto Scaling so instances are never replaced
- CIncrease the instance store size
- DTake EBS snapshots more often
Show answer and explanation
Answer: A) Store uploads in Amazon S3 (or Amazon EFS for shared file semantics) instead of instance storage
- ADurable shared storage decouples data from any single instance so scale-in or replacement does not lose files.
- BThat trades away elasticity and still loses data on any instance failure.
- CInstance store is still ephemeral regardless of size.
- DInstance store is not EBS, and snapshots do not make active writes durable in real time.
Question 6
A fleet of EC2 Spot Instances processes background jobs that each take several minutes. A Spot Instance can be interrupted in the middle of a job, and no job may be lost. Which design meets this requirement?
- AWorkers receive jobs from an Amazon SQS queue and delete each message only after the job has finished successfully
- BWorkers receive jobs from an Amazon SQS queue and delete each message as soon as it is received, before starting the job
- CJobs are published to an Amazon SNS topic that pushes each job directly to a worker's HTTP endpoint for processing
- DEach worker keeps its own in-memory job queue and saves progress checkpoints to the instance store volume
Show answer and explanation
Answer: A) Workers receive jobs from an Amazon SQS queue and delete each message only after the job has finished successfully
Workers should pull jobs from SQS and delete each message only after the job finishes. If a worker is terminated mid-job, the visibility timeout expires and the message reappears for another worker.
- AIf a worker is terminated before deleting the message, the message becomes visible again when the visibility timeout expires. Another worker can then process it, so the job is not lost.
- BOnce the message is deleted, the queue no longer has a copy. If the worker is interrupted mid-job, the job is lost.
- CSNS pushes the message and considers it delivered once the endpoint accepts it. If the worker then dies mid-job, nothing makes the job available to another worker.
- DMemory and instance store data are lost when the instance is terminated, so pending and in-progress jobs can't be recovered.
Question 7
EC2 instances in an Auto Scaling group sit behind an Application Load Balancer. On one instance, the web application process hangs and returns errors, but the instance still passes its EC2 system and instance status checks. Which configuration will detect this failure and stop the load balancer from routing requests to that instance?
- AConfigure the target group health check to request an application path such as /health that exercises the app
- BRely on the EC2 system status check, which monitors the AWS host hardware and network the instance runs on
- CCreate a CloudWatch alarm on StatusCheckFailed_Instance that triggers an EC2 instance recover action
- DKeep the Auto Scaling group's default EC2 health check type so that impaired instances are replaced
Show answer and explanation
Answer: A) Configure the target group health check to request an application path such as /health that exercises the app
EC2 system and instance status checks cover host and OS health, not the application's responses. An ALB target group health check that probes an application path marks the hung instance unhealthy and stops routing to it.
- AThe ALB sends HTTP requests to the configured health check path. After UnhealthyThresholdCount consecutive failures, it takes the target out of service and routes only to healthy targets. Setting the Auto Scaling group's health check type to ELB would also get the instance replaced.
- BSystem status checks find problems with the underlying AWS host, such as power or network loss. They don't look at the application's responses, and in this scenario the check is passing.
- CThe instance status check tests OS-level reachability with an ARP request to the network interface, and it is passing here, so the alarm never fires. A recover action also doesn't remove a target from the load balancer.
- DWith the default settings, Auto Scaling uses the built-in EC2 status checks, which still pass when only the application has hung. Nothing tells the load balancer to stop sending traffic.
Question 8
A global application must run active-active in several AWS Regions. Users in every Region must be able to read and write locally, and if a Region fails, traffic must move to the remaining Regions automatically. Which TWO building blocks support this design? (Choose two.)
Select 2 answers.
- AAmazon DynamoDB global tables with a replica table in each Region the application runs in
- BAmazon Route 53 latency-based records with health checks on each Region's endpoint
- CAn Amazon Aurora global database with a secondary cluster in each additional Region
- DAmazon Route 53 failover records with a primary and a secondary Regional endpoint
- EAn Amazon Route 53 simple record that lists the endpoint IP addresses of every Region
Show answer and explanation
Answer: A) Amazon DynamoDB global tables with a replica table in each Region the application runs in; B) Amazon Route 53 latency-based records with health checks on each Region's endpoint
Active-active across Regions needs a data store that accepts writes in every Region (DynamoDB global tables) and DNS routing that sends users to a nearby healthy Region (Route 53 latency routing with health checks). Aurora Global Database has a single writer Region, and failover routing is active-passive.
- AGlobal tables are multi-Region and multi-active. Any replica can serve reads and writes, and data is replicated automatically, so each Region serves its users locally and traffic can shift away from a failed Region.
- BLatency routing sends users to the Region with the best latency. Health checks take a failed Region's endpoint out of DNS answers, so users are sent to the healthy Regions.
- CAurora Global Database has one primary Region where data is written and read-only secondary Regions. Write forwarding still sends writes to the primary, so this is not active-active for writes.
- DFailover routing is for active-passive setups. The secondary gets traffic only when the primary is unhealthy, so users are not served locally in every Region.
- ESimple routing returns the values in random order without considering latency, and the IP addresses are not health checked, so users can be sent to a failed Region.
Question 9
A stateless web application runs on an Auto Scaling group behind an Application Load Balancer across three Availability Zones. Some requests take up to 90 seconds to complete. To speed up deployments, an engineer recently set the target group's deregistration delay to 30 seconds. Since then, users occasionally receive 5xx errors on requests that were already in progress when the Auto Scaling group scales in. What should a solutions architect do to fix this?
- ARaise the target group's deregistration delay to a value longer than the slowest request, such as 120 seconds
- BEnable sticky sessions on the target group so each client keeps returning to the same instance
- CTurn on slow start mode on the target group so instances ramp up their share of traffic gradually
- DShorten the target group health check interval so the ALB detects terminating instances sooner
Show answer and explanation
Answer: A) Raise the target group's deregistration delay to a value longer than the slowest request, such as 120 seconds
During scale-in, the ALB drains a deregistering target for the deregistration delay before Auto Scaling can terminate the instance. If the delay (lowered here to 30 s) is shorter than the longest request (90 s), in-flight requests fail. Set the delay longer than the slowest request.
- ACorrect. A deregistering target enters the draining state. The ALB stops sending it new requests and waits for the deregistration delay before the instance can be terminated. With a 30-second delay, 90-second requests are cut off, and if a target closes connections before draining finishes, clients get 500-level errors. A delay longer than the slowest request lets those requests finish.
- BIncorrect. Stickiness only decides which target receives a client's later requests, and the ALB sends new requests away from draining targets anyway. It does not keep a deregistering instance alive long enough for in-flight requests to finish.
- CIncorrect. Slow start gives newly registered, healthy targets time to warm up before they receive a full share of requests. It has no effect on targets being deregistered during scale-in.
- DIncorrect. Detecting an unhealthy target sooner does not let requests already running on it finish. How long a deregistering target is allowed to drain is controlled by the deregistration delay, not by health checks.
Question 10
An Auto Scaling group uses its default health check settings, and its instances are registered with an Application Load Balancer target group. When the application process on an instance crashes, the target group marks that instance unhealthy and stops routing to it. However, the Auto Scaling group keeps the instance InService indefinitely. No EC2 application status checks are configured. What should a solutions architect change so the Auto Scaling group replaces these instances automatically?
- ATurn on Elastic Load Balancing health checks for the Auto Scaling group
- BTurn on Amazon EBS health checks for the Auto Scaling group
- CIncrease the health check grace period for the Auto Scaling group
- DChange the target group's health check to a deeper application path such as /health
Show answer and explanation
Answer: A) Turn on Elastic Load Balancing health checks for the Auto Scaling group
An Auto Scaling group defaults to EC2 status checks, which only cover instance state and hardware/software impairment, and it ignores load balancer health results until ELB health checks are turned on. Turning them on lets the group replace instances whose application fails the load balancer check.
- ACorrect. By default, Auto Scaling uses only EC2 status checks and ignores load balancer health results. Once ELB health checks are turned on for the group, an instance the load balancer reports as unhealthy is marked unhealthy and replaced.
- BIncorrect. EBS health checks only confirm that the instance's EBS volumes are reachable and passing I/O status checks. A crashed application process with healthy volumes wouldn't fail them.
- CIncorrect. The grace period only delays when health checks begin after launch. It doesn't change which signals Auto Scaling uses, so load balancer results would still be ignored.
- DIncorrect. The target group already detects the failure. The problem is that the Auto Scaling group isn't using load balancer health results at all, so a better load balancer check alone won't trigger replacement.
Design Resilient Architectures: FAQs
How much of the SAA-C03 exam is Design Resilient Architectures?
Design Resilient Architectures is 26% of the SAA-C03 exam by the official exam guide's weighting, which on a 65-question form works out to roughly 17 questions. The real exam's exact split varies by form.
What does the Design Resilient Architectures domain cover?
Architectures that stay up and recover: decoupling, multi-AZ and multi-Region designs, scaling and disaster recovery strategies.
How should I study Design Resilient Architectures for SAA-C03?
Learn the four DR strategies with their rough RTO/RPO and cost order; many questions are 'cheapest option that still meets this RTO'.
Where can I practise more Design Resilient Architectures questions?
This page has 10 free Design Resilient Architectures questions with answers. CertRidge's SAA-C03 question bank has 161 questions in this domain. Every practice exam result breaks your score down by domain, and Review Mode re-drills the questions you missed.
Get Design Resilient Architectures exam-ready
The full SAA-C03 bank has 161 Design Resilient Architectures questions. Timed practice exams match the real exam's length and domain weights, every result shows your score per domain, and Review Mode re-drills the questions you missed.
Not affiliated with AWS; questions are original and never copied from the real exam.