running on elastic beanstalk

11

Click here to load reader

Upload: alex-verdyan

Post on 06-Jul-2015

1.654 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: Running on Elastic Beanstalk

Running on

AWS Elastic Beanstalk

Alex Verdyan

Page 2: Running on Elastic Beanstalk

AWS Glossary

• EC2 – Elastic Compute Cloud = Cloud Servers (Instances)

• S3 - Simple Storage Service = Cloud Storage (REST API)

• ELB – Elastic Load Balancer = Load balancer

• AMI – Amazon Machine Image

• EBS – Elastic Block Store = Attachable network storage

• AZ – Availability Zone

• RDS – Relational DB Service = Cloud RDBMS

(MySQL,Oracle)

• SG – Security Group – Kind of Firewall

Page 3: Running on Elastic Beanstalk

Elastic Beanstalk?

• AWS offering for Java PaaS

* Recently added support for .NET and PHP

Page 4: Running on Elastic Beanstalk

What do you get?

• Tomcat on EC2 instance ( up to date )

• Load balancer with DNS name ****.elasticbeanstalk.com

• Automatic scaling based on your criteria (CPU/Incoming

traffic/Disk IO)

• Management console + REST API + CLI

• Zero downtime deployment

• Log rotation to S3 (access_log, catalina.out)

• Basic monitoring by Load balancer (health check)

• Email notifications

• SSL Support

Page 5: Running on Elastic Beanstalk

Architecture

Versions

Page 6: Running on Elastic Beanstalk

Elastic Beanstalk(EB) - Glossary

• Application

– Collection of all other components

• Version

– Deployable code / resource (WAR)

• Environment

– Version running on a bunch of resources

• Environment Configuration

– JVM args, DB connection string

– Instance size, # instances, auto-scaling…

Page 7: Running on Elastic Beanstalk

Pros

• $$$

– Cheaper than Heroku, CloudBees, Jelastic….

– The EB is free - you pay only for the components you use (EC2,S3,ELB, Network)

• Even cheaper if you buy “Reserved instance”

• Get’s the job done – pretty robust

• We use other AWS services –

– Email, Queues, CloudFront(CDN), Route 53(DNS)…

• REST clients and CLI for everything

Page 8: Running on Elastic Beanstalk

Cons

• Logging

– Central, searchable, live log access

• Deployment - WAR files upload takes time

• No VCS integration

• SSH access to the servers is cumbersome

• No HTTP firewall (mod_security) style

• No simple way to blacklist IP

• Not really a PaaS

Page 9: Running on Elastic Beanstalk

Misc

• Maven plugin (elastic-beanstalker)

• SSL support

• Custom AMIs

– OS / App monitoring agent

– Different Java / Tomcat version

– no automatic Tomcat/OS patches

• We use NewRelic for performance and

monitoring *

Page 10: Running on Elastic Beanstalk

DEMO

Page 11: Running on Elastic Beanstalk

Thank you