0
The Building
of the
OpenPaaS
Derek Collison
Friday, November 12, 2010
Safe Harbor Statement
Forward-Looking Statements
This presentation contains forward-looking statements including, among ot...
What is the OpenPaas?
Friday, November 12, 2010
What is the OpenPaas?
• Application Platform as a Service
• Application delivery platform
• Favor choice and openness
• A ...
What is the OpenPaas?
• Application is the unit of currency
• That is what you care about
• Everything else is decided for...
What makes it Open?
Friday, November 12, 2010
What makes it Open?
• Multi-framework
• Sinatra, Rails, Spring, Node.js, Scala, Python, etc.
• Multi-cloud
• Terremark, vC...
More Information
• http://blogs.vmware.com/console/2010/04/vmforce-
and-vmwares-open-paas-strategy.html
• http://blogs.vmw...
But I want control!!
Friday, November 12, 2010
But I want control!!
• I want access to the web server!
• I need access to my app server!
• I need to control all configura...
Relax!
"They got rid of the horizontal
and the vertical settings years
ago."
Friday, November 12, 2010
But Seriously....
• We understand, we get it..
• You’ll have utilityVMs
• Layer 4 IP Connectivity
• Apps will bind to them...
Why do we care?
Friday, November 12, 2010
Why do we care?
• Cloud is about opex, not capex
• PaaS reduces opex
• Major portion of $$ spent is on application
deploym...
Why do we care?
• Speed
• Agility
• How long do you wait to deploy your app?
• What if that was seconds? For any app?
• Wh...
What’s Important?
Friday, November 12, 2010
What’s Important?
• SLA, Services, multiple Service Providers
• Predictable Performance
• Choice and Openness
• The Lightb...
Lightbulb?
Friday, November 12, 2010
Lightbulb!
Friday, November 12, 2010
Lightbulb!
• Opex vs Capex
• Incandescent vs CFL..
• Framework X vs FrameworkY
Friday, November 12, 2010
Lightbulb!
• What if you could light your room for half
the cost?
• How much does that app cost me to run in
the cloud aga...
What isVMforce?
Friday, November 12, 2010
What isVMforce?
• VMware + SalesForce.com
• OpenPaaS instantiation at SalesForce.com
• Spring and Roo Frameworks
• SalesFo...
How does one build
one of these things??
Friday, November 12, 2010
• Inner and Outer shells on top of IaaS
• Outer shell is creation, orchestration, and
management of the infrastructure.
• ...
Basic Premises
Friday, November 12, 2010
Basic Premises
• Should be self healing
• Should be horizontally scalable at all levels
• Should utilize distributed state...
Basic Premises
• Messaging as a foundation
• Addressing
• Component discovery
• Command and Control
• JSON
• HTTP or file s...
App Basics
Friday, November 12, 2010
App Basics
• Execution is start and stop, that’s it!
• Be cloud-ready!
• Shared state, depend on nothing local
• No assump...
App Basics
• Send us everything.. I mean everything
• Can’t create “start” button until you do!
• Bundler is good.. so to ...
Tools
Friday, November 12, 2010
Tools
• Ruby
• EventMachine
• Messaging
• HTTP
• JSON
• Rack/Sinatra/Thin/em-http-request
Friday, November 12, 2010
Tools
• Ruby
• EventMachine
• Messaging
• HTTP
• JSON
• Rack/Sinatra/Thin/em-http-request
Friday, November 12, 2010
Wait, Ruby?? Really?
• Ruby is a great language, well designed..
• Distributed systems architecture has little
to do with ...
Patterns
Friday, November 12, 2010
Patterns
• Event-Driven
• Non-Blocking
• Asynchronous
• N-wise Scalable
• No assumptions
• No Dependency on Central State
...
Components
Friday, November 12, 2010
Components
• Dynamically discoverable
• subscribe(‘you there?’)
• Launch in any order
• publish(‘hello!’)
• Never store ce...
Components
Routers
Droplets/
Apps
CloudControllers
Services
Health
Friday, November 12, 2010
YES!
Is it Real?
Friday, November 12, 2010
Monitoring?
Friday, November 12, 2010
Monitoring?
• Simple
• Publish ‘Who’s there?’
• Everyone responds with HTTP endpoint
• Pull results
• Ask again!
Friday, N...
Friday, November 12, 2010
• VMC - Command Line Interface
• STS - Spring version of Eclipse
Interfaces
Friday, November 12, 2010
Friday, November 12, 2010
Questions?
Friday, November 12, 2010
Thanks!
Friday, November 12, 2010
Upcoming SlideShare
Loading in...5
×

