← AWS Solutions Architect Associate (SAA-C03)
Test yourself →

Design resilient & highly available architectures

What resilience and HA actually mean

High availability (HA) means minimising downtime; resilience means the system recovers automatically from failure. In the SAA-C03 exam these ideas run through nearly every domain, so learn the AWS-native patterns rather than generic theory.

Multi-AZ vs Multi-Region

An Availability Zone (AZ) is one or more discrete data centres with independent power, cooling and networking, connected by low-latency links. A Region has a minimum of 3 AZs (most have 3, some have more). Spreading resources across at least 2 AZs protects against a single data-centre failure; multi-Region protects against a full Region outage but adds latency and data-transfer cost, and needs a replication strategy (e.g. S3 Cross-Region Replication, DynamoDB Global Tables, Aurora Global Database).

Compute resilience

  • Use an Auto Scaling Group (ASG) across multiple AZs with a minimum, desired and maximum capacity, plus health checks (EC2 or ELB) so unhealthy instances are replaced automatically.
  • Put an Elastic Load Balancer (ALB/NLB) in front — it distributes traffic and stops routing to failed targets.
  • For stateless resilience, never store session state on the instance; use ElastiCache, DynamoDB or sticky sessions only as a last resort.

Database resilience

  • RDS Multi-AZ gives a synchronous standby in a second AZ with automatic failover (typically 60-120 seconds) — this is for availability, not read scaling.
  • RDS Read Replicas (up to 15 for Aurora, 5 for most other engines) give read scaling and can be promoted manually to standalone if the primary fails — that is disaster recovery, not automatic HA.
  • Aurora Global Database replicates across Regions with typically under 1 second lag and enables fast Regional disaster recovery.
  • DynamoDB is multi-AZ by default within a Region at no extra design effort; Global Tables extend this multi-Region with active-active writes.

Storage and DNS

  • S3 is designed for 99.999999999% (11 nines) durability and stores data redundantly across at least 3 AZs by default.
  • Route 53 supports failover, weighted, latency and multi-value routing policies with health checks — failover routing is the classic HA/DR exam answer.
  • CloudFront plus S3 or multiple origins improves both performance and resilience by serving from edge locations.

Disaster Recovery (DR) strategies — know all four

1. Backup and Restore — cheapest, slowest (hours), highest RPO/RTO.

2. Pilot Light — minimal core infrastructure running, scale up on failover.

3. Warm Standby — a scaled-down but fully functional copy always running.

4. Multi-Site Active-Active — full production capacity in two+ Regions, lowest RPO/RTO, highest cost.

Common exam traps

  • RDS Multi-AZ is NOT for read scaling — that's Read Replicas.
  • Read Replica promotion is manual and is a DR action, not automatic failover.
  • 'Highly available' answers usually mean 'span AZs'; 'disaster recovery' answers usually mean 'span Regions'.
  • Loose coupling (SQS, SNS, EventBridge) between components improves resilience by preventing one failure cascading.
  • An AWS Region contains a minimum of 3 Availability Zones for HA design.
  • RDS Multi-AZ failover is automatic and synchronous, typically taking 60-120 seconds.
  • RDS Read Replicas support up to 15 for Aurora and up to 5 for most other engines, and promotion to standalone is manual.
  • S3 is designed for 99.999999999% (11 nines) durability, storing objects across at least 3 AZs.
  • DynamoDB is synchronously replicated across multiple AZs within a Region by default.
  • The 4 DR strategies in order of cost/speed are: Backup and Restore, Pilot Light, Warm Standby, Multi-Site Active-Active.
  • Route 53 failover routing policy with health checks is the standard exam answer for automated DNS-level failover.
  • Aurora Global Database replicates to secondary Regions with typically under 1 second of lag.
  • Auto Scaling Groups should span multiple AZs and use ELB or EC2 health checks to replace unhealthy instances automatically.
  • Multi-AZ improves availability within a Region; multi-Region improves disaster recovery across Regions.
  • Loose coupling using SQS, SNS or EventBridge prevents a failure in one component cascading to others.
  • CloudFront combined with multiple origins improves both latency and resilience by serving cached content from edge locations.
