Courseiva
Resilient Cloud SolutionsmediumMultiple SelectObjective-mapped

DOP-C02 Resilient Cloud Solutions Practice Question

A company is designing a highly available architecture for a stateless web application using AWS services. Which TWO steps should they take to achieve high availability?

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

Deploy EC2 instances in multiple Availability Zones

Deploying EC2 instances across multiple Availability Zones (B) ensures that the application remains available even if one AZ fails. Using an Application Load Balancer (E) distributes incoming traffic across these instances and performs health checks, automatically routing traffic away from unhealthy instances. Option A is incorrect because storing session state on an EBS volume attached to each instance tightly couples state to a single instance, making it unavailable if the instance fails; instead, use a shared session store like ElastiCache or DynamoDB. Option C is incorrect because a single NAT instance is a single point of failure; for high availability, use a NAT Gateway or deploy NAT instances across multiple AZs. Option D is incorrect because instance type selection (M5) does not contribute to high availability; availability is achieved through architectural redundancy, not hardware specifications.

Answer analysis

Option-by-option breakdown

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

  • Store session state in an EBS volume attached to each instance

    Why it's wrong here

    EBS volumes are zone-bound and can only be attached to a single EC2 instance at a time, so storing session state there tightly couples session data to a specific host. If that instance or its Availability Zone fails, the session data becomes inaccessible until manual recovery steps such as detaching and reattaching the volume are taken, causing downtime. Highly available architectures must store session state in a shared external service like ElastiCache or DynamoDB that survives individual instance failures.

  • Deploy EC2 instances in multiple Availability Zones

    Why this is correct

    Distributing EC2 instances across multiple Availability Zones ensures the application can tolerate a complete failure of one physical data center, because the remaining instances continue to serve traffic. Each AZ has independent power, cooling, and network connectivity, so an outage in one AZ does not affect the others. This redundancy is the fundamental building block of high availability on AWS and is a necessary condition for achieving a higher service-level agreement.

  • Use a single NAT instance in a public subnet

    Why it's wrong here

    A single NAT instance in a public subnet is a monolithic point of failure in the network path for all private subnet traffic. If the instance fails, is terminated, or becomes unhealthy due to OS-level issues, all outbound internet access from the private subnets is lost. Moreover, a NAT instance is a self-managed EC2 instance that requires manual failover, unlike a NAT gateway, which is fully managed and can be deployed per Availability Zone to provide redundant connectivity.

  • Use only M5 instance types for better performance

    Why it's wrong here

    Instance type selection, such as choosing M5 general-purpose instances, influences compute, memory, and network performance but has no bearing on the resilience or availability of the architecture. Availability depends on redundancy through multiple instances, health checking, auto scaling, and distribution across Availability Zones. A larger or different instance type does not protect against failures; it can even increase the blast radius if a single instance hosts critical state without replication.

  • Use an Application Load Balancer to distribute traffic

    Why this is correct

    An Application Load Balancer provides Layer-7 traffic distribution and performs active health checks on registered targets, automatically removing unhealthy instances from the rotation and rerouting traffic to healthy ones. When combined with instances spread across multiple Availability Zones, the ALB becomes a regional, fault-tolerant entry point that absorbs failures and balances load dynamically. This makes it a core component of a highly available architecture, although it must be paired with redundant targets to be effective.

Visual reference

Inside (Private) PC-A 10.0.0.1 PC-B 10.0.0.2 NAT Router Outside (Public) 203.0.113.1 Inside Global Server PAT: many private IPs share one public IP via unique port numbers

About these practice questions

This DOP-C02 question is part of Courseiva's 1,013-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 →

How Courseiva writes practice questions · Editorial policy

JA

Written by Johnson Ajibi, MSc IT Security

Senior Network & Security Engineer · founder of Courseiva

This DOP-C02 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 DOP-C02 exam.