EB

Elastic Beanstalk(EB)

Elastic Beanstalk is a fancy wrapper for EC2 instance with like load-balancing and shit

Doesn't cost more to use this service then the underlying resources:

  • security group

  • load balancer

  • auto scaling configuration & group

  • Ec2 - good to configure logs streaming

  • S3

  • Cloudwatch

Deployment Types

All at once - <1 min for one EC2 and just takes down servers and sends update

Rolling – one batch at a time stopping and reverting on failure. Reduced capacity

Rolling with additional batch – Start and deploys on a batch, then rolling so no reduced capacity. But extra time to spin up new instance

Immutable – Deploy to new single instance, starts by deploying your application code to a single newly created EC2 instance. Once the deployment succeeds on the first instance, the remaining number of instances required to create a parallel fleet are created and the application code is deployed to them. After the deployment succeeds on the entire parallel fleet, instances running the old application version are terminated 25% at a time. This deployment policy ensures that the impact of a failed deployment is minimal (i.e.: a single EC2 instance) and enables your application to serve traffic at full capacity during an ongoing deployment.

Initialize on the Command Line

In the coding directory, run these commands for nice step by step creation

brew installing eb cli 
eb init
eb create

Usage

eb open # to see
eb deploy # to deploy last commit

Initialize In Console

Defaults are pretty minor without a load balancer and just a micro

Software - Nodejs default startup is app.js, index.js, then npm start; can set start command thought.

Security - Can set key to ssh into EC2 here

Internal Usage

/var/app is where app is deployed

Check the logs in cloudwatch or in the logs tab

Bugs

Website error after eb open

Make sure to run website on the right port(usually 80 for the web)

Last updated