Deploying your application on open stack using bosh presentation

  • 365 views
Uploaded on

 

More in: Technology , Business
  • 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
365
On Slideshare
0
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