AWS DevOps Professional Exam Flashcards
_______ is a process methodology around deploying and managing environments.
DevOps
What are the 4 deployment methods?
All at once
Rolling
Blue/Green
Immutable
What is the “all at once” deployment method?
All at once deployment method deploys all instances at the same time
What is the impact of a failed “all at once” deployment?
Downtime
Rollback requires re-deploy
What is the benefit of an “all at once” deployment?
Faster than any other deployment method
Does “all at once” deployment require a dns change?
No
What is the “rolling” deployment method?
Rolling deployment deploys a specific number of instances at a time
What is the impact of a failed “rolling” deployment?
- No downtime - Only updated instance batch affected
- Rollback the affected instances
How long does the “rolling” deployment method take to deploy?
A little bit more time than “all at once”
Does the “rolling” deployment require a dns change?
No
What is the “blue/green” deployment method?
The “blue/green” method deploys two identical stacks running in a separate environment
What is the impact of a failed “blue/green” deployment?
No downtime - Only the updated environment is affected
How long does the “blue/green” deployment method take to deploy?
Takes longest due to spinning up more resources and can also cost more
Does a “blue/green” deployment require a DNS change?
Yes if using Elastic Beanstalk, but not always necessary
______ is an alternative to a rolling deployment where we deploy a new environment instead of existing resources.
Immutable
What is the impact of a failed immutable deployment?
No downtime - only the updated environment is affected
How long does an immutable environment take to deploy?
Takes longer to spin up more resources and can cost more
Does immutable deployment strategy require a DNS change?
No
What are the two types of methods of deployment?
In-place
Disposable
_______ method of deployment involves performing application updates on existing instances.
In-place
______ method of deployment involves rolling out new instances and terminating older ones.
Disposable
Can you modify a launch configuration after the fact?
No
Your team is developing an application for a government project. For continuous deployment, you have built a CloudFormation stack to deploy EC2 instances. A third party software is installed in the instances and its license requires that the software should be bound to dedicated virtual machines. Whenever the CloudFormation stack is redeployed, the software should be installed in the same physical hosts. Which method would you select to achieve this requirement?
Allocate dedicated hosts for this application which allow you to reliably launch EC2 instances on the same physical servers. In the CloudFormation template, specify the allocated HostID and configure the tenancy type to be dedicated host.
Your team has created a new deployment in AWS CodeDeploy service. It automates the deployments for a new Node.js application to Amazon EC2 instances. In order to pass a notification to a Slack channel whenever deployments fail, a DevOps engineer configured a CloudWatch Event rule as follows:
{
“source”: [
“aws.codedeploy”
],
“detail-type”: [
“CodeDeploy Instance State-change Notification”
],
“detail”: {
“state”: [
“FAILURE”
]
}
}
The Event rule uses a Lambda function as the target to send notifications. However, the Slack channel does not receive notifications when deployments have failed. The DevOps engineer asks you for help. How would you resolve the issue?
Modify the detail-type to be “CodeDeploy Deployment State-change Notification” in the CloudWatch Event rule.