Blue Green Deployment Methodology for AWS Certified Developer - Associate Exam

Approaches for Implementing Blue Green Deployment Methodology

Prev Question Next Question

Question

You are working as a team lead for your company.

You have been told to manage the Blue Green Deployment methodology for one of the applications.

Which of the following are some of the approaches for implementing this methodology? Choose 2 answers from the options given below.

Answers

Explanations

Click on the arrows to vote for the correct answer

A. B. C. D.

Answer - B and D.

The AWS Documentation mentions the following.

Weighted routing lets you associate multiple resources with a single domain name (example.com) or subdomain name (acme.example.com) and choose how much traffic is routed to each resource.

This can be useful for various purposes, including load balancing and testing new versions of software.

Because AWS Elastic Beanstalk performs an in-place update when you update your application versions, your application can become unavailable to users for a short period of time.

You can avoid this downtime by performing a blue/green deployment where you deploy the new version to a separate environment and then swap CNAMEs of the two environments to instantly redirect traffic to the new version.

Option A is incorrect as on its own Autoscaling should be used to shift traffic and not on demand for such deployments.

Option C is incorrect since you need to use Route 53 with Weighted Routing policies.

For more information on weighted routing policy, please refer to the below link-

https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/routing-policy.html#routing-policy-weighted

For more information on the Swap URL feature, please refer to the below link.

https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/using-features.CNAMESwap.html

Blue-Green Deployment is a methodology that involves creating two identical environments, where one environment is used for production (Green) while the other environment (Blue) is used for testing and development. In this methodology, the team deploys the application code changes to the Blue environment first, tests them thoroughly, and then switches the traffic to the Blue environment once it has been verified to work as expected.

This ensures that any issues in the new code deployment are caught before the traffic is redirected to the production environment. If any issues arise, the traffic can easily be switched back to the Green environment, which remains untouched.

To implement Blue-Green Deployment methodology, there are several approaches available:

A. Using Autoscaling Groups to scale on demands for both deployments: This approach involves using Autoscaling groups for both Blue and Green environments. The Autoscaling group can be configured to launch instances based on the traffic demand, and it can also ensure that the group maintains a minimum and maximum number of instances running. This approach allows for easy scaling of the environments based on demand and ensures that both environments are always up-to-date.

B. Using Route 53 with Weighted Routing policies: This approach involves using Route 53, which is Amazon's DNS service, with Weighted Routing policies. The team can create two identical DNS records for the application, with one pointing to the Green environment and the other pointing to the Blue environment. The traffic is then routed to the two environments based on a weight assigned to each DNS record. This approach allows for a gradual transition of traffic from one environment to another, ensuring that there is no sudden surge of traffic on the new environment.

C. Using Route 53 with Latency Routing policies: This approach is similar to the above approach, but instead of using Weighted Routing policies, the team uses Latency Routing policies. This ensures that the traffic is routed to the environment with the lowest latency, providing a better user experience for customers.

D. Using Elastic Beanstalk with the swap URL feature: This approach involves using Elastic Beanstalk, which is a platform that allows developers to deploy, manage, and scale web applications. The swap URL feature allows the team to easily switch the traffic from one environment to another. The Blue environment is deployed, tested, and then the URL is swapped with the Green environment, making the Blue environment the production environment.

In conclusion, the two approaches that can be used to implement the Blue-Green Deployment methodology are:

  • Using Autoscaling Groups to scale on demands for both deployments.
  • Using Route 53 with Weighted Routing policies.