Your SlideShare is downloading. ×

Play with cloud foundry


Published on

My first training session about Cloud Foundry

My first training session about Cloud Foundry

Published in: Automotive, Technology
  • Be the first to comment

No Downloads
Total Views
On Slideshare
From Embeds
Number of Embeds
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

No notes for slide


  • 1. Play with Cloud Foundry An Open PaaS Wan, Peng May 11, 2012
  • 2. Agenda• Overview• Development Guide• Deployment Guide• Resource• Q&A
  • 3. Cloud Foundry Overview• What’s Cloud Foundry?• Languages/Frameworks• Inner Service• Logic View• Architecture• Disadvantages
  • 4. Cloud Computing SystemType VendorSaaSPaaSIaaS
  • 5. What’s Cloud Foundry?An open platform-as-a-service (PaaS). The system supportsmultiple frameworks, multiple application infrastructureservices and deployment to multiple clouds.
  • 6. Languages/Frameworks/Service Multi-Language Ruby, Java, Scala, Node.js, Erlang, Python, PHP.. Multi-Framework Rails, Sinatra, Spring, Grails, Express, Lift Multi-Services MySQL, Postgres, MongoDB, Redis, RabbitMQ Multi-Cloud, Multi-IaaS Public Cloud, MicroCloud, Private Cloud
  • 7. Logic View vmc client STS plugin browser (user app access) Router Cloud Controller user apps user apps Health ManagerServices: core, ecosystem, etc. DEA: execution environment Infrastructure
  • 8. Sends droplet heart beats and exit messages Router Router Registers and Registers and unregisters unregistersArchitecture Routes droplet Routes REST API requests requests Droplet change notifications Droplet Cloud Controller Orchestrates Health Manager start/stop Cloud Controller (Start, Stop, Find) Droplet Execution requests Agent (DEA) Periodically scans Persists droplets for consistency and provisioned Guest applications Advertise services consume Cloud Service Controller Provision and Database unprovision Service "A" Provision Service and "A" Provisioning Agent unprovision
  • 9. Disadvantages• Limited Services• Limited File Generate/Access• Charge Public Cloud• No Infrastructure in China• Beta
  • 10. Agenda• Overview• Development Guide• Deployment Guide• Resource• Q&A
  • 11. Prepare • Register • Install Ruby and RubyGems • Install VMC (VMware Cloud Client) • Install STS (with Cloud Foundry Plugin)
  • 12. Spring to Cloud Foundry• Auto Reconfiguration• Cloud Namespace• Spring 3.1 Profiles
  • 13. Auto Reconfiguration Two modifications 1. Additional Jar 2. Update Web.xml BeanFactoryPostProcessor Examines the application context before creating beans Swaps existing beans of matching types
  • 14. Auto Reconfiguration
  • 15. Cloud App Setup Maven Spring Application-Context
  • 16. Cloud Namespace Support Data Source Other Support
  • 17. Spring 3.1 Profiles V3.1 adds new support for environments Stand-alone Containers
  • 18. Demo: CrawlerHttp:// Input url Consuming Image Object Query RibbitMQ Instance WebApp MongoDB Get url Produce PersistDom parse Image Object Crawler Cloud Foundry / Public Cloud
  • 19. Crawler WebApp ImageUnitRepository ImageUnitGateway Crawler.war MongoDB RabbitMQ Cloud Foundry Services
  • 20. Agenda• Overview• Development Guide• Deployment Guide• Resource• Q&A
  • 21. Deployment Guide• Deploy App• Update App• Binding Service to App• Start/Stop App• Scale App
  • 22. Deploy App• vmc login• vmc target• vmc push• vmc update• vmc create-service• vmc bind-service Via VMC Via STS
  • 23. Access Service • TCP over HTTP tunnel • Local client • Remote server • gem install caldecott • vmc tunnel your-service • Mongodb/mysql command Caldecott
  • 24. Micro Cloud Foundry(BETA)A cloud packaged as a VMware Virtual MachineUse as a developer sandbox• Use the services from Junit integration tests• Deploy your application for functional testing• Remote debugging from STS
  • 25. Micro Cloud Foundry Pre-requisites Minimum 1 GB Minimum 8 GB Internet Connectivity Resources RAM Disk (w/DHCP is ideal)Virtualization Clients VMC STS
  • 26. Private Cloud CloudFoundry.ORG Your Infrastructure Deploy Behind Download code Setup Environment Setup Scripts Firewall Apache2 license
  • 27. Agenda• Overview• Development Guide• Deployment Guide• Resource• Q&A
  • 28. Things to Forget• First normal form• Waterfall model• Single server deployment• Single language skill• Build everything from scratch• Build custom infrastructure
  • 29. Things to Learn• Agile, API Design• UI Design, Javacript, HTML5, CSS3• A/B Testing• Open Source, Open Standards• Architecture, Distributed Computing• Cloud Platforms and APIs• Multiple types of languages (imperative, object, functional, logic)• Ability to encapsulate domain knowledge in a DSL• Build on the shoulders of giants: reuse, rest APIs• Pick your battles, choose what you need to build yourself to add value• Learn to live in a box (embrace platform limitations) to think outside the box• Use an App Store for distribution
  • 30. Cloud Foundry Resources• Primary Site :• Open Source Site :• Twitter : @cloudfoundry• Blog :• FB :• Support :
  • 31. Q&A