Home › Forums › AWS › AWS Certified DevOps Engineer Professional › Need explanation about this quesion
-
Need explanation about this quesion
JR-TutorialsDojo updated 3 weeks, 4 days ago 2 Members · 2 Posts
-
DOP – SDLC Automation
A stock trading company has recently built a Node.js web application with a GraphQL API-backed service that stores and retrieves financial transactions. The application is currently hosted in an on-premises server with a local MySQL database as its data store. For testing purposes, the app will have a series of updates based on the feedback of the QA and UX teams. There should be no downtime or degraded performance in the application while the DevOps team is building, testing, and deploying the new release versions. The architecture should also be scalable to meet the surge of application requests.
Correct Answer:
igrate the application source code to GitHub and set up the AWS Connector for GitHub. Use CodeBuild to set up automatic unit and functional tests. Set up two stacks in Elastic Beanstalk with a separate Amazon RDS database with Multi-AZ deployments configuration for each stack. Deploy the current application version on the two environments. Configure CodeBuild to deploy the succeeding application revision to Elastic Beanstalk. Use a blue/green strategy for deployment.Wrong Answer:
Migrate the application source code to GitHub and set up the AWS Connector for GitHub. Use CodeBuild to set up automatic unit and functional tests. Set up two stacks in Elastic Beanstalk with an external Amazon RDS database with Multi-AZ deployments configuration. Deploy the current application version on the two environments. Configure CodeBuild to deploy the succeeding application revision to Elastic Beanstalk. Use a blue/green strategy for deployment.Explanation:
is incorrect because it is not appropriate to launch a separate Amazon RDS database with Multi-AZ deployments configuration on each Elastic Beanstalk environment. It is recommended to decouple your database from your Elastic Beanstalk environment.There is a problem in English here. There is no difference between two options.
1 – Both separate and external can convey “decouple”.
2 – “Set up two stacks in Elastic Beanstalk with an external Amazon RDS database with Multi-AZ deployments configuration vs Set up two stacks in Elastic Beanstalk with a separate Amazon RDS database with Multi-AZ deployments configuration for each stack.”
They both convey that there are two dbs, each for prod and QA.
Apart from this there is no difference
-
Hello Nauman Jamil Qazi,
Thanks for the feedback.
The term “External Amazon RDS database” refers to a single RDS instance that is created and managed independently from the Elastic Beanstalk environments. In this setup, both the blue/green stacks (or production and QA environments) share the same RDS database. The key point is that “external” highlights the database’s separation from the Elastic Beanstalk environment itself, rather than implying multiple databases.
On the other hand, having a “separate Amazon RDS database for each stack” means that each Elastic Beanstalk environment, such as blue/green, has its own distinct RDS instance, each configured with Multi-AZ. This setup results in two physically separate databases, which can lead to data divergence and inconsistencies. Such issues create significant risks.
Hence, the correct answer is: Migrate the application source code to GitHub and set up the AWS Connector for GitHub. Use CodeBuild to set up automatic unit and functional tests. Set up two stacks in Elastic Beanstalk with an external Amazon RDS database with Multi-AZ deployments configuration. Deploy the current application version on the two environments. Configure CodeBuild to deploy the succeeding application revision to Elastic Beanstalk. Use a blue/green strategy for deployment.
I hope this helps! Let us know if you need further assistance.
Regards,
JR @ Tutorials Dojo
Log in to reply.