Ruby conf2010 OpenPaaS

1,963

Published on

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
1,963
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
37
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Transcript of "Ruby conf2010 OpenPaaS"

  1. 1. The Building of the OpenPaaS Derek Collison Friday, November 12, 2010
  2. 2. Safe Harbor Statement Forward-Looking Statements This presentation contains forward-looking statements including, among other things, statements regarding the development and functionality of VMware products and services and the timing of their availability. These forward-looking statements are subject to the safe harbor provisions created by the Private Securities Litigation Reform Act of 1995. Actual results could differ materially from those projected in the forward-looking statements as a result of certain risk factors, including but not limited to: (i) adverse changes in general economic or market conditions; (ii) delays or reductions in information technology spending; (iii) competitive factors, including but not limited to pricing pressures, industry consolidation, entry of new competitors into the virtualization market, and new product and marketing initiatives by our competitors; (iv) our customers’ ability to develop, and to transition to, new products and computing strategies such as cloud computing; (v) the uncertainty of customer acceptance of emerging technology; (vi) rapid technological and market changes in virtualization software and platforms for cloud and desktop computing; (vii) changes to product development timelines; (viii) our ability to protect our proprietary technology; (ix) our ability to attract and retain highly qualified employees; and (x) the successful integration of acquired companies and assets into VMware. These forward looking statements are based on current expectations and are subject to uncertainties and changes in condition, significance, value and effect as well as other risks detailed in documents filed with the Securities and Exchange Commission, including our most recent reports on Form 10-K and Form 10-Q and current reports on Form 8-K that we may file from time to time, which could cause actual results to vary from expectations. VMware assumes no obligation to, and does not currently intend to, update any such forward-looking statements after the date of this release. Friday, November 12, 2010
  3. 3. What is the OpenPaas? Friday, November 12, 2010
  4. 4. What is the OpenPaas? • Application Platform as a Service • Application delivery platform • Favor choice and openness • A what? Friday, November 12, 2010
  5. 5. What is the OpenPaas? • Application is the unit of currency • That is what you care about • Everything else is decided for you • And you shouldn’t care Friday, November 12, 2010
  6. 6. What makes it Open? Friday, November 12, 2010
  7. 7. What makes it Open? • Multi-framework • Sinatra, Rails, Spring, Node.js, Scala, Python, etc. • Multi-cloud • Terremark, vCloud, VMforce, vSphere, AWS? • Multi-service • MySQL, Postgres, Redis, RabbitMQ, Memcache, MongoDB, etc.. Friday, November 12, 2010
  8. 8. More Information • http://blogs.vmware.com/console/2010/04/vmforce- and-vmwares-open-paas-strategy.html • http://blogs.vmware.com/console/2010/05/google- and-vmwares-open-paas-strategy.html Friday, November 12, 2010
  9. 9. But I want control!! Friday, November 12, 2010
  10. 10. But I want control!! • I want access to the web server! • I need access to my app server! • I need to control all configurations.. • I want my app placed here, not there! Friday, November 12, 2010
  11. 11. Relax! "They got rid of the horizontal and the vertical settings years ago." Friday, November 12, 2010
  12. 12. But Seriously.... • We understand, we get it.. • You’ll have utilityVMs • Layer 4 IP Connectivity • Apps will bind to them • They will bind to provisioned services • More to come.. Friday, November 12, 2010
  13. 13. Why do we care? Friday, November 12, 2010
  14. 14. Why do we care? • Cloud is about opex, not capex • PaaS reduces opex • Major portion of $$ spent is on application deployment and management • Simplify and save $$ • Storage & Compute are trending -> $0 Friday, November 12, 2010
  15. 15. Why do we care? • Speed • Agility • How long do you wait to deploy your app? • What if that was seconds? For any app? • What if the cloud really was your “other” computer? Friday, November 12, 2010
  16. 16. What’s Important? Friday, November 12, 2010
  17. 17. What’s Important? • SLA, Services, multiple Service Providers • Predictable Performance • Choice and Openness • The Lightbulb! Friday, November 12, 2010
  18. 18. Lightbulb? Friday, November 12, 2010
  19. 19. Lightbulb! Friday, November 12, 2010
  20. 20. Lightbulb! • Opex vs Capex • Incandescent vs CFL.. • Framework X vs FrameworkY Friday, November 12, 2010
  21. 21. Lightbulb! • What if you could light your room for half the cost? • How much does that app cost me to run in the cloud again? • What choices do I have to cut costs? Friday, November 12, 2010
  22. 22. What isVMforce? Friday, November 12, 2010
  23. 23. What isVMforce? • VMware + SalesForce.com • OpenPaaS instantiation at SalesForce.com • Spring and Roo Frameworks • SalesForce.com’s Data and Services • Hosted in SalesForce.com datacenters Friday, November 12, 2010
  24. 24. How does one build one of these things?? Friday, November 12, 2010
  25. 25. • Inner and Outer shells on top of IaaS • Outer shell is creation, orchestration, and management of the infrastructure. • StemcellVMs, raw resources, and change management. • Inner shell runs the core system components • Routers, CloudControllers, ExecutionAgents, HealthManager and Services. How does one build one of these things?? Friday, November 12, 2010
  26. 26. Basic Premises Friday, November 12, 2010
  27. 27. Basic Premises • Should be self healing • Should be horizontally scalable at all levels • Should utilize distributed state • NO single point of failure! • Above all, should be simple and dumb • Dumber as you get closer to the core Friday, November 12, 2010
  28. 28. Basic Premises • Messaging as a foundation • Addressing • Component discovery • Command and Control • JSON • HTTP or file systems for data transport • File system is an optimization Friday, November 12, 2010
  29. 29. App Basics Friday, November 12, 2010
  30. 30. App Basics • Execution is start and stop, that’s it! • Be cloud-ready! • Shared state, depend on nothing local • No assumptions about resources • X File.read(‘/home/derek/stuff’) • X EM.start_server(‘localhost’, 80, h) Friday, November 12, 2010
  31. 31. App Basics • Send us everything.. I mean everything • Can’t create “start” button until you do! • Bundler is good.. so to speak • ‘bundle package’ is better! • How does that not suck though? • Other frameworks? node.js/npm?? Friday, November 12, 2010
  32. 32. Tools Friday, November 12, 2010
  33. 33. Tools • Ruby • EventMachine • Messaging • HTTP • JSON • Rack/Sinatra/Thin/em-http-request Friday, November 12, 2010
  34. 34. Tools • Ruby • EventMachine • Messaging • HTTP • JSON • Rack/Sinatra/Thin/em-http-request Friday, November 12, 2010
  35. 35. Wait, Ruby?? Really? • Ruby is a great language, well designed.. • Distributed systems architecture has little to do with language choice.. • If someone says so, walk the other way! • Of course we all want faster Ruby! • 1.9.2, RBX, JRuby, MagLev Friday, November 12, 2010
  36. 36. Patterns Friday, November 12, 2010
  37. 37. Patterns • Event-Driven • Non-Blocking • Asynchronous • N-wise Scalable • No assumptions • No Dependency on Central State Friday, November 12, 2010
  38. 38. Components Friday, November 12, 2010
  39. 39. Components • Dynamically discoverable • subscribe(‘you there?’) • Launch in any order • publish(‘hello!’) • Never store central state • Health status and state available via HTTP Friday, November 12, 2010
  40. 40. Components Routers Droplets/ Apps CloudControllers Services Health Friday, November 12, 2010
  41. 41. YES! Is it Real? Friday, November 12, 2010
  42. 42. Monitoring? Friday, November 12, 2010
  43. 43. Monitoring? • Simple • Publish ‘Who’s there?’ • Everyone responds with HTTP endpoint • Pull results • Ask again! Friday, November 12, 2010
  44. 44. Friday, November 12, 2010
  45. 45. • VMC - Command Line Interface • STS - Spring version of Eclipse Interfaces Friday, November 12, 2010
  46. 46. Friday, November 12, 2010
  47. 47. Questions? Friday, November 12, 2010
  48. 48. Thanks! Friday, November 12, 2010
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×