Courseiva

SAA-C03 Design Resilient Architectures Practice Question

A company runs a stateful web application on a single Amazon EC2 instance in a public subnet. The application stores session data on the instance's root volume. The company wants to make the application highly available across two Availability Zones and ensure that session data is preserved if an instance fails. Which solution should a solutions architect recommend?

⚠ Common exam trap

The trap here is assuming that sticky sessions or EBS snapshots can preserve session state across instance failures, when session data stored on an instance's root volume is lost if the instance fails.

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

✓

Move the session data to an Amazon ElastiCache for Redis cluster with Multi-AZ enabled, and configure an Auto Scaling group across two Availability Zones behind an Application Load Balancer.

The recommended solution is to externalize session data to an ElastiCache for Redis cluster with Multi-AZ enabled and run the application in an Auto Scaling group across two Availability Zones behind an Application Load Balancer. This design ensures that session data survives instance failures and the application remains available if one AZ fails. The load balancer distributes traffic to healthy instances.

Answer analysis

Option-by-option breakdown

For each option: why learners choose it and why it is or isn't the right answer here.

  • ✗

    Create an Amazon Machine Image (AMI) of the instance, launch two new instances in two Availability Zones, and configure an Application Load Balancer with sticky sessions.

    Why it's wrong here

    Launching two instances from an AMI does not preserve session data because each instance has its own root volume. Sticky sessions would route a user to the same instance, but if that instance fails, the session data is lost. This solution does not meet the requirement to preserve session data across instance failures.

  • ✓

    Move the session data to an Amazon ElastiCache for Redis cluster with Multi-AZ enabled, and configure an Auto Scaling group across two Availability Zones behind an Application Load Balancer.

    Why this is correct

    Storing session data in ElastiCache for Redis with Multi-AZ enabled externalizes the state, allowing any instance in the Auto Scaling group to access it. The Auto Scaling group across two Availability Zones ensures high availability, and the Application Load Balancer distributes traffic. If an instance fails, a new one launches and retrieves session data from ElastiCache.

  • ✗

    Attach an Amazon Elastic Block Store (EBS) volume to the instance and create a snapshot schedule. Launch a second instance in another Availability Zone and attach the same EBS volume.

    Why it's wrong here

    An EBS volume can only be attached to one EC2 instance at a time within the same Availability Zone (unless using Multi-Attach for io1/io2 in a cluster-aware setup, which is not applicable here). Attaching the same volume to an instance in another AZ is not possible. This design does not provide high availability or preserve session data.

  • ✗

    Enable termination protection on the instance and create a scheduled AWS Lambda function to reboot the instance if it becomes unhealthy.

    Why it's wrong here

    Termination protection prevents accidental termination but does not automatically recover from failures. A Lambda function that reboots the instance does not address the loss of session data on the root volume, nor does it provide redundancy across Availability Zones. This solution is not highly available and does not preserve session data.

Visual reference

192.168.1.0 /24 256 addresses (254 usable) 192.168.1.0 /25 Subnet A 128 addr (126 usable) 192.168.1.128 /25 Subnet B 128 addr (126 usable) Borrowing 1 bit from host portion creates 2 subnets (/25)

About these practice questions

Courseiva writes every SAA-C03 question from scratch — 935 in total, each with an explanation and a wrong-answer breakdown. None are copied from real exams or dumps. Learn why practice questions differ from exam dumps →

How Courseiva writes practice questions · Editorial policy

JA

Written and reviewed by Johnson Ajibi, MSc IT Security

Senior Network & Security Engineer · founder of Courseiva

Last reviewed September 2026 · checked against the official Amazon Web Services exam blueprint

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.