What is the minimum number of Availability Zones in an AWS Region?
3 AZs minimum per Region.
tap to reveal
Is RDS Multi-AZ used for read scaling or availability?
Availability only — it provides a synchronous standby for automatic failover, not read scaling.
tap to reveal
How long does RDS Multi-AZ automatic failover typically take?
Roughly 60-120 seconds.
tap to reveal
How many Read Replicas can Aurora support, and how are they promoted?
Up to 15 Read Replicas; promotion to a standalone writable instance is a manual action, used for DR.
tap to reveal
What durability figure does S3 target and across how many AZs?
99.999999999% (11 nines) durability, with data stored across at least 3 AZs.
tap to reveal
Name the 4 AWS disaster recovery strategies from cheapest/slowest to most expensive/fastest.
Backup and Restore, Pilot Light, Warm Standby, Multi-Site Active-Active.
tap to reveal
Which Route 53 routing policy is the classic answer for automated DNS failover?
Failover routing policy combined with health checks.
tap to reveal
What is DynamoDB's default availability model within a Region?
Data is synchronously replicated across multiple AZs within the Region automatically, no extra config needed.
tap to reveal
What replication lag does Aurora Global Database typically offer to secondary Regions?
Typically under 1 second.
tap to reveal
What should an Auto Scaling Group span for resilience, and what mechanism replaces failed instances?
It should span multiple AZs, using ELB or EC2 health checks to automatically terminate and replace unhealthy instances.
tap to reveal
What is the key difference between high availability and disaster recovery in AWS design terms?
HA typically means spanning multiple AZs within a Region to survive a data-centre failure; DR typically means spanning multiple Regions to survive a full Region outage.
tap to reveal
Which AWS services provide loose coupling to improve resilience between components?
SQS, SNS and EventBridge — they decouple producers and consumers so one component's failure does not cascade.
tap to reveal
Why is CloudFront useful for resilience, not just performance?
It can serve cached content from edge locations and support multiple origins, reducing load on and dependency on a single origin.
tap to reveal

Design secure applications & access (IAM, KMS)

IAM basics

IAM is global, not regional. It controls who (authentication) can do what (authorisation) on AWS resources.

  • Root user should never be used day-to-day — lock it down with MFA and avoid its access keys.
  • Users, groups and roles are IAM identities. Groups cannot be nested and cannot be logged into.
  • Roles are the secure way to grant temporary access — used by EC2 instances, Lambda, cross-account access, and federated users (via STS, Security Token Service).
  • Policies are JSON documents attached to identities or resources. Evaluation logic: explicit Deny always wins, then explicit Allow, then implicit Deny (default with no Allow).
  • Use the principle of least privilege — grant only the permissions needed.
  • IAM Policy Simulator and Access Analyzer help test and audit permissions before deploying.

Policy types

  • Identity-based policies attach to users/groups/roles.
  • Resource-based policies attach to resources (e.g. S3 bucket policies, KMS key policies) and can grant cross-account access without a role.
  • Permissions boundaries set the maximum permissions an identity can ever have — a guardrail, not a grant.
  • Service Control Policies (SCPs) live in AWS Organizations and cap permissions across whole accounts — even the root user in a member account cannot exceed an SCP.

Common exam mistake

Don't confuse permissions boundaries (per-identity ceiling) with SCPs (per-account/OU ceiling) — both are 'maximum' controls, neither grants access on its own; you still need an Allow.

KMS (Key Management Service)

KMS manages encryption keys for data at rest across AWS services (S3, EBS, RDS, etc).

  • Customer Master Keys (CMKs), now called KMS keys, never leave the KMS service unencrypted.
  • AWS-managed keys (aws/service-name) are free and rotate automatically every year; you cannot control their policy.
  • Customer-managed keys give full control over the key policy and rotation, and can be rotated automatically every year or on demand.
  • Envelope encryption is how KMS handles large data: a data key encrypts the actual data, and the KMS key encrypts the data key.
  • Symmetric KMS keys are used for most encrypt/decrypt use cases; asymmetric keys support signing or encryption where the public key must be shared.
  • KMS API calls (Encrypt, Decrypt, GenerateDataKey) are logged to CloudTrail, giving an audit trail of key use.
  • Key policies are the primary access-control mechanism for KMS keys — even with an IAM Allow, the key policy must also permit the action (or delegate to IAM via 'enable IAM policies').

Common exam mistake

