Deploying your application on open stack using bosh presentation
Upcoming SlideShare
Loading in...5
×

Like this? Share it with your network

Share
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
No Downloads

Views

Total Views
616
On Slideshare
616
From Embeds
0
Number of Embeds
0

Actions

Shares
Downloads
10
Comments
0
Likes
2

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. Deploying Services with BOSH Jeffrey Peckham | Engineer Cloud Foundry
  • 2. Who Am I? • Jeffrey Peckham 2008-2012 – SRE in Higher Education and eCommerce. 2012 – SRE on Production Cloud Foundry 2013 – Engineer on BOSH OSCON – 3rd time attending, 1st time speaking
  • 3. What is BOSH?  A comprehensive service deployment tool.  Developed originally for Cloud Foundry.  Deploys distributed software onto various IaaS providers.  
  • 4. What BOSH is not  It is not a PaaS.  It is not Pacemaker, Clusterware, or other HA orchestration.  It is not clever.
  • 5. Why BOSH?  Addresses the end-to-end problem of provisioning to running services.  Designed for updates, provisioning is just a side-effect.  Fast, predictable deploys that don't suffer from “Configuration Drift”.
  • 6. Top Down Deployment Strategy  What do I want to deploy?   What services make it up?   How do those services run?   What software do they need?
  • 7. Top Down Deployment Strategy  What do I want to deploy? - A search indexer  What services make it up? - Elastic Search  How do those services run? - A Single Elastic Search process.  What software do they need? - Java, Elastic Search
  • 8. Job Is a process or set of processes that can be configured and monitored.       What's the simplest thing I can monitor? 
  • 9. How about 'init'? $ ps ­ef  UID        PID  PPID  C STIME TTY          TIME CMD  root         1     0  0 09:10 ?        00:00:01 /sbin/init  root         2     0  0 09:10 ?        00:00:00 [kthreadd]  root         3     2  0 09:10 ?        00:00:01 [ksoftirqd/0]  root         5     2  0 09:10 ?        00:00:00 [kworker/0:0H]  root         7     2  0 09:10 ?        00:00:00 [kworker/u:0H]  root         8     2  0 09:10 ?        00:00:00 [migration/0]
  • 10. Demo: Initial Release and Job
  • 11. Deploy to a BOSH  What BOSH?   Deploy a BOSH  http://docs.cloudfoundry.com/docs/running/deploying-cf/   BOSH-Lite (VERY ALPHA)  https://github.com/cloudfoundry/bosh-lite   Come talk to us  https://groups.google.com/a/cloudfoundry.org/forum/#!forum/bosh-users 
  • 12. Stemcell  A base OS image for deploying services on.   Currently an Ubuntu based image with an embedded BOSH Agent.   Knows how to discover location and can phone home.
  • 13. Deployment Manifest  A description of a BOSH deployed release.   Describes What...  Release  Resources (Networks, Disks and VMs)  Services  Update behavior  Settings for the Release 
  • 14. Demo: Initial Deploy
  • 15. What did that do?  Spun up a VM and monitored init.     This is where you think, 'Jolly good... who cares?'
  • 16. Package  Source Based  Generates static files only, no templates  No pre/post apply scripts  Built on ephemeral VMs  Packaging script places files in $BOSH_INSTALL_TARGET
  • 17. Demo: Adding Packages and Exploring an Instance
  • 18. Demo: Updating a Service and Debugging
  • 19. Properties  Variables that can be set at deployment time and used to configure jobs.    Can be scoped to single jobs or span multiple. Often to describe relationships (host / port to connect / listen to).
  • 20. Demo: Introducing Properties
  • 21. Scaling  Define the desired instances per job and BOSH will oblige.
  • 22. Demo: Adding Instances
  • 23. Rolling updates  Canary based deployments.  Tunable timeouts on expected update times.  Supports OS base image updates.  Supports rollback as separate deploy*    *if release version is backwards compatible (may require roll forward)
  • 24. Demo: Rolling update
  • 25. Infrastructures Supported  vSphere  vCloud  OpenStack  AWS   Experimental  CloudStack  Warden (LXC)
  • 26. Demo: Taking it to a new Infrastructure
  • 27. Questions?
  • 28. Thank You  Jeffrey Peckham  peckham@pivotallabs.com  twitter: abic – github: abic  https://github.com/abic/elasticsearch-boshrelease  http://docs.cloudfoundry.com  https://githb.com/cloudfoundry/bosh  https://groups.google.com/a/cloudfoundry.org/d/forum/bosh-users  http://www.thisweekincf.com