Your SlideShare is downloading. ×
0
RubyWorld 2011
RubyWorld 2011
RubyWorld 2011
RubyWorld 2011
RubyWorld 2011
RubyWorld 2011
RubyWorld 2011
RubyWorld 2011
RubyWorld 2011
RubyWorld 2011
RubyWorld 2011
RubyWorld 2011
RubyWorld 2011
RubyWorld 2011
RubyWorld 2011
RubyWorld 2011
RubyWorld 2011
RubyWorld 2011
RubyWorld 2011
RubyWorld 2011
RubyWorld 2011
RubyWorld 2011
RubyWorld 2011
RubyWorld 2011
RubyWorld 2011
RubyWorld 2011
RubyWorld 2011
RubyWorld 2011
RubyWorld 2011
RubyWorld 2011
RubyWorld 2011
RubyWorld 2011
RubyWorld 2011
RubyWorld 2011
RubyWorld 2011
RubyWorld 2011
RubyWorld 2011
RubyWorld 2011
RubyWorld 2011
RubyWorld 2011
RubyWorld 2011
RubyWorld 2011
RubyWorld 2011
RubyWorld 2011
RubyWorld 2011
RubyWorld 2011
RubyWorld 2011
RubyWorld 2011
RubyWorld 2011
RubyWorld 2011
RubyWorld 2011
RubyWorld 2011
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

RubyWorld 2011

11,421

Published on

My keynote presentation at RubyWorld 2011 in Matsue, Japan.

My keynote presentation at RubyWorld 2011 in Matsue, Japan.

Published in: Technology
0 Comments
6 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
11,421
On Slideshare
0
From Embeds
0
Number of Embeds
17
Actions
Shares
0
Downloads
101
Comments
0
Likes
6
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. RubyWorld 2011Cloud FoundryWhy Ruby, and will it last? Derek Collison Sept 5, 2011
  • 2. Agenda‣ What is Cloud Foundry?‣ Why Ruby?‣ The Business of Cloud Foundry‣ Challenges and Ruby’s future
  • 3. What isCloud Foundry?
  • 4. The OpenPlatform as a Service
  • 5. What is PaaS?
  • 6. Or more specifically, aPaaS?
  • 7. aPaaS‣ Application Platform as a Service‣ Applications and Services‣ Not VMs, Memory, Storage, Networks, CPU
  • 8. What isOpenPaaS?
  • 9. OpenPaaS‣ Multi-Language‣ Multi-Framework‣ Multi-Services‣ Multi-Cloud, Multi-IaaS‣ Hybrid - Public or Private or Both‣ OpenSource
  • 10. OpenPaaS‣ Multi-Language ‣ Ruby, Java, Scala, Node.js, Erlang, Python, PHP..‣ Multi-Framework ‣ Rails, Sinatra, Spring, Grails, Express, Lift, MochiWeb‣ Multi-Services ‣ MySQL, Postgres, MongoDB, Redis, RabbitMQ‣ Multi-Cloud, Multi-IaaS ‣ vSphere, MicroCloud, OpenStack, AWS, Eucalyptus
  • 11. The Open PaaS Ap .js ce p rfa Private lic te atData Services Clouds In io n er Se vid r vic Public o e Pr Clouds In Messaging Services ud te rfa o Cl ce Micro Clouds Other Services
  • 12. What was our Goal?‣ Raise the unit of currency to be the application and its associated services, not the infrastructure‣ Best of breed delivery platform for all modern applications and frameworks‣ Favor Choice and Openness‣ Simplicity and Speed
  • 13. How was it Built?‣ Kernel (CloudFoundry OSS) ‣ Core PaaS System‣ Kernel and Orchestrator Shells ‣ Layered on top of IaaS‣ Orchestrator ‣ Creation, management and orchestration of IaaS
  • 14. High Level Clients (VMC, STS, Browser) CF Kernel Orchestrator / IaaSHardware - CPU/Memory/Disk/Network
  • 15. Basic Premises‣ Fail Fast‣ Self Healing‣ Horizontally Scalable Components‣ Distributed State, No Single Point of Failure‣ Should be as simple as possible
  • 16. Basic Patterns‣ Event-Driven‣ Asynchronous‣ Non-blocking‣ Independent, Idempotent‣ Message Passing‣ Eventually Consistent
  • 17. Logical View BrowserVMC client STS plugin (user app access) Routers CloudControllers App App HealthManager Services DEA Pool Messaging
  • 18. All built with Ruby 1.9!
  • 19. But why Ruby?
  • 20. Why Ruby?‣ Amazingly Expressive Language‣ Allows great productivity and rapid iteration‣ Utilized EventMachine for Async Patterns‣ Ruby 1.9 Fibers‣ Language performance is not always key‣ All components are independent
  • 21. Kernel and Orchestrator‣ Both built using Ruby 1.9‣ Kernel does have some performance issues‣ Orchestrator, Chef, Puppet ‣ Ruby is a great language for cloud management ‣ CF Orchestrator built with Ruby as well
  • 22. How do we make Money?
  • 23. The Business‣ Charge for CloudFoundry.com and Services‣ Enable the private enterprise PaaS Cloud‣ Hybrid clouds, combining service + software
  • 24. The key is theprivate cloud..
  • 25. OpenSource is mandatory..
  • 26. Many customers don’twant to be thrown into the deep end of the pool!
  • 27. Same Patterns Everytime‣ Customers get a CF.com account and try it‣ Download source code and try to build‣ Try to setup a multi-node installation‣ Request information on hybrid capabilities
  • 28. Same Patterns Everytime‣ Customers get a CF.com account and try it‣ Download source code and try to build‣ Try to setup a multi-node installation‣ Request information on hybrid capabilities
  • 29. This can be hard..
  • 30. Answer:MicroCloudFull single instance CF as a downloadable VM Available now
  • 31. Micro Cloud FoundryCloud Foundry on a USB Available at RubyWorld
  • 32. Same Patterns Everytime‣ Customers get a CF.com account and try it‣ Download source code and try to build‣ Try to setup a multi-node installation‣ Request information on hybrid capabilities
  • 33. This can be even harder..
  • 34. Answer: Project BentoFully supported private cloud version of CF Available 2012
  • 35. Cloud Foundry EcoSystem VMware 3rd party OSS code OSS code VMware 3rd party proprietary proprietary code code CloudFoundry.org CloudFoundry.com Bento Micro Cloud Foundry
  • 36. Demo
  • 37. Challenges we faced..
  • 38. Ruby VM, Gil, GC issues
  • 39. EventMachine Problems (1.9, IO skew)
  • 40. Evented IO‣ Event-driven programming‣ Fundamental shift in thinking, e.g. Node.js‣ Does this require deeper language integration for Ruby?‣ Does Ruby need a formal Reactor Pattern?
  • 41. Packaging(Bundler, Gems)
  • 42. Gem vs VM Choice compatibility(MRI/Yarv, JRuby, RBX)
  • 43. Did we make the right decision?
  • 44. Did we make the right decision? YES!
  • 45. But...
  • 46. What does Ruby wantto be when it grows up?
  • 47. What is Ruby?‣ Great scripting language! ‣ Cloud Management and Tools‣ Modern Application Language! ‣ Mobile, Data-Centric, Web‣ Distributed/Cloud Systems Language?
  • 48. What would need to Change?
  • 49. Summary
  • 50. Summary‣ Ruby can power large distributed systems‣ Ruby can power your business‣ What does Ruby want to be?‣ What needs to evolve and improve?
  • 51. Questions?
  • 52. Thank You! dcollison@vmware.comderek.collison@gmail.com @derekcollison

×