AWS Elastic Beanstalk

정연희·2024년 5월 29일
0

AWS

목록 보기
15/18

Elastic Beanstalk is a developer centric view of deploying an application on AWS.

  • It uses all the components we've seen before (EC2, ASG, ELB, RDS..). I\
  • managed service
    • automatically handels capacity provisioning, load balancing, scaling, application, health monitoring, instance configuration
    • just the application code is the responsibility of the developer
  • developer has full control over the configuration
  • beanstalk is free but you pay for the underlying instances

Components

  • application

    • collectino of Elastic Beanstalk components(environments, verions, configurations..)
  • application version

    • an iteration of your application code
    • ex. version1, version 2, ...
  • envrionment

    • colelction of AWS resources running an application version(only one application version at a time)
    • tiers
      • web server environment tier & worker environment tier
    • you can create multiple environments
      • dev, test, prod, ...

Web server environment VS Worker environment

Web server environment

Web server environment is the traditional archite ture where we have a load balancer which sends traffic to an auto scaling group with multiple EC2 instances (web servers). This is the architecture number one with Beanstalk.

Worker environment

On the other hand, the architecture number two with Beanstalkis going to be around a worker environment. This time there are no clients directly accessing your EC2 instances.

  • This environment uses an SQS queue, which is a message queue where the messages will be sent to.
  • The EC2 instances are going to be workers, because they're going to pull messages from the SQS queue to process them.
  • And in this case, the worker environment is going to scale based on the number of SQS messages. So the more messages, the more EC2 instances.

Elastic Beanstalk Deployment Modes

0개의 댓글