Remember KMS keys are regional, unlike IAM. A key created in eu-west-2 cannot be used to decrypt data in us-east-1 directly — you'd need cross-region key replication (multi-Region keys) or re-encryption.

  • IAM is a global service — it is not scoped to a single AWS Region.
  • Explicit Deny always overrides any Allow in IAM policy evaluation.
  • IAM groups cannot be nested and cannot themselves be used to log in.
  • Roles provide temporary credentials via STS — the recommended way for EC2, Lambda and cross-account access.
  • Permissions boundaries cap the maximum permissions a single identity can have, but never grant permissions on their own.
  • Service Control Policies (SCPs) in AWS Organizations cap permissions across an entire account or OU, including root.
  • AWS-managed KMS keys rotate automatically every year and are free of charge.
  • Customer-managed KMS keys can be set to rotate automatically every year or rotated manually on demand.
  • Envelope encryption in KMS uses a data key to encrypt data, and the KMS key to encrypt that data key.
  • KMS keys are Region-specific — use multi-Region keys to replicate a key across Regions.
  • All KMS API calls (Encrypt, Decrypt, GenerateDataKey) are logged automatically in CloudTrail for audit.
  • A resource-based policy (like an S3 bucket policy or KMS key policy) can grant cross-account access without needing a role.
Is IAM a global or regional service?
Global — IAM identities and policies apply across all AWS Regions.
tap to reveal
In IAM policy evaluation, what always wins?
An explicit Deny always overrides any Allow.
tap to reveal
What is the default access decision when no policy explicitly allows an action?
Implicit Deny.
tap to reveal
How do EC2 instances and Lambda functions securely get AWS permissions without hard-coded keys?
By assuming an IAM role, which provides temporary credentials via STS.
tap to reveal
What does a permissions boundary do?
Sets the maximum permissions an IAM identity can have — it does not grant permissions itself.
tap to reveal
What is a Service Control Policy (SCP) and where does it apply?
A policy in AWS Organizations that caps the maximum permissions for an entire account or OU, including the root user.
tap to reveal
Can IAM groups be nested inside other groups?
No — IAM groups cannot be nested, and you cannot log in directly as a group.
tap to reveal
How often do AWS-managed KMS keys rotate, and can you control this?
Automatically every year; you cannot change or disable this for AWS-managed keys.
tap to reveal
What rotation options exist for customer-managed KMS keys?
Automatic annual rotation (can be enabled) or manual rotation on demand.
tap to reveal
What is envelope encryption in KMS?
A data key encrypts the actual data; the KMS key then encrypts that data key, avoiding sending large data to KMS directly.
tap to reveal
Are KMS keys global or regional?
Regional — a key in one Region cannot decrypt data tied to another Region unless you use a multi-Region key.
tap to reveal
Where are KMS API calls like Encrypt and Decrypt logged?
Automatically in CloudTrail, giving a full audit trail of key usage.
tap to reveal
What type of policy can grant cross-account access without using a role?
A resource-based policy, such as an S3 bucket policy or a KMS key policy.
tap to reveal
What is the difference between an identity-based and a resource-based policy?
Identity-based policies attach to users, groups or roles; resource-based policies attach directly to a resource, such as an S3 bucket or KMS key.
tap to reveal
Why should the AWS root user be avoided for daily tasks?
It has unrestricted access to the whole account, so best practice is to secure it with MFA, avoid access keys, and use IAM roles/users instead.
tap to reveal

Compute & container design (EC2, Lambda, ECS)

EC2 instance types and purchasing

EC2 gives you full control over the OS. Choose instance families by workload: T (burstable, general-purpose, cheap), M (balanced), C (compute-optimised, high CPU), R (memory-optimised), I/D (storage-optimised). Purchasing options matter for cost questions: On-Demand for unpredictable short-term work, Reserved/Savings Plans (1 or 3 year, up to ~72% off) for steady-state predictable workloads, Spot Instances (up to 90% off) for fault-tolerant flexible workloads that can handle interruption with a 2-minute warning, and Dedicated Hosts for licensing/compliance needs where you must control the physical server.

Auto Scaling and Elastic Load Balancing

Auto Scaling Groups (ASGs) keep the right number of EC2 instances running using a launch template, min/max/desired capacity, and scaling policies (target tracking is the recommended default, e.g. keep average CPU at 50%). ASGs work across multiple Availability Zones for resilience. Elastic Load Balancers spread traffic: Application Load Balancer (ALB) works at Layer 7 for HTTP/HTTPS and supports path/host-based routing, Network Load Balancer (NLB) works at Layer 4 for extreme performance and static IPs, Gateway Load Balancer is for third-party virtual appliances.

