Amazon Elastic Beanstalk
           Eberhard Wolff
Architecture & Technology Manager
             adesso AG
History & Origin
History & Origin
•  Amazon: cloud pioneer
•  Original offerings
  –  EC2 Elastic Computer Cloud
  –  S3 Simple Storage Service
•  Many other offerings
  –  E.g. (relational) databases, Map / Reduce
     …
•  Foundation for many other services
Other Amazon Services
•  Elastic Load Balancer
•  Auto Scaling (starts new EC2 instances)
•  EBS: Elastic Block Storage (virtual
   harddisks)
Elastic Beanstalk in a Nutshell
•  EC2 Server                Elastic Load Balancer
                                 Auto Scaling
•  +Linux
•  +OpenJDK           EC2 Server   EC2 Server
•  +Tomcat               Linux
                       OpenJDK
                                      Linux
                                    OpenJDK
                                                     ...

•  Scaling Elastic      Tomcat       Tomcat

   Load Balancer /
   Auto Scaling
•  Deploy artefacts                  WAR

   on S3                              S3
Programming Model
•  OpenJDK + Tomcat

•  Standard Java Programming Model

•  Also supported: Python, PHP
   (Linux), .NET (Windows Server
   2008R2)
Scaling / High Availability
•  Servers automatically started (Auto
   Scaling)

•  Failed servers will be restarted
•  Servers can run in several data centers
Tools
Web Console
•  Web UI
•  Wizard to create new application
•  + environment to run the application on
Some tricks...
•  Easy to create a new environment
•  E.g. for testing, staging
•  URLs can be swapped
  –  deploy new version on new environment
  –  switch URLs
  –  zero downtime
More tools
•  All web console action also possible
   using SOAP Web Services

•  Eclipse Plug In
  –  Manage all AWS resources (EC2, S3…)
  –  Manage Elastic Beanstalk server just like
     local servers
Eclipse Plug In
Flexibility
Flexibility
•  Tuning possible
  –  E.g. JVM parameters
  –  Load balancer configuration
  –  Can even use your own system images
  –  i.e. can add software, fine tune …
•  Can log into running servers
•  Session handling can be tuned
•  Can use EC2 if Elastic Beanstalk is not
   flexible enough
New: Configuration Files
•    Part of the deployable artefact
•    declaratively install packages & libraries
•    configure software components
•    run commands
•    set environment variables
•    create users & groups
Platform and other Services
Plattform
•    Amazon Web Services
•    Proven foundation
•    Used for many other cloud plattforms
•    …and by many users
•    Includes monitoring
•    No additional charges to EC2 / S3
•    Free tier (750 h/month for one year)
     available
Other Services
•  Amazon Relational Database Service
  –  Oracle, MySQL, MS SQL Server
  –  Integration in Elastic Beanstalk possible
•  Diverse NoSQL solutions (e.g.
   DynamoDB, SimpleDB)
•  Lots of AWS services (Map/Reduce,
   Caches etc)
•  Other services provided by 3rd parties
Amazon Elastic Beanstalk:
          Highlights
•  Proven foundation
•  Standard Java stack (Tomcat +
   OpenJDK)
•  World wide availability (incl. Europe)
•  Lots of additional services

Amazon Elastic Beanstalk

  • 1.
    Amazon Elastic Beanstalk Eberhard Wolff Architecture & Technology Manager adesso AG
  • 2.
  • 3.
    History & Origin • Amazon: cloud pioneer •  Original offerings –  EC2 Elastic Computer Cloud –  S3 Simple Storage Service •  Many other offerings –  E.g. (relational) databases, Map / Reduce … •  Foundation for many other services
  • 4.
    Other Amazon Services • Elastic Load Balancer •  Auto Scaling (starts new EC2 instances) •  EBS: Elastic Block Storage (virtual harddisks)
  • 5.
    Elastic Beanstalk ina Nutshell •  EC2 Server Elastic Load Balancer Auto Scaling •  +Linux •  +OpenJDK EC2 Server EC2 Server •  +Tomcat Linux OpenJDK Linux OpenJDK ... •  Scaling Elastic Tomcat Tomcat Load Balancer / Auto Scaling •  Deploy artefacts WAR on S3 S3
  • 6.
    Programming Model •  OpenJDK+ Tomcat •  Standard Java Programming Model •  Also supported: Python, PHP (Linux), .NET (Windows Server 2008R2)
  • 7.
    Scaling / HighAvailability •  Servers automatically started (Auto Scaling) •  Failed servers will be restarted •  Servers can run in several data centers
  • 8.
  • 9.
    Web Console •  WebUI •  Wizard to create new application •  + environment to run the application on
  • 19.
    Some tricks... •  Easyto create a new environment •  E.g. for testing, staging •  URLs can be swapped –  deploy new version on new environment –  switch URLs –  zero downtime
  • 20.
    More tools •  Allweb console action also possible using SOAP Web Services •  Eclipse Plug In –  Manage all AWS resources (EC2, S3…) –  Manage Elastic Beanstalk server just like local servers
  • 21.
  • 22.
  • 23.
    Flexibility •  Tuning possible –  E.g. JVM parameters –  Load balancer configuration –  Can even use your own system images –  i.e. can add software, fine tune … •  Can log into running servers •  Session handling can be tuned •  Can use EC2 if Elastic Beanstalk is not flexible enough
  • 24.
    New: Configuration Files •  Part of the deployable artefact •  declaratively install packages & libraries •  configure software components •  run commands •  set environment variables •  create users & groups
  • 25.
  • 26.
    Plattform •  Amazon Web Services •  Proven foundation •  Used for many other cloud plattforms •  …and by many users •  Includes monitoring •  No additional charges to EC2 / S3 •  Free tier (750 h/month for one year) available
  • 27.
    Other Services •  AmazonRelational Database Service –  Oracle, MySQL, MS SQL Server –  Integration in Elastic Beanstalk possible •  Diverse NoSQL solutions (e.g. DynamoDB, SimpleDB) •  Lots of AWS services (Map/Reduce, Caches etc) •  Other services provided by 3rd parties
  • 28.
    Amazon Elastic Beanstalk: Highlights •  Proven foundation •  Standard Java stack (Tomcat + OpenJDK) •  World wide availability (incl. Europe) •  Lots of additional services