Elastic Beanstalk Flashcards

1
Q

EB

A
  • use all aws components together, automatically handles capacity provisioning, load balancing, scaling, etc
    • allows the dev to focus on actually coding!
  • can easily clone environments
  • uses CloudFormation under the hood
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

EB components

A
  • application - collection of beanstalk components
  • app version - iteration of you app code
  • environment - collection of aws resources running an app version (dev, test, prod)
    • tiers
      • web server tier
      • worker environment tier - sqs queue
      • can combing web server and worker env
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

EB Deployment modes

A
  • single instance - great for dev
    • DNS name → elastic IP
  • high availability w/ load balancer - great for prod
    • DNS name → ELB DNS name
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

All at once Deployment

A

(deploy all in one go) - fastest but instances aren’t available to serve traffic for a bit

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

Rolling Deployment

A

update a few instances at a time (bucket) and then move onto the next bucket once first bucket is healthy

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

Rolling with additional batches deployment

A

rolling but spins up new instances to move the batch (so that the old app is still available)

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

Immutable

A

spins up new instances in a new ASG, deploys version to these instances, then swaps all instances when everything is healthy. Original instances in old asg remain untouched until deployment is complete.

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

blue/green deployment

A

swap CNAME (environment URLs)

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

Canary Deployment

A

traffic splitting between ASGs

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

Deployment method overview

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

EB extension

A
  • parameters set in UI can be configured in code using files
  • .ebextensions directory in root of source code
    • contains .config extensions (logging.config)
    • anything under ebextensions gets deleted with the environment
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

EB load balancer migration

A
  • after env creation, you cannot change the ELB type (only configuration)
  • steps
    • create new env with same configuration except LB
    • deploy app to new env
    • perform CNAME swap or Route 53 update
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

EB w/ Docker

A
  • can run an app as a single docker container
    • beanstalk in single docker container does NOT use ECS
  • multi docker containers per ec2 instance
    • requires a dockerrun.aws.json at root of source code - used to generate task defintion in ECS
    • image must be pre-built and stored in a repo somewhere
How well did you know this?
1
Not at all
2
3
4
5
Perfectly