Question

Difficulty: HardEnhancing Reliability and Disaster Recovery

An enterprise operates a multi-tier application across two AWS accounts. Account A hosts the production web application on Amazon EC2 instances inside private subnets across three Availability Zones (AZs) in VPC A in the us-east-1 Region. The instances must access the internet to process payment transactions. Account B hosts a Route 53 Private Hosted Zone (PHZ) named api.internal used for core service discovery. To enhance reliability and establish a disaster recovery (DR) architecture in us-west-2 (VPC B in Account A) that meets a Recovery Time Objective (RTO) of 10 minutes and a Recovery Point Objective (RPO) of 1 minute, the solutions architect deploys an Amazon Aurora PostgreSQL Global Database with the primary cluster in us-east-1 and a secondary cluster in us-west-2. Which combination of architectural improvements and failover configurations will meet the reliability and DR requirements?

  1. Deploy a NAT Gateway in each Availability Zone of VPC A, updating the private route tables to route outbound traffic through the local NAT Gateway in the same zone. In Account B, authorize the association of the api.internal Private Hosted Zone with VPC B in Account A, and then in Account A, associate the Private Hosted Zone with VPC B. Configure Route 53 failover routing records pointing to the Application Load Balancers (ALBs) in both regions, and associate the primary record with a Route 53 health check that monitors a custom application health endpoint performing local database connectivity checks.Answer
  2. B
    Deploy a NAT Gateway in each Availability Zone of VPC A, updating the private route tables to route outbound traffic through the local NAT Gateway in the same zone. Create a duplicate Private Hosted Zone named api.internal in Account A and associate it directly with VPC B to manage DNS resolution locally. Configure Route 53 failover routing records pointing to the ALBs in both regions, and associate the primary record with a Route 53 health check that monitors a custom application health endpoint performing local database connectivity checks.
  3. C
    Deploy a single NAT Gateway in a public subnet of VPC A, and update all private route tables across all Availability Zones to route outbound internet traffic through this single gateway. In Account B, authorize the association of the api.internal Private Hosted Zone with VPC B in Account A, and then in Account A, associate the Private Hosted Zone with VPC B. Configure Route 53 failover routing records pointing to the ALBs in both regions, and associate the primary record with a Route 53 health check that monitors a custom application health endpoint performing local database connectivity checks.
  4. D
    Deploy a NAT Gateway in each Availability Zone of VPC A, updating the private route tables to route outbound traffic through the local NAT Gateway in the same zone. In Account B, authorize the association of the api.internal Private Hosted Zone with VPC B in Account A, and then in Account A, associate the Private Hosted Zone with VPC B. Configure Route 53 failover routing records pointing to the ALBs in both regions, and associate the primary record with a Route 53 health check that performs a basic TCP ping check on port 80 of the primary ALB.

Answer

The configuration implementing local NAT Gateways per Availability Zone, a cross-account Route 53 Private Hosted Zone association, and Route 53 failover records with database-aware health checks.
Deploying a NAT Gateway in each Availability Zone of VPC A ensures that a single zone outage does not disrupt outbound connectivity for the remaining healthy zones. Authorizing and associating the Private Hosted Zone across accounts correctly enables cross-account DNS resolution in the disaster recovery VPC without split-brain issues. Configuring a Route 53 health check that performs a deep application check (database connectivity) ensures that Route 53 fails over to the secondary Region if the primary database becomes degraded, meeting the RTO and RPO objectives.

Step-by-Step Solution

1
Ensure NAT gateway redundancy in the primary VPC.
Deploy one NAT Gateway per Availability Zone and update the private subnet route tables to direct outbound traffic to the NAT Gateway in the same zone.
This prevents a single Availability Zone failure from disrupting outbound connectivity for all instances.
2
Associate the core services Private Hosted Zone cross-account.
Authorize the association of the hosted zone in Account B with VPC B in Account A, and then execute the association in Account A.
This establishes consistent DNS resolution in the disaster recovery Region without running into split-brain issues from duplicating the zone.
3
Implement active-passive routing with deep health checks.
Configure Route 53 failover records pointing to regional endpoints, and bind the primary record to an application health check that monitors backend database connectivity.
This ensures that regional database degradation causes the primary health check to fail, triggering automatic DNS failover to the secondary Region.

Key Concept

Reliability and multi-region disaster recovery for multi-account web applications with strict RTO/RPO requirements.
Rate this question