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
Q

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

A

Manual Redeploy

26
Q

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

A

Terminate New Instances

27
Q

What is the rollback process of the โ€œBlue/Greenโ€ deployment method?

A

Swap URL

28
Q

To which instances is the code deployed to in the โ€œAll at onceโ€ deployment method?

A

Existing instances

29
Q

Where is the code deployed to in the โ€œRollingโ€ deployment method?

A

Existing instances

30
Q

To which instances is the code deployed to in the โ€œRolling with additional batchโ€ deployment method?

A

New and existing instances

31
Q

To which instances is the code deployed to in the โ€œImmutableโ€ deployment method?

A

New instances

32
Q

To which instances is the code deployed to in the โ€œBlue/Greenโ€ deployment method?

A

New instances

33
Q

Which deployment method incur a DNS change?

A

Blue/Green

34
Q

What is the impact of a failed deployment when using the โ€œAll at onceโ€ deployment method?

A

Down time

35
Q

What is the impact of a failed deployment when using the โ€œRollingโ€ deployment method?

A

Single batch out of service, the rest have either successfully updated or have not yet started updating

36
Q

What is the impact of a failed deployment when using the โ€œRolling with additional batchโ€ deployment method?

A

Minimal if it is the first batch, otherwise it is similar to rolling

37
Q

What is the impact of a failed deployment when using the โ€œImmutableโ€ deployment method?

A

Minimal

38
Q

What is the impact of a failed deployment when using the โ€œBlue/Greenโ€ deployment method?

A

Minimal

39
Q

What is the main drawback of the โ€œRolling โ€ฆโ€ deployment methods?

A

You have the application running in both versions for a little while

40
Q

Which parameters set in the EB UI can be configured in EB extensions?

A

All the parameters

41
Q

Where must EB extensions be in our code base?

A

In a .ebextensions/ directory at the root level of our source code

42
Q

What is the file naming convention for EB extensions?

A

File names can be anything

File extension must be .config

43
Q

In what format are EB extensions written?

A

JSON or YAML

44
Q

How can you add resources to EB from your source code?

A

In EB extensions file

45
Q

What happens to resources managed by .ebextensions/files.config if the env goes away?

A

They get deleted

46
Q

What is the EB CLI?

A

A great way to generate and manage EB projects easily from our local computer

47
Q

What are the most common EB CLI commands?

A
eb create
eb status
eb health
eb events
eb logs
eb open
eb deploy
eb config
eb terminate
48
Q

What is the EB Deployment Mechanism? (Installation process)

A

Code is zipped
Zip file is uploaded to EC2 machines
Each EC2 machine resolves dependencies and install the software

49
Q

How to accelerate the deployment in EB?

A

By packaging dependencies with the source code

50
Q

What are the two things you need to do to get HTTPS with EB?

A

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
Q

How can you provision an SSL Certificate?

A

By using ACM (AWS Certificate Manager) or CLI

52
Q

How can you redirect HTTP to HTTPS with EB?

A

Configuring your instances OR by configuring the ALB with a rule

53
Q

What do you have to make sure when redirrecting traffic from HTTP to HTTPS in EB?

A

Not redirecting health checks (so they keep giving 200 OK responses)

54
Q

How many versions can EB store at most?

A

1000

55
Q

How to make sure you donโ€™t end up with 1000 versions and are not able to deploy new versions?

A

By setting a lifecycle policy for the EB application

56
Q

What are the things EB lifecyle policies can be based upon?

A

Based on time (old versions are removed)

Based on space (when you have too many versions)

57
Q

Can versions that are currently being used be deleted?

A

No

58
Q

How can you keep more than a 1000 versions?

A

By choosing the option not to delete older versions but to store them in S3

59
Q

What should you do if your EB app has tasks that are long to complete?

A

Offload these tasks to a dedicated worker environment

60
Q

How can you define periodic tasks in EB?

A

In a worker environment, create a cron.yaml file

61
Q

Should RDS DB be provisioned with Beanstalk?

A

For dev/test it could be good, but for prod not so much

62
Q

How to migrate from RDS coupled in EB to standalone RDS?

A

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