Public PaaS Throwdown!

15
Public PaaS Throwdown! AWS User Group 25 September 2013 Ronak Mallik [email protected] @ronak

description

A Public PaaS Throwdown presented to the AWS Usergroup in Melbourne on September 25, 2013

Transcript of Public PaaS Throwdown!

Page 1: Public PaaS Throwdown!

Public PaaS Throwdown!

AWS User Group25 September 2013

Ronak [email protected]

@ronak

Page 2: Public PaaS Throwdown!

Agenda

● What is PaaS?● The Contenders● Sample App/Criteria● Analysis/Scorecards● Q/A

Page 3: Public PaaS Throwdown!

What is PaaS?

● Write, deploy, run.● Self service● Polygot● Great for developers● Great for Ops (STOP giving developers VMs!)

Code Deploy Run

Images courtesy of Red Hat

Page 4: Public PaaS Throwdown!

Cloud Service Models

STORAGE

HARDWARE

VIRTUALIZATION

OPERATING SYSTEM

APPLICATION PLATFORM(App servers, PHP, RUBY, ETC)

APPLICATION

Automated and Managed by the Public or Private Cloud Offering

Managed and Controlled by Customer (IT, Dev, or User)

IaaS PaaS SaaS

Increased Control

Increased Automation

Images courtesy of Red Hat

Page 5: Public PaaS Throwdown!

Streamlining App Dev with PaaS

With PaaS

How to Build an App:1. Have Idea2. Get Budget3. Code4. Test5. Launch6. Automatically Scale

How to Build an App:1. Have Idea2. Get Budget3. Submit VM Request request4. Wait5. Deploy framework/appserver6. Deploy testing tools7. Code8. Test9. Configure Prod VMs10. Push to Prod11. Launch12. Request More Prod VMs to

meet demand13. Wait14. Deploy app to new VMs15. Etc.

Virtualised

How to Build an App:1. Have Idea2. Get Budget3. Submit hardware acquisition request4. Wait5. Get Hardware6. Rack and Stack Hardware7. Install Operating System8. Install Operating System

Patches/Fix-Packs9. Create user Accounts10. Deploy framework/appserver11. Deploy testing tools12. Code13. Test14. Configure Prod servers (and buy

them if needed)15. Push to Prod16. Launch17. Order more servers to meet demand18. Wait…19. Deploy new servers20. Etc.

Physical

“The use of Platform-as-a-Service technologies will enable IT organizations to become more agile and more responsive to the business needs.” –Gartner*

Images courtesy of Red Hat

Page 6: Public PaaS Throwdown!

The Contenders

Elastic Beanstalk

Page 7: Public PaaS Throwdown!

...ALL RUNNING ON EC2

Elastic Beanstalk

Page 8: Public PaaS Throwdown!

Sample Apps

● Ticketmonster● Example Ticketing App● Java EE6 - JSF 2, JPA 2, CDI and JAX-RS Along with HTML5, jQuery Mobile, JSF and GWT, postgres

https://github.com/jboss-jdf/ticket-monster

● Etherpad● A really-real time collaborative word processor for the webg● node.js, mongodb

https://github.com/ether/etherpad-lite

OPEN SOURCE!!

Page 9: Public PaaS Throwdown!

Criteria

● Free Tier? Costs?● Polygot? At least Java + node.js support● Speed to live?● Tooling?● Does it scale?● Lock-in?● Is it Open Source?● Can I go to Production?● Where is my app running? Can I run the PaaS somewhere else?

Page 10: Public PaaS Throwdown!

AWS – Elastic Beanstalk

● “Wizard for deploying apps to EC2”● Is it really Paas?● Fast, easy, and massively scalable though...

Free Tier? +

Polygot? +

Speed to live? +

Tooling? +

Does it scale? +

Lock-in? +

Is it Open Source? -

Can I go to prod? +

Run the PaaS somewhere else? -

Tally: 7 (out of 9)

Page 11: Public PaaS Throwdown!

CloudBees● Phenomenal focus on CI+Devops features● Java focused● High density (many workloads per VM)● Fast, easy, deployments. Plethora of tooling.

Free Tier? +

Polygot? - *

Speed to live? +

Tooling? +

Does it scale? +

Lock-in? +

Is it Open Source? - *

Can I go to prod? +

Run the PaaS somewhere else? -

Tally: 6-8 (out of 9)

Page 12: Public PaaS Throwdown!

Cloud Foundry (Pivotal Hosted)

● In Beta, no SLAs. Long queue for invite.● Minimal documentation● Open Source, can run anywhere!

Free Tier? +

Polygot? +

Speed to live? +

Tooling? +

Does it scale? +

Lock-in? +

Is it Open Source? +

Can I go to prod? -

Run the PaaS somewhere else? +

Tally: 8 (out of 9)

Page 13: Public PaaS Throwdown!

Heroku● Mature● High Density (many running Dynos on one VM)● Supports many languages● Large community of users

Free Tier? +

Polygot? +

Speed to live? +

Tooling? +

Does it scale? +

Lock-in? +

Is it Open Source? -

Can I go to prod? +

Run the PaaS somewhere else? -

Tally: 7 (out of 9)

Page 14: Public PaaS Throwdown!

OpenShift

● Open Source, many languages, DIY cartridges● High Density (many running gears on one VM)● OpenShift Enterprise = Run Anywhere

Free Tier? +

Polygot? +

Speed to live? +

Tooling? +

Does it scale? +

Lock-in? +

Is it Open Source? +

Can I go to prod? +

Run the PaaS somewhere else? +

Tally: 9 (out of 9)

Page 15: Public PaaS Throwdown!

Summary

All of contenders have a free tier + speed to live

Key Differentiators are:● Community and Support● Cost after free (depends on workload profile)● Production readiness

All of these run on EC2 under the covers :-)

No more excuses... code. deploy. innovate.