Exam DOP-C01 All QuestionsBrowse all questions from this exam
Question 84

A DevOps engineer is planning to deploy a Ruby-based application to production. The application needs to interact with an Amazon RDS for MySQL database and should have automatic scaling and high availability. The stored data in the database is critical and should persist regardless of the state of the application stack.

The DevOps engineer needs to set up an automated deployment strategy for the application with automatic rollbacks. The solution also must alert the application team when a deployment fails.

Which combination of steps will meet these requirements? (Choose three.)

    Correct Answer: B, C, E

    For deploying a Ruby-based application that interacts with an Amazon RDS for MySQL database while ensuring automatic scaling, high availability, and data persistence, it is essential not to tie the RDS database lifecycle to the application stack. Therefore, deploying a separate Amazon RDS for MySQL DB instance outside of Elastic Beanstalk ensures the database remains independent and persists regardless of the state of the application stack. Configuring a notification email address in the AWS Elastic Beanstalk configuration to alert the application team is necessary to keep the team informed about deployment failures. Lastly, using the immutable deployment method to deploy new application versions ensures that if a deployment fails, it can automatically roll back to the previous version without manual intervention, as immutable deployments create a completely new set of instances, thus enhancing the reliability and stability of the deployment process.

Discussion
SmileyCloudOptions: BDE

B and not A because the RDS data is critical. Move RDS out of Beanstalk. D and not C, because D constantly monitors the Beanstalk health. See https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/AWSHowTo.eventbridge.html E and not F because immutable creates another environment. If rolling deployment fails, you need to redeploy it again. They ask for automated healing. https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/using-features.rolling-version-deploy.html#environments-cfg-rollingdeployments-method

BelloMio

D uses elastic beanstalk events as source. It does not use Health. Therefore C is correct

Piccaso

In a table of the link: Environment update failed ERROR Failed to deploy configuration.

Piccaso

It means C is involved by D

USaloOptions: BCE

B: and not A because the RDS data is critical. Move RDS out of Beanstalk. C: not D, because AWS Health monitor health status of AWS services, not deployments. E: This was tricky one. We should pay attention that we need automatic rollback, not rolling update. Failed rolling update required manual work to deploy new good version. Failed immutable update will rollback all unhealthy instances automatically, no manual work is needed https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/using-features.rolling-version-deploy.html#environments-cfg-rollingdeployments-method

benjl

Yes, BCE looks correct to me. You can set sns notification in elastic beanstalk console. https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/using-features.managing.sns.html

benjl

I mean notification email address, not the sns.

daburahjailOptions: BCE

Not D, as AWS Health is for service-level faults, not deployment issues.

saggy4Options: BCE

A -- RDS is critical and should not be clubbed with AWS Beanstalk ENV. B -- Correct as RDS should be created separately independent of the BeanStalk ENV. C -- Correct -- You can send alerts for your ENV via adding email address in config https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/using-features.managing.sns.html#configuration-notifications-namespace D -- Health monitor will give alerts for all the environments and also not related to Deployments E -- Correct and D -- Incorrect --> Rolling == No automatic Rollback, Immutable == Automatic Rollback.

Bulti

Correct answer is B,C and E. B because RDS data is critical, C because that's the way to send notifications on failed deployment to your email address using Elastric BeanStalk which uses SNS to send notification to your email address abd E because of the ability to rollback to the previous version after a failed deployment

Mark1000

BCE B and E seem to be uncontroversial Regarding C or D, I'll go with C, the reason is that when you generate the beanstalk environment and define in the Notifications section an email, AWS automatically takes care of creating the associated SNS topic and that email as a subscription in pending confirmation status. Once confirmed, when a deployment is done it notifies you of status changes, so if after a deployment or rollback it fails it notifies you of any changes.

auxwwwOptions: BCE

B C - https://docs.aws.amazon.com/sns/latest/dg/sns-configure-dead-letter-queue.html . D is incorrect because it says Event bridge and AWS Health integration. E - https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/using-features.rolling-version-deploy.html#environments-cfg-rollingdeployments-method

failexamonlyOptions: BCE

See USalo

easytoo

bce-bce-bce

scottytoohottyOptions: BCE

Originally thought BDE, but seen this link below so it's BCE, I got confused with CW Events when using codedeploy https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/using-features.managing.sns.html

asfsdfsdfOptions: BCE

BCE Why not D? 1) D uses health which is not related. 2) Beanstalk already creates a SNS topic just need to update the email address in order to subscribe to it. https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/using-features.managing.sns.html

okm1997_2Options: BCE

B - RDS data is critical C - For notification E - rollback

Arnaud92Options: BCE

https://docs.aws.amazon.com/fr_fr/elasticbeanstalk/latest/dg/using-features.managing.sns.html

daburahjailOptions: BDE

AWS Health is for monitoring service-level faults, and should not alert anything related to failed deployments

Mark1000

BCE B y E parece que no tienen discusión Con respecto a C o D, me quedo con C, la razón es que cuando generas el entorno de beanstalk y le defines en la sección Notificaciones un correo electrónico, AWS se encarga automáticamente de crear el topic SNS asociado y ese correo como subscripción en estado pending confirmation. Una vez confirmado, cuando se realiza implementación te notifica de los cambios de estado, así que si tras una implementación o rollback falla te notifica

speedsterOptions: BDE

B and E are obvious. D not C because "To configure which notifications are sent under certain circumstances, you also have other options available. You can use Amazon EventBridge to set up event-driven rules , which notify you when Elastic Beanstalk emits events that meet certain criteria. Alternatively, you can configure your environment to publish custom metrics and set up Amazon CloudWatch alarms to notify you when those metrics reach unhealthy thresholds." Here requirement is only deployment fails https://docs.aws.amazon.com/zh_cn/elasticbeanstalk/latest/dg/using-features.managing.sns.html#:~:text=To%20configure%20which,reach%20unhealthy%20thresholds.

USalo

Why do you need to monitor AWS Health ??? I agree, that you need EventBridge, but why to monitor AWS Health? Even in you link there is no mentioning of AWS Health. AWS Health is completely different service that does not show the deployment status of EB

saeidpOptions: BDE

I vote for BDE