Your company's DevOps team is in charge of deploying a large number of Lambda functions with AWS CodeDeploy service.
The team has already created new applications in CodeDeploy.
Then relevant deployment groups are being set up which include configurations used during the deployment.
For the deployment configurations, which ways are supported?
Click on the arrows to vote for the correct answer
A. B. C. D. E. F.Correct Answer - A, C, F.
When the Deployment Group of AWS CodeDeploy is created, users need to configure the rules that determine how fast an application will be deployed, which is also called the “Deployment Configuration”:
About the supported deployment configurations for Lambda functions, refer to https://docs.aws.amazon.com/codedeploy/latest/userguide/deployment-configurations.html for details.
Option A is CORRECT: Because LambdaAllAtOnce is a supported configuration that shifts all traffic at a time.
Option B is incorrect: Because there is no Immutable configuration for Lambda.
Option C is CORRECT: Because the Linear method is supported for Lambda according to the above link.
Option D is incorrect: Because LambdaHalf is not supported.
However, the Half mode is a supported configuration for the EC2/On-Premises Compute Platform.
Option E is incorrect: Because there is no AllAtATime mode for the Lambda function, according to the below link.
Please refer to page 283 on the below link.
https://docs.aws.amazon.com/codedeploy/latest/userguide/codedeploy-user.pdfOption F is CORRECT: Because Canary is a supported mode that shifts 10% at first and then shifts the remaining items.
AWS CodeDeploy is a fully managed deployment service that automates software deployments to a variety of compute services such as Amazon EC2, AWS Lambda, and on-premises servers. When deploying Lambda functions with CodeDeploy, the deployment configurations determine how traffic is shifted from the old Lambda function version to the new one.
The following are the supported deployment configurations for Lambda functions in CodeDeploy:
A. CodeDeployDefault.LambdaAllAtOnce: This configuration shifts all traffic at once from the old Lambda function version to the new one. This configuration is useful when you have a small number of Lambda functions and want to minimize deployment time.
B. CodeDeployDefault.Immutable: This configuration performs an immutable update, which means that the new Lambda function version is deployed to a fresh set of compute resources. The traffic is then shifted to the new version, and the old version is terminated. This configuration is useful when you want to ensure that the new version is fully tested and verified before shifting traffic to it.
C. CodeDeployDefault.LambdaLinear10PercentEvery10Minutes: This configuration shifts traffic gradually from the old Lambda function version to the new one. It shifts 10 percent of traffic every 10 minutes. This configuration is useful when you want to minimize the impact of the deployment on end-users.
D. CodeDeployDefault.LambdaHalf: This configuration shifts half of the traffic to the new Lambda function version and then shifts the remaining half. This configuration is useful when you want to test the new version with a smaller percentage of traffic before shifting all traffic to it.
E. CodeDeployDefault.AllAtATime: This configuration deploys the new version to all Lambda functions at once. This configuration is useful when you want to deploy the new version to all functions in one shot.
F. CodeDeployDefault.LambdaCanary10Percent5Minutes: This configuration shifts 10 percent of traffic in the first increment. The remaining 90 percent is deployed five minutes later. This configuration is useful when you want to test the new version with a smaller percentage of traffic before shifting all traffic to it.
In conclusion, the deployment configuration that you choose depends on your deployment goals, the number of Lambda functions you have, and the impact that the deployment will have on end-users.