Lambda essentials

Lambda is serverless compute, billed per millisecond of execution and memory used, with no servers to patch. Key numbers to memorise: default timeout is 3 seconds, maximum timeout is 15 minutes, memory is configurable from 128 MB to 10,240 MB, and CPU scales automatically with memory. Deployment package size limits: 50 MB zipped direct upload, 250 MB unzipped including layers, or up to 10 GB using container images. Concurrency: default account concurrent execution limit is 1,000 (soft limit, raisable), and Provisioned Concurrency removes cold starts for latency-sensitive apps. Lambda is ideal for short, event-driven, stateless tasks triggered by S3, API Gateway, DynamoDB Streams, EventBridge, or SQS.

ECS and container choices

ECS (Elastic Container Service) runs Docker containers using Task Definitions (the blueprint: image, CPU, memory, ports) and Services (which keep a desired number of tasks running, often behind an ALB). Two launch types: EC2 launch type means you manage the underlying EC2 instances yourself (more control, more admin); Fargate is serverless — AWS manages the infrastructure, you just define CPU/memory per task. EKS is AWS's managed Kubernetes alternative for teams already standardised on Kubernetes tooling.

Common exam traps

  • Don't pick Lambda for anything needing more than 15 minutes runtime or heavy persistent state — use ECS/EC2 instead.
  • Spot Instances can be terminated with only 2 minutes' notice — never use for stateful, non-interruptible jobs.
  • Fargate removes server management entirely; EC2 launch type is chosen only when you need OS-level control or GPU/specialised instances.
  • Target tracking scaling policies are simpler and usually the better answer than step scaling unless the question specifies complex thresholds.
  • Lambda default timeout is 3 seconds; maximum timeout is 15 minutes.
  • Lambda memory ranges from 128 MB to 10,240 MB, and CPU scales with memory automatically.
  • Lambda deployment packages: 50 MB zipped, 250 MB unzipped with layers, or up to 10 GB via container image.
  • Default Lambda concurrent execution limit per account is 1,000, and it's a soft (raisable) limit.
  • Spot Instances offer up to 90% discount but can be reclaimed with only a 2-minute warning.
  • Reserved Instances and Savings Plans (1 or 3 year terms) offer up to roughly 72% off On-Demand pricing for steady-state workloads.
  • Fargate is the serverless ECS launch type; you never manage the underlying EC2 instances.
  • ALB operates at Layer 7 (HTTP/HTTPS, path/host-based routing); NLB operates at Layer 4 (extreme performance, static IPs).
  • Auto Scaling Groups use launch templates plus min/max/desired capacity, and should span multiple AZs for high availability.
  • Target tracking is the recommended default Auto Scaling policy type (e.g. maintain 50% average CPU).
  • ECS Task Definitions specify image, CPU, and memory; ECS Services keep the desired task count running.
  • EKS is AWS's managed Kubernetes service, chosen when a team is already standardised on Kubernetes.

Storage design (S3, EBS, EFS) & data lifecycle

S3 storage classes

S3 is object storage, unlimited scale, 11 nines durability across all classes.

  • Standard: frequent access, millisecond retrieval, spread across 3+ AZs.
  • Intelligent-Tiering: automatically moves objects between tiers based on access patterns, no retrieval fee, small monitoring fee per object.
  • Standard-IA and One Zone-IA: infrequent access, lower storage cost but a per-GB retrieval fee; One Zone-IA lives in a single AZ so it is cheaper but not resilient to AZ loss.
  • Glacier Instant Retrieval: archive with millisecond access, for data read once a quarter.
  • Glacier Flexible Retrieval: minutes to hours retrieval, cheaper archive.
  • Glacier Deep Archive: cheapest tier, 12 hour standard retrieval, for 7-10 year compliance retention.

Lifecycle rules

Lifecycle policies transition or expire objects automatically by age (days since creation), e.g. Standard to Standard-IA at 30 days, then Glacier at 90 days, then delete at 365 days. Objects must sit in Standard-IA or One Zone-IA a minimum of 30 days before transitioning further. Versioned buckets can expire noncurrent versions separately.

EBS volume types

