A DevOps engineer is creating a continuous-deployment pipeline for a serverless application that uses AWS Lambda functions. The company wants to minimize customer impact from an unsuccessful deployment and also wants to monitor for issues.
Which deploy-stage configuration meets these requirements?
A Use an AWS Serverless Application Model (AWS SAM) template to define the serverless application. Use AWS CodeDeploy to deploy the Lambda functions with the Canary10Percent15Minutes Deployment Preference Type. Use Amazon CloudWatch alarms to monitor the health of the functions. B Use AWS CloudFormation to publish a new stack update, and include Amazon CloudWatch alarms on all resources. Set up an AWS CodePipeline approval action for a developer to verify and approve the AWS CloudFormation change set. C Use AWS CloudFormation to publish a new version on every stack update, and include Amazon CloudWatch alarms on all resources. Use the RoutingConfig property of the AWS:: Lambda:: Alias resource to update the traffic routing during the stack update. D Use AWS CodeBuild to add sample event payloads for testing to the Lambda functions. Publish a new version of the functions, and include Amazon CloudWatch alarms. Update the production alias to point to the new version. Configure rollbacks to occur when an alarm is in the ALARM state. Show Answer Answer Explanation AWS SAM deployment preferences use AWS CodeDeploy to gradually shift Lambda alias traffic. Canary10Percent15Minutes routes 10% of traffic to the new version first and shifts the remaining 90% after 15 minutes. CloudWatch alarms can monitor deployment health and trigger an automatic rollback when they enter the ALARM state.
Learn more
Community Discussion