Dev Ops Flashcards
What services can CodeDeploy deploy to? (With the exception of Cloudformation)
EC2, ECS, Lambda and Auto-Scaling Group. Can also deploy to on-prem
Whats the AWS IDE Service?
AWS Cloud9
What are the CodePipeline existing step types?
-Source
-Build
-Deploy
-Test
-Invoke (Invokes custom function)
-Approval
AWS OpsWork provides managed instances to run what services?
Chef or Puppet
True or False: The recommended monitoring services recommended for debuggind microsrvice architectures are X-Ray and CloudTrail
True
What’s the default file that configures the actions to be executed in code build?
buildspec.yml
What’s the default file that configures the code deploy?
appspec.yml
What IaC services are available on AWS?
-AWS Cloudformation
-AWS Cloud Development Kit (CDK)
-AWS Copilot
-AWS Proton
-AWS App2Container
What is the AWS CDK?
It’s a software development framework on a format similar to programming languages.
True or False: AWS CDK uses Cloudformation under the hood to create it’s resources
True
What is AWS Copilot?
Copilot is a CLI for launching and managing containerized applications, automating deployment pipelines, and deploying application infrastructure on AWS
True or false: Copilot can only launch resources in services directly related to container images, such as ECS and ECR, with other resources such as ELBs having to be created using a different service
False, Copilot can create resources on most services useful for a containerized aplication, including ELBs, VPCs and ECR registries
What is AWS Proton?
AWS Proton is a fully managed delivery service for containerized applications. It includes tools for infrastructure provisioning, code deployments, monitoring, and updates
What is App2Container?
AWS App2Container (A2C) is a command-line tool for converting .NET and Java applications into containerized applications
It is possible to configure how an AWS Cloudformation Stack will treat its resources when it’s deleted through DeletionPolicy. What kinds of deletion policies are there?
-DeletionPolicy=Retain: Resources created are not deleted
-DeletionPolicy=SnapShot: Create a SnapShot before deleting. Only works for some resources. Ex: EBS, RDS DBInstance
-DeletionPolicy=Delete: Default behaviour. Delete the resource.
What is a CloudFormation custom resource?
It is a resource created to address any use case not presently addressed on CloudFormation.
How do CloudFormation custom resources work?
You create a Lambda Function that is accessed by CloudFormation and this Lambda fucntion is responsible for creating your resource.
In which cases are CloudFormation custom resources useful?
-To implement a new service not supported yet
-To perform on-prem deployments
-To empty an S3 bucket before deleting
-Etc
What is CloudFormation Drift?
It is a functionality that detects if a resource created by a stack has been altered when compared to the stack template.
True or False: It is possible to import a stack to another new stack using CloudFormation Resource Import
True
True or False: A Cloudformation Stack can be imported by multiple Stacks ate the same time using CloudFormation Resource Import
False, it can be inside only one stack at a time
True or false: Copilot can only deploy to Fargate, not EC2
True
What are the types of service architectures available on Copilot?
-Request-driven web service
-Load balanced web service
-Backend service
-Worker service
What is Amazon CodeGuru?
It’s a service that uses ML to automates code reviews by identifying code mantainability and security issues and perform application recommendations.
What are CodeGuru’s main functionalities?
-CodeGuru Reviewer: Automates code review for static code analysis (development)
-CodeGuru Profiler: Visibility/recommendations about application performance during
runtime (production)
True or False: Amazon CodeGuru Reviewer supports Java, JS, Python and Ruby
False, only Python and Java
Explain the difference between rolling updates and blue/green deployment
-Rolling updates: Gradually replaces old versions of the application for new ones.
-Blue/Green deployment: Creates a mirror of the application with a new version and slowly redirects traffic to it.
You have an ECS Task with a desired count of 4 running with 4 containers online. A new version of the container is launched and will be implemented using a rolling update. If the minimumHealthyPercent is 50 and the maximumPercent is 150, how many instances of each type will be left running when the rolling update starts?
2 of the 1st version and 4 of the 2nd version.
What are the 3 types of Blue/Green deployment (Only names)?
-Canary Deployment
-Linear Deployment
-All-at-once deployment
Describe how a Blue/Green canary deployment works
A canary deployment creates a mirror of the application with the new version of the deployment and redirects a small percentage of the application traffic there. If no errors are identified you then shift over the rest of the traffic.
Describe how a Blue/Green linear deployment works
A Linear Deployment works by costantly redirecting a percentage of traffic to the new dploymetn version every x period of time. Ex: 10% every 3min
Describe how a Blue/Green all-at-once deployment works
You shift all traffic to the new version immediately
What services on AWS are responsible for a rolling update and a blue/green deployment on a containerized architecture?
Rolling update: ECS
Blue/Green: CodeDeploy
In what programming language is the CDK’s structure based on?
TypeScript
AWS Service Catalog templates are called ________
Products
What is best practice with a backend database when you wish to use blue/green deployments?
Make sure all database changes are backward compatible.
CodeDeploy accepts both Blue/Green deployments and In-place deployments. What are the differences between both of them?
-Blue/Green: Create parallele architecture and reroute to it
-In-place: Substitute currently running instances with new ones
What Lambda feature must you use for Code Deploy to perform a Blue/Green deployment on AWS Lambda?
Traffic Shifting
What is Cloudformation Stack Sets?
It is a functionality that allows Organization accounts to deploy Cloudformation Stacks accross different accounts and regions
To enable automatic deploy of Cloudformation StackSets to different OU accounts you mus enable the ____________ feature
Automatic Deploy