EBS is block storage attached to one EC2 instance at a time (except io1/io2 Multi-Attach). Types: gp3 (general purpose SSD, baseline 3,000 IOPS and 125 MiB/s independent of size, cheapest default), gp2 (older, IOPS tied to volume size, 3 IOPS/GB), io1/io2 (provisioned IOPS, up to 64,000 IOPS, for latency-sensitive databases), st1 (throughput-optimised HDD, big sequential workloads like big data), sc1 (cold HDD, cheapest, infrequent access). EBS snapshots are incremental and stored in S3; snapshots can be copied cross-region for DR.

EFS

EFS is a fully managed NFS file system that many EC2 instances (and Lambda, across AZs) can mount concurrently. It is regional, scales automatically, and has Standard and Infrequent Access storage classes with lifecycle management to move files automatically after a set number of days of no access. Use EFS for shared Linux workloads like content management or web serving; EBS cannot be shared across instances the way EFS can.

Common exam traps

  • Mixing up EBS (single instance, AZ-bound) with EFS (multi-instance, regional, NFS).
  • Forgetting One Zone-IA has no AZ resilience — never use it for data you cannot recreate.
  • Assuming Glacier retrieval is instant — only Instant Retrieval tier is millisecond; the others need minutes to hours (Flexible) or up to 12 hours (Deep Archive).
  • Forgetting lifecycle transitions need the 30 day minimum before moving out of an IA tier.
  • Choosing gp2 when the question wants predictable performance independent of size — that is gp3.
  • S3 offers 11 nines (99.999999999%) durability across every storage class.
  • S3 Standard-IA and One Zone-IA both charge a per-GB retrieval fee on top of storage.
  • Objects need a minimum 30 days in Standard-IA or One Zone-IA before a further lifecycle transition.
  • S3 Glacier Deep Archive retrieval takes up to 12 hours and is the cheapest storage class.
  • S3 Glacier Instant Retrieval gives millisecond access for rarely-read archive data.
  • EBS gp3 gives a flat baseline of 3,000 IOPS and 125 MiB/s throughput regardless of volume size.
  • EBS io1/io2 volumes support up to 64,000 IOPS and are the only types with Multi-Attach across multiple instances.
  • EBS snapshots are incremental, stored in S3, and can be copied to another region for disaster recovery.
  • EFS is a regional NFS file system that multiple EC2 instances and Lambda functions can mount at the same time.
  • EFS Infrequent Access storage class needs a lifecycle policy to auto-move files after a chosen number of days unused.
  • One Zone-IA stores data in a single Availability Zone, so it offers no protection against AZ failure.
  • S3 Intelligent-Tiering moves objects between access tiers automatically with no retrieval fee, only a small monitoring charge.
Which EBS type gives a flat 3,000 IOPS baseline no matter the volume size?
gp3 (general purpose SSD)
tap to reveal
What is the minimum number of days an object must stay in an S3 IA tier before transitioning further?
30 days
tap to reveal
Which S3 storage class has no cross-AZ resilience?
One Zone-IA
tap to reveal
What is the retrieval time for S3 Glacier Deep Archive?
Up to 12 hours (standard retrieval)
tap to reveal
Which S3 Glacier tier gives millisecond retrieval?
Glacier Instant Retrieval
tap to reveal
What durability figure applies to all S3 storage classes?
11 nines, 99.999999999 percent
tap to reveal
Can a standard EBS volume be attached to more than one EC2 instance?
No, except io1/io2 with Multi-Attach enabled
tap to reveal
What protocol does EFS use and what can mount it?
NFS, mountable by many EC2 instances and Lambda functions concurrently, across AZs
tap to reveal
How are EBS snapshots stored and can they cross regions?
Incrementally in S3, and yes they can be copied cross-region for DR
tap to reveal
Which EBS type suits large sequential throughput workloads like big data processing?
st1, throughput-optimised HDD
tap to reveal
Which EBS type is cheapest for infrequently accessed cold data?
sc1, cold HDD
tap to reveal
What extra fee does S3 Intelligent-Tiering NOT charge that IA tiers do?
No per-GB retrieval fee, only a small monitoring fee per object
tap to reveal
What is the maximum IOPS an io2 EBS volume can provision?
Up to 64,000 IOPS
tap to reveal
Is EBS storage regional or tied to a single Availability Zone?
Tied to a single Availability Zone; must snapshot and restore to move AZs
tap to reveal
What EFS feature moves files automatically based on access age?
EFS lifecycle management into the Infrequent Access storage class
tap to reveal

