1 / 19

Continuous Delivery with spinnaker and Openstack

Continuous Delivery with spinnaker and Openstack. Dan Woods Principal Engineer, Target @ danveloper. What is spinnaker?. Netflix Open Source Software Cross-organization initiative Netflix, Target, Veritas, Google, Microsoft, Pivotal. What is spinnaker?.

cmeza
Download Presentation

Continuous Delivery with spinnaker and Openstack

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Continuous Delivery with spinnaker and Openstack Dan Woods Principal Engineer, Target @danveloper

  2. What is spinnaker? • Netflix Open Source Software • Cross-organization initiative • Netflix, Target, Veritas, Google, Microsoft, Pivotal

  3. What is spinnaker? • Global continuous delivery platform • Multi-cloud deployment capabilities • Cloud management at an application level • Release Engineering for scalable infrastructures

  4. What is spinnaker? • Immutable pipelines to reliably and reproducibly deliver software continuously • Deployment strategies enable common opinions across multiple projects/teams • Zero-downtime and Canary deployments • Chaos Engineering

  5. What spinnakeris not. • Spinnaker is not a Platform-As-A-Service • Spinnaker is not an abstraction for multiple cloud vendors • Spinnaker is not a replacement for the infrastructure layer

  6. Spinnaker cloud targets

  7. Spinnaker & Openstack • Integration developed in cross-organizational effort between Target and Veritas • Works with Openstack V3 APIs • Utilizes Openstack best practices to bring continuously delivery to the private cloud

  8. Spinnaker’s cloud Data model • Account – represents an a credentialed target for deployments • Cluster – represent a grouping of different versioned server groups • Server Group – represent a grouping of homogenously versioned instances • Instance – represent an individual runtime instance of a version of an application • Load Balancer – a runtime resource for balancing load across multiple instances • Security Group – a definition of ingress/egress rules that pertain to runtime resources

  9. Spinnaker data model -> openstack data model • Account – an openstack project • Cluster – no difference • Server Group – an openstack “stack” type (driven by a heat template) • Instance – an individual virtual machine, which is lifecycle managed by the stack • Load Balancer – an lbaas v2 object • Security Group – same as in openstack

  10. Spinnaker components • Spinnaker is a microservice architecture • Optional components can be included or not as necessary • Individual components can be upgraded, scaled, and configured independently of one another • (likely very similar concepts for those who are familiar with openstack’s architecture)

  11. Spinnaker’s central components • CloudDriver –manages all communication for enacting changes and observing state for every configured account • Orca – the central orchestration engine, responsible for coordinating calls to clouddriver and other services to fulfill an orchestration or pipeline execution • Front50 –storing and serving application metadata, including description, owner, configured accounts, as well as pipeline definitions that belong to an application

  12. Spinnaker’s optional components • Echo –receiving and storing events, and triggering pipelines configured for a given event • Igor – polling of external resources and reporting observed state changes to echo as events • Rosco – The “bakery” (turns ospackages – rpm/deb – into ”baked” images) • Fiat – authentication and access control

  13. Spinnaker’s front end components • Gate – API Gateway for which all capabilities to the underlying components are exposed • Deck – the Spinnaker UI

  14. Demo: setting up a new application

  15. Basic delivery pipeline • Build – Jenkins to build your ospackage (jenkins is not req’d, but is out-of-the-box compatible) and publish to a yum/apt repository • Bake – after the Jenkins build finishes, the bakery stage takes over and installs the ospackage on the base image • Deploy – once the new image is available, it is deployed as a new server group

  16. Demo: basic delivery pipeline

  17. Delivery strategies • Provides a re-usable opinionated path for the best strategy to roll out a new deployment • This can include running scripts to create change ticket, for example • Provided as a mechanism to build a more-suitable roll out strategy than the out-of-the-box baked in solutions • Currently a WIP for OpenStack, but should be available in the near term

  18. Demo: advanced delivery pipeline

  19. Questions?

More Related