1
Q

What does AWS Elastic Beanstalk allow you to do?

A

Deploy application in AWS safely, predictably, without having to worry about managing infrastructures directly.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

What does AWS EB uses under the hood?

A

CloudFormation

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

What components does AWS EB leverages?

A

EC2, ASG, ELB, EBS, RDS, etc.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

How can you customize your infrastructure when using AWS EB?

A

By modifying the configuration in the beautiful dashboard the service provides.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

What is the pricing of AWS EB?

A

Itโ€™s free, you only pay for the underlying resources.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

What is the responsibility of the developer when using AWS EB?

A

Providing the application code

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Who manages deployments when using AWS EB?

A

The developer is responsible for choosing his preferred deployment strategy and provide his code. The deployment itself is handled by AWS EB.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

What type of web architecture does AWS EB facilites the management of?

A

The typical 3-tier web app architecture

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

What are the three architecture models when deploying an app to EB?

A
Single instance (good for dev)
LB + ASG (good for prod web apps)
ASG only (good for workers)
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

What are the three important concepts to understand in apps managed by AWS EB? (Think about the GUI of the EB console)

A

Application itself
Application version
Environment name

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

What is the naming convention for EB environment name?

A

Free naming

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Where do you deploy application versions to in EB?

A

To environments (E.g. You deploy to dev)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Where can you promote application versions to in EB?

A

To environments (E.g. You promote from dev to prod)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Can you rollback to previous application versions in EB?

A

Yes

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

What platforms does EB support?

A
Go
Java SE
Java with Tomcat
.NET (Windows Server with IIS)
Node.JS
PHP
Python
Ruby
Packer Build
Single Container Docker
Multicontainer Docker
Preconfigured Docker
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

What should you do if EB does not support your platform?

A

You create a custom one

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
17
Q

What are the available deployment methods in EB?

A
All at once
Rolling
Rolling with additional batches
Immutable
Blue/Green
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
18
Q

What is the fastest deployment method in EB?

A

All at once

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
19
Q

What are the longest deployment method in EB?

A

Immutable and Blue/Green

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
20
Q

Which deployment methods incur additional charges in EB?

A

Rolling with batches
Immutable
Blue/Green

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
21
Q

How does the Immutable deployment method works in EB?

A

New instances are spin up in a new temporary ASG
The new version of the app is deployed to these new instances
When everything is healthy, new instances are transferred to the main ASG
Old instances are shutdown as well as the temporary ASG

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
22
Q

How does the Blue/Green deployment works in EB?

A

Similar to Immutable, but rather than having a new ASG, you get a completely new โ€œstageโ€ environment, and the DNS (Route 53) is responsible for sending a fraction of the traffic to the new environment. When the new environment is good to go and approved, the DNS start sending all of the traffic to the new stage which can be renamed to โ€œprodโ€ for convenience if desired.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
23
Q

What is the rollback process of the โ€œAll at onceโ€ deployment method?

A

Manual Redeploy

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
24
Q

What is the rollback process of the โ€œRollingโ€ deployment method?

A

Manual Redeploy

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
25
What is the rollback process of the "Rolling with additional batch" deployment method?
Manual Redeploy
26
What is the rollback process of the "Immutable" deployment method?
Terminate New Instances
27
What is the rollback process of the "Blue/Green" deployment method?
Swap URL
28
To which instances is the code deployed to in the "All at once" deployment method?
Existing instances
29
Where is the code deployed to in the "Rolling" deployment method?
Existing instances
30
To which instances is the code deployed to in the "Rolling with additional batch" deployment method?
New and existing instances
31
To which instances is the code deployed to in the "Immutable" deployment method?
New instances
32
To which instances is the code deployed to in the "Blue/Green" deployment method?
New instances
33
Which deployment method incur a DNS change?
Blue/Green
34
What is the impact of a failed deployment when using the "All at once" deployment method?
Down time
35
What is the impact of a failed deployment when using the "Rolling" deployment method?
Single batch out of service, the rest have either successfully updated or have not yet started updating
36
What is the impact of a failed deployment when using the "Rolling with additional batch" deployment method?
Minimal if it is the first batch, otherwise it is similar to rolling
37
What is the impact of a failed deployment when using the "Immutable" deployment method?
Minimal
38
What is the impact of a failed deployment when using the "Blue/Green" deployment method?
Minimal
39
What is the main drawback of the "Rolling ..." deployment methods?
You have the application running in both versions for a little while
40
Which parameters set in the EB UI can be configured in EB extensions?
All the parameters
41
Where must EB extensions be in our code base?
In a .ebextensions/ directory at the root level of our source code
42
What is the file naming convention for EB extensions?
File names can be anything | File extension must be .config
43
In what format are EB extensions written?
JSON or YAML
44
How can you add resources to EB from your source code?
In EB extensions file
45
What happens to resources managed by .ebextensions/files.config if the env goes away?
They get deleted
46
What is the EB CLI?
A great way to generate and manage EB projects easily from our local computer
47
What are the most common EB CLI commands?
``` eb create eb status eb health eb events eb logs eb open eb deploy eb config eb terminate ```
48
What is the EB Deployment Mechanism? (Installation process)
Code is zipped Zip file is uploaded to EC2 machines Each EC2 machine resolves dependencies and install the software
49
How to accelerate the deployment in EB?
By packaging dependencies with the source code
50
What are the two things you need to do to get HTTPS with EB?
Load SSL certificate onto the LB either from the EB Console or from the the code (in a .ebextensions/file.config) Allow incoming port 443 (HTTPS port)
51
How can you provision an SSL Certificate?
By using ACM (AWS Certificate Manager) or CLI
52
How can you redirect HTTP to HTTPS with EB?
Configuring your instances OR by configuring the ALB with a rule
53
What do you have to make sure when redirrecting traffic from HTTP to HTTPS in EB?
Not redirecting health checks (so they keep giving 200 OK responses)
54
How many versions can EB store at most?
1000
55
How to make sure you don't end up with 1000 versions and are not able to deploy new versions?
By setting a lifecycle policy for the EB application
56
What are the things EB lifecyle policies can be based upon?
Based on time (old versions are removed) | Based on space (when you have too many versions)
57
Can versions that are currently being used be deleted?
No
58
How can you keep more than a 1000 versions?
By choosing the option not to delete older versions but to store them in S3
59
What should you do if your EB app has tasks that are long to complete?
Offload these tasks to a dedicated worker environment
60
How can you define periodic tasks in EB?
In a worker environment, create a cron.yaml file
61
Should RDS DB be provisioned with Beanstalk?
For dev/test it could be good, but for prod not so much
62
How to migrate from RDS coupled in EB to standalone RDS?
Take an RDS snapshot Enable deletion protection in RDS Create a new environement without an RDS which points to the old RDS (which is still attached to the old environment) Perform a Blue/Green deployment and swap new and old environments Terminate the old environment (RDS is not deleted because of deletion protection) Delete CloudFormation stack of the old EB environment