Question

Difficulty: Very hardDatabase and Storage Strategy

An enterprise is designing a high-throughput, global Online Transaction Processing (OLTP) application. The primary database will be deployed in the `us-east-1` Region, and a secondary replica must be maintained in the `us-west-2` Region to support local read traffic and serve as a hot standby. The business requirements dictate a Disaster Recovery (DR) profile with a Recovery Point Objective (RPO) of less than 1 second1\text{ second} and a Recovery Time Objective (RTO) of less than 1 minute1\text{ minute}. Additionally, read capacity in `us-west-2` must scale dynamically to handle unpredictable spikes in query volume. Finally, the database backups must be exported daily to an Amazon S3 bucket and made accessible to an external auditing team operating in a separate, isolated AWS account. The audit data must remain encrypted at rest.

Which TWO database and storage configurations should the Solutions Architect implement to meet these requirements?

  1. Provision an Amazon Aurora Global Database with the primary cluster in `us-east-1` and a secondary cluster in `us-west-2`. Define an Application Auto Scaling policy for the Aurora Replicas in `us-west-2` using the `RDSReaderAverageCPUUtilization` predefined metric.Answer
  2. Export the database snapshots to an Amazon S3 bucket. Configure default encryption on the S3 bucket using a Customer Managed Key (CMK) in AWS KMS, and update the key policy to grant the auditing account's IAM principal permissions to decrypt the data.Answer
  3. C
    Export the database snapshots to an Amazon S3 bucket. Configure default encryption on the S3 bucket using the AWS managed key for Amazon S3 (`aws/s3`), and configure the S3 bucket policy to allow cross-account access for the auditing account's IAM principal.
  4. D
    Provision an Amazon RDS for PostgreSQL instance with a Multi-AZ deployment, and configure a Read Replica in `us-west-2`. Rely on the standby replica in the Multi-AZ deployment to automatically scale read capacity dynamically using Amazon RDS Auto Scaling.
  5. E
    Implement a replication strategy that copies automated Aurora DB cluster snapshots from `us-east-1` to `us-west-2` every 4 hours4\text{ hours}. Use AWS Systems Manager to trigger a Lambda function to automatically restore the cluster from the latest copied snapshot during a regional failover.

Answer

The correct configurations are to provision an Amazon Aurora Global Database with Application Auto Scaling on reader instances in the secondary region, and to encrypt the daily S3 exports with a Customer Managed Key (CMK) while updating its key policy to allow cross-account decrypt access.
The correct solution involves utilizing Amazon Aurora Global Database to achieve near-instantaneous cross-region replication (RPO < 1 s1\text{ s}) and swift failover capabilities (RTO < 1 m1\text{ m}). Auto Scaling on the reader instances in the secondary region dynamically handles scale-out based on read load. Additionally, using a Customer Managed Key (CMK) for the S3 backup exports allows the key policy to be customized, enabling cross-account decryption for the auditing team.

Step-by-Step Solution

1
Evaluate the disaster recovery constraints (RTO < 1 minute1\text{ minute}, RPO < 1 second1\text{ second}) against the database engine replication capabilities.
Amazon Aurora Global Database provides physical, storage-based replication across regions with typical lag under 1 second1\text{ second} (meeting the RPO) and supports fast failover/promotion in under a minute (meeting the RTO). Snapshot-based copying is rejected because it fails the strict RPO/RTO limits.
Choosing the correct replication and disaster recovery topology is the foundation of the storage and database strategy.
2
Determine the scale-out capability of the reader instances in the secondary region.
By using Aurora Auto Scaling with a target tracking policy based on average CPU utilization, reader instances in the secondary region can scale out horizontally to absorb unpredictable query spikes.
Standard RDS Multi-AZ standby instances cannot serve read traffic or scale dynamically, requiring dedicated read replicas with scaling policies.
3
Address the cross-account S3 backup access and encryption requirements.
A Customer Managed Key (CMK) is required because its key policy can be modified to grant cross-account decrypt permissions. AWS managed keys (like `aws/s3`) do not support cross-account access.
Security controls require proper KMS key type selection for cross-account resource sharing.

Key Concept

Cross-region database replication topology (Aurora Global Database) combined with reader auto-scaling and cross-account KMS key sharing requirements.
Rate this question