Networking (VPC, Route 53, CloudFront)

VPC basics

A VPC is your private network in AWS, split into subnets across Availability Zones.

Each subnet lives in exactly one AZ and gets a CIDR block carved from the VPC's CIDR.

AWS reserves 5 IP addresses in every subnet: network address, VPC router, DNS, future use, and broadcast address - so a /28 only gives you 11 usable IPs.

A subnet is 'public' only if it has a route to an Internet Gateway (IGW) in its route table AND instances have public IPs.

Private subnets route outbound traffic via a NAT Gateway (in a public subnet) - NAT Gateways are AZ-scoped, so put one per AZ for high availability.

Connecting VPCs and on-prem

VPC Peering links two VPCs 1:1 but is NOT transitive - A peered to B and B peered to C does not let A talk to C.

Transit Gateway solves that: a hub-and-spoke that connects many VPCs and on-prem networks, and does support transitive routing.

Site-to-Site VPN goes over the public internet (encrypted); Direct Connect is a dedicated private line - faster, more consistent, but takes weeks to provision.

VPC Endpoints let you reach AWS services privately without going over the internet: Gateway endpoints are free and cover only S3 and DynamoDB; Interface endpoints (powered by PrivateLink) cost money and cover most other services.

Security layers - the classic exam trap

Security Groups are stateful (return traffic auto-allowed) and only support ALLOW rules - they act at the instance/ENI level.

NACLs are stateless (you must allow both inbound and outbound explicitly) and act at the subnet level, supporting both ALLOW and DENY rules - useful for blocking a specific malicious IP.

NACL rules are evaluated in order by rule number, lowest first, and the first match wins.

Route 53

Supports routing policies: Simple, Weighted (percentage split), Latency-based, Failover, Geolocation, Geoproximity, and Multivalue answer.

Health checks combined with Failover routing give automatic DR failover to a standby endpoint.

Alias records are Route 53's free, AWS-only extension of CNAME - they can point at the zone apex (naked domain) and target ELBs, CloudFront, or S3 website endpoints for free.

CloudFront

CloudFront is AWS's CDN: caches content at edge locations close to users, cutting latency and load on the origin.

Origins can be S3 (use Origin Access Control, OAC, to keep the bucket private and force traffic through CloudFront only), an ALB, or any custom HTTP origin.

Signed URLs/Cookies restrict access to private content; Field-Level Encryption adds extra protection for sensitive fields like card numbers, encrypted end-to-end.

Use Cache Behaviors to route different path patterns to different origins or TTL settings within one distribution.

Common mistakes

Confusing NACL (stateless, subnet) with Security Group (stateful, instance).

Forgetting NAT Gateways are per-AZ, not automatically HA across AZs.

Assuming VPC Peering is transitive - it is not, use Transit Gateway.

Using Gateway endpoints when the service isn't S3 or DynamoDB - need Interface endpoints instead.

  • Every subnet has 5 reserved IPs, so a /28 subnet gives only 11 usable addresses
  • Security Groups are stateful and instance-level, and only support ALLOW rules
  • NACLs are stateless and subnet-level, support ALLOW and DENY, and are evaluated by rule number lowest-first
  • VPC Peering is not transitive - use Transit Gateway to connect multiple VPCs and on-prem networks
  • NAT Gateways are scoped to a single AZ - deploy one per AZ for high availability
  • Gateway VPC Endpoints are free and only support S3 and DynamoDB; everything else needs a paid Interface Endpoint (PrivateLink)
  • Route 53 Alias records are free and can be used at the zone apex, unlike CNAME records
  • Route 53 Failover routing plus health checks gives automatic active-passive DR
  • CloudFront uses Origin Access Control (OAC) to keep an S3 origin private and force access through the distribution
  • Direct Connect is a dedicated private line to AWS; Site-to-Site VPN runs encrypted over the public internet
  • CloudFront Signed URLs or Signed Cookies restrict access to private distributed content
  • Field-Level Encryption in CloudFront encrypts specific sensitive fields end-to-end, separate from HTTPS in transit
