Running on Elastic Beanstalk


Published on

Published in: Technology
  • Be the first to comment

  • Be the first to like this

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide
  • On the axis between IaaS and PaaS it’s closer to IaaS
  • No built it Database or other stuff included
  • Not comparing DB costs – cause you can use RDS for Heroku / Cloud bees
  • We use GrayLog2 for central loggingWe have build scripts to add versioning to the deployed WAR filesSSH – find ELB, goto EC2, find the ELB by name, look at the healthy instances, copy the name, goto EC2 instances and find it"configuration feature for IaaS, like InstallShield. It makes it easy to deploy and configure an application“You need to understand OPS to operate it If you want to have Ops people on staff or use your Dev resources to troubleshoot issues when your PaaS provider goes down, then AWS Elastic Beanstalk is an option
  • Custom AMIInstall some OS monitoring agent
  • Running on Elastic Beanstalk

    1. 1. Running onAWS Elastic Beanstalk Alex Verdyan
    2. 2. 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
    3. 3. Elastic Beanstalk?• AWS offering for Java PaaS * Recently added support for .NET and PHP
    4. 4. What do you get?• Tomcat on EC2 instance ( up to date )• Load balancer with DNS name ****• 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
    5. 5. Architecture Versions
    6. 6. 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…
    7. 7. 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
    8. 8. 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
    9. 9. 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 *
    10. 10. DEMO
    11. 11. Thank you