Question #740
A company is managing a serverless application using AWS Lambda functions and AWS SAM templates. The team aims to test new updates by gradually shifting traffic over fixed intervals, ensuring minimal risk before full deployment. Which combination of steps provides the MOST operationally efficient solution? (Choose two.)
Use AWS SAM CLI commands in AWS CodePipeline to manually invoke Lambda functions during testing phases.
Configure EventInvokeConfig in the AWS SAM templates to trigger external services on success or failure.
Enable gradual deployments via AWS SAM templates to automate traffic shifting.
Set the deployment preference to Canary10Percent30Minutes and integrate pre-traffic hooks for validation.
Set the deployment preference to Linear10PercentEvery10Minutes and use hooks to validate the deployment.
Explanation
The question requires automating gradual traffic shifting with fixed intervals using AWS SAM.
- C is correct because AWS SAM templates support deployment preferences (e.g., Canary/Linear) to automate traffic shifting, eliminating manual steps.
- E is correct as Linear10PercentEvery10Minutes shifts traffic in equal increments every 10 minutes, meeting the 'fixed intervals' requirement. Hooks validate deployments, reducing risk.
Why others are incorrect:
- A: Manual invocation is inefficient and contradicts automation.
- B: EventInvokeConfig handles async responses, not deployment strategies.
- D: Canary10Percent30Minutes shifts 10% upfront and waits 30 minutes, not fixed intervals.
Key Points:
1. Use SAM's deployment preferences (Canary/Linear) for automated traffic shifting.
2. Linear deployment ensures fixed intervals; hooks validate deployments pre/post-traffic.
Answer
The correct answer is: CE