How many IP addresses does AWS reserve in every VPC subnet?
5 - network address, VPC router, DNS, reserved for future use, and broadcast address
tap to reveal
Is a Security Group stateful or stateless, and at what level does it operate?
Stateful, operating at the instance/ENI level - return traffic is automatically allowed
tap to reveal
Is a NACL stateful or stateless, and at what level does it operate?
Stateless, operating at the subnet level - inbound and outbound rules must both be set explicitly
tap to reveal
Can a NACL deny traffic from a specific IP address?
Yes - NACLs support explicit DENY rules, unlike Security Groups which only allow
tap to reveal
Is VPC Peering transitive?
No - if A peers with B and B peers with C, A cannot reach C through B; use a Transit Gateway instead
tap to reveal
What connects many VPCs and on-prem networks in a hub-and-spoke model with transitive routing?
AWS Transit Gateway
tap to reveal
Are NAT Gateways highly available across AZs by default?
No - a NAT Gateway is scoped to one AZ, so deploy one per AZ for resilience
tap to reveal
Which AWS services can you reach with a free Gateway VPC Endpoint?
Only S3 and DynamoDB - all other services require a paid Interface Endpoint using PrivateLink
tap to reveal
What is the difference between Direct Connect and Site-to-Site VPN?
Direct Connect is a dedicated private line to AWS; VPN is encrypted traffic over the public internet
tap to reveal
Why use a Route 53 Alias record instead of a CNAME?
Alias records are free and can be used at the zone apex, which CNAME records cannot do
tap to reveal
Which Route 53 routing policy enables automatic DR failover?
Failover routing policy combined with health checks
tap to reveal
How do you keep an S3 bucket private but still serve it through CloudFront?
Use Origin Access Control (OAC) so only CloudFront can read the bucket
tap to reveal
What CloudFront feature restricts access to private content for authorised users only?
Signed URLs or Signed Cookies
tap to reveal
What does CloudFront Field-Level Encryption protect?
Specific sensitive fields (e.g. card numbers) with end-to-end encryption, on top of standard HTTPS
tap to reveal
Which routing policy splits traffic by percentage between resources?
Weighted routing policy
tap to reveal

Cost-optimised & high-performing design

Why cost and performance sit together

SAA-C03 loves questions where the 'right' answer is the cheapest one that still meets the performance and durability requirement. Always match the workload pattern to the pricing model and storage/compute tier - overpaying for unused headroom is treated as a wrong answer, same as underprovisioning.

Compute purchasing options

  • On-Demand: pay per second/hour, no commitment, use for short-term or unpredictable spiky workloads.
  • Reserved Instances / Savings Plans: up to 72% off for steady-state, predictable workloads with a 1 or 3 year term.
  • Spot Instances: up to 90% off, for fault-tolerant, flexible, interruptible workloads (batch, CI, stateless web tiers) - never for workloads that cannot handle a 2-minute interruption warning.
  • Compute Savings Plans are more flexible than EC2 Instance Savings Plans (cover Fargate/Lambda too), but EC2 Instance Savings Plans give the bigger discount if you know the instance family.

Auto Scaling and right-sizing

  • Use Auto Scaling Groups with target tracking to match capacity to demand instead of running fixed oversized fleets.
  • Use AWS Compute Optimizer and Cost Explorer to spot over-provisioned resources.
  • Use Trusted Advisor (cost optimisation checks need Business/Enterprise support) to flag idle load balancers, low-utilisation EC2, unattached EBS volumes.

Storage cost tiers

  • S3 Standard for frequently accessed data; S3 Standard-IA and One Zone-IA for infrequent access (IA = minimum 30-day storage, retrieval fee applies).
  • S3 Intelligent-Tiering automatically moves objects between tiers based on access patterns with no performance impact or retrieval fee - the exam's go-to answer when access patterns are unknown or unpredictable.
  • S3 Glacier Instant Retrieval, Flexible Retrieval, and Deep Archive for archival - Deep Archive is cheapest but retrieval takes up to 12 hours (or 48 with bulk).
  • Use S3 Lifecycle policies to automate transitions and expirations.

High-performing design levers

  • CloudFront caches content at edge locations - reduces latency and origin load, and cuts data transfer costs.
  • ElastiCache (Redis/Memcached) offloads read-heavy database traffic and slashes response times.
  • Read Replicas (RDS/Aurora) scale read throughput horizontally without touching the primary's write capacity.
  • Multi-AZ is for availability/failover, NOT read scaling - a very common exam trap; use Read Replicas for that instead.
  • Placement groups: cluster (low latency, same AZ), spread (max 7 instances per AZ, isolate critical instances), partition (large distributed workloads like Hadoop/Cassandra).

Common mistakes to avoid

  • Choosing Reserved/Savings Plans for spiky or short-lived workloads (wrong - use On-Demand or Spot).
  • Picking Multi-AZ RDS when the requirement is read scalability (wrong - pick Read Replicas).
  • Forgetting that NAT Gateways and cross-AZ/cross-region data transfer both carry ongoing cost - consolidate AZs or use VPC endpoints to cut this.
  • Ignoring S3 Transfer Acceleration and CloudFront for global latency-sensitive delivery.
  • Reserved Instances and Savings Plans give up to 72% off On-Demand for steady, predictable workloads with 1 or 3 year commitments.
  • Spot Instances give up to 90% off but can be reclaimed with a 2-minute warning - only use for fault-tolerant, interruptible workloads.
  • S3 Standard-IA and One Zone-IA have a minimum 30-day storage charge plus a per-GB retrieval fee.
  • S3 Intelligent-Tiering has no retrieval fee and no performance hit - best answer when access patterns are unknown.
  • S3 Glacier Deep Archive is the cheapest storage class but restores can take up to 12 hours standard.
  • Multi-AZ RDS is for high availability/failover, not for scaling reads - use Read Replicas for read scaling.
  • CloudFront reduces latency by caching at edge locations and reduces data transfer cost from the origin.
  • ElastiCache (Redis or Memcached) offloads read-heavy database load and reduces response latency.
  • Compute Savings Plans cover EC2, Fargate, and Lambda flexibly; EC2 Instance Savings Plans lock to a family for a bigger discount.
  • Trusted Advisor's cost optimisation checks require Business or Enterprise support plan.
  • Spread placement groups support a maximum of 7 running instances per Availability Zone.
  • Use S3 Lifecycle policies to automate the move from Standard to IA to Glacier to Deep Archive as data ages.
Which EC2 purchasing option suits fault-tolerant, interruptible batch jobs at the lowest cost?
Spot Instances - up to 90% off, but can be reclaimed with a 2-minute warning.
tap to reveal
Which EC2 purchasing option suits steady-state, predictable long-term workloads?
Reserved Instances or Savings Plans - up to 72% off with a 1 or 3 year term.
tap to reveal
What is the key difference between Compute Savings Plans and EC2 Instance Savings Plans?
Compute Savings Plans are flexible across EC2, Fargate and Lambda; EC2 Instance Savings Plans lock to an instance family for a deeper discount.
tap to reveal
What is the minimum storage duration for S3 Standard-IA?
30 days, plus a per-GB retrieval fee applies.
tap to reveal
Which S3 storage class should you pick when access patterns are unknown or unpredictable?
S3 Intelligent-Tiering - no retrieval fee, automatic tier movement, no performance impact.
tap to reveal
What is the cheapest S3 storage class, and what is the trade-off?
S3 Glacier Deep Archive - cheapest, but standard retrieval can take up to 12 hours.
tap to reveal
RDS Multi-AZ is for availability. What should you use instead to scale read traffic?
Read Replicas - they add read throughput without affecting the primary's write capacity.
tap to reveal
How does CloudFront help both cost and performance?
It caches content at edge locations, cutting latency for users and reducing data transfer load/cost on the origin.
tap to reveal
What does ElastiCache do for a read-heavy relational database?
Offloads repeated read queries into an in-memory cache (Redis/Memcached), cutting latency and database load.
tap to reveal
What support plan tier is required to access Trusted Advisor's full cost optimisation checks?
Business or Enterprise support plan.
tap to reveal
What is the maximum number of running instances per Availability Zone in a spread placement group?
7 instances per AZ.
tap to reveal
Name the three EC2 placement group types and their purpose.
Cluster (low latency, same AZ), spread (isolate critical instances, max 7 per AZ), partition (large distributed workloads like Hadoop/Cassandra).
tap to reveal
What AWS tool analyses resource utilisation and recommends right-sizing?
AWS Compute Optimizer.
tap to reveal
What feature automates moving S3 objects between storage classes as they age?
S3 Lifecycle policies.
tap to reveal
Why might a NAT Gateway and cross-AZ traffic quietly inflate a bill?
Both carry ongoing per-GB data processing/transfer charges - consolidate AZs or use VPC endpoints to reduce this.
tap to reveal