Quiz: Deployment

Question

Time left

2mn 15s per Q

Score

0

What is the answer to this questions?


A

Choice 1

B

Choice 2

C

Choice 3

D

Choice 4

1 / 5
AWS Deploy a Node.js Web App
2 / 5
Automating the Deployment of Encrypted Web Services with the AWS SDK
3 / 5
AWS CodeDeploy now supports linear and canary deployments for Amazon ECS
4 / 5
AWS AMPLIFY TEAM ENVIRONMENTS
5 / 5
Amazon Managed Workflows for Apache Airflow (MWAA)

AWS Training Videos
Deployment

This domain makes up 22% of the exam and includes the following 4 objectives:
1. Deploy written code in AWS using existing CI/CD pipelines, processes, and patterns.
2. Deploy applications using Elastic Beanstalk.
3. Prepare the application deployment package to be deployed to AWS.
4. Deploy serverless applications.

AWS Certified Developer Associate SAA-C02 : Security

1

AWS CodeBuild
AWS CodeBuild is a fully managed continuous integration service that compiles source code, runs tests, and produces software packages that are ready to deploy. With CodeBuild, you don't need to provision, manage, and scale your own build servers.

2

How can you prevent CloudFormation from deleting your entire stack on failure?
-Set the Rollback on failure radio button to No in the CloudFormation console
- Use the --disable-rollback flag with the AWS CLI
- Enable termination protection to prevent users from deleting the stack from the AWS CloudFormation console or AWS Command Line Interface (AWS CLI)

3

What is the name of the file used to specify source files and lifecycle hooks?
The application specification file (AppSpec file) is a YAML-formatted or JSON-formatted file used by CodeDeploy to manage a deployment.

4

In the CodeDeploy AppSpec file, what are hooks used for?
The 'hooks' section for an EC2/On-Premises deployment contains mappings that link deployment lifecycle event hooks to one or more scripts.

5

What does Amazon Elastic Beanstalk provide?
Elastic Beanstalk provides an application container on top of Amazon Web Services.

6

Are Reserved Instances available for Multi-AZ Deployments?
Reserved Instances are available for Multi-AZ Deployments for for all instance types

7

A Lambda deployment package contains?
Function code and libraries not included within the runtime

8

AWS::Serverless::Application
AWS::Serverless::Application resource in AWS SAm template is used to embed application frm Amazon S3 buckets.

9

Part of your CloudFormation deployment fails due to a mis-configuration, by default what will happen?
CloudFormation will rollback the entire stack if part of your CloudFormation deployment fails due to a mis-configuration.

10

Application Load Balancers
Application Load Balancers can use host-based rules to support multiple hostnames and SSL certs on one Application Load Balancer. The Classic Load Balancers could be merged into less Application Load Balancers, which would offer substantial cost savings.

11

What is a Canary Deployment?
A canary deployment, or canary release, allows you to rollout your features to only a subset of users as an initial test to make sure nothing else in your system broke.
The initial steps for implementing canary deployment are: - create two clones of the production environment,

- have a load balancer that initially sends all traffic to one version,

- create new functionality in the other version.

When you deploy the new software version, you shift some percentage – say, 10% – of your user base to the new version while maintaining 90% of users on the old version. If that 10% reports no errors, you can roll it out to gradually more users, until the new version is being used by everyone. If the 10% has problems, though, you can roll it right back, and 90% of your users will have never even seen the problem.
Canary deployment benefits include zero downtime, easy rollout and quick rollback – plus the added safety from the gradual rollout process. It also has some drawbacks – the expense of maintaining multiple server instances, the difficult clone-or-don’t-clone database decision.
Typically, software development teams implement blue/green deployment when they’re sure the new version will work properly and want a simple, fast strategy to deploy it. Conversely, canary deployment is most useful when the development team isn’t as sure about the new version and they don’t mind a slower rollout if it means they’ll be able to catch the bugs.

12

What is a Blue Green Deployment?
Blue-green deployment is a technique that reduces downtime and risk by running two identical production environments called Blue and Green.
At any time, only one of the environments is live, with the live environment serving all production traffic. For this example, Blue is currently live, and Green is idle.
As you prepare a new version of your model, deployment and the final stage of testing takes place in the environment that is not live: in this example, Green. Once you have deployed and fully tested the model in Green, you switch the router, so all incoming requests now go to Green instead of Blue. Green is now live, and Blue is idle.
This technique can eliminate downtime due to app deployment and reduces risk: if something unexpected happens with your new version on Green, you can immediately roll back to the last version by switching back to Blue.

13

What is DevOps?
By the name DevOps, it’s very clear that it’s a collaboration of Development as well as Operations. But one should know that DevOps is not a tool, or software or framework, DevOps is a Combination of Tools which helps for the automation of the whole infrastructure.
DevOps is basically an implementation of Agile methodology on the Development side as well as Operations side.

14

Why do we need DevOps?
To fulfil the need of delivering more and faster and better application to meet more and more demands of users, we need DevOps. DevOps helps deployment to happen really fast compared to any other traditional tools.

15

What are the key aspects or principle behind DevOps?
- Infrastructure as a Code

- Continuous Integration

- Continuous Deployment

- Automation

- Continuous Monitoring

- Security

16

What is a version control system?
Version Control System (VCS) is a software that helps software developers to work together and maintain a complete history of their work. Some of the feature of VCS as follows: - Allow developers to wok simultaneously

- Does not allow overwriting on each other changes.

- Maintain the history of every version.

There are two types of Version Control Systems: - Central Version Control System, Ex: Git, Bitbucket

- Distributed/Decentralized Version Control System, Ex: SVN

AWS Training Videos