A smart utility company is modernizing its on-premises customer smart meter management system by migrating to a serverless architecture on AWS. The solution will use Amazon API Gateway and AWS Lambda to process bursty configuration updates sent to millions of meters during scheduled maintenance windows. The Lambda functions must securely query and update an Amazon Aurora PostgreSQL database located in a private subnet. The functions also require highly available outbound internet access to retrieve security token updates from a third-party API. Any update to the Lambda functions must support automated rollback if latency increases.
Which combination of actions should a solutions architect take to meet these requirements? (Select TWO.)
- Configure Amazon RDS Proxy between the Lambda functions and the Aurora PostgreSQL database, and configure AWS Lambda reserved concurrency for the configuration-update function.Answer
- Deploy the Lambda functions in private subnets across multiple Availability Zones, configure route tables to use a NAT Gateway in each Availability Zone, and use AWS CodeDeploy to execute a canary deployment with CloudWatch alarm monitoring.Answer
- CDeploy the Lambda functions in private subnets across multiple Availability Zones, configure all route tables to use a single NAT Gateway located in a single public subnet, and use AWS CodeDeploy to run a linear deployment.
- DRely on the default unreserved account concurrency pool for all functions, and configure the database auto-scaling parameters to handle up to 10,000 direct concurrent connections.
- EStore the database credentials in AWS Secrets Manager, encrypt them using the default AWS-managed KMS key for Secrets Manager, and modify the key policy of the AWS-managed key to allow the Lambda execution role decryption access.
Answer
Configure Amazon RDS Proxy with reserved concurrency for the Lambda function, and deploy the functions across multiple Availability Zones with dedicated NAT Gateways and AWS CodeDeploy canary deployments.
The correct architecture uses Amazon RDS Proxy to pool and reuse database connections, preventing connection exhaustion. It also reserves concurrency for the high-volume Lambda function to isolate its execution capacity and protect other workloads. Outbound traffic is kept highly available by utilizing a NAT Gateway per Availability Zone, and deployment risk is mitigated through CodeDeploy canary releases integrated with CloudWatch alarms.
Step-by-Step Solution
Key Concept
Designing highly available, scalable, and safe serverless architectures integrating Lambda, API Gateway, RDS Proxy, and NAT Gateways.
Estimated Time:2m 0s