Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Cutting-edge Continuous Delivery: Automated Canary Analysis through Spinnaker - Spring IO 2019

Cutting-edge Continuous Delivery: Automated Canary Analysis through Spinnaker - Spring IO 2019

The Spring team has been working on Continuous Delivery for a couple of years now. Spring Cloud Pipelines used to be Spring’s approach to deploy your applications into production, using tools like Jenkins or Concourse. However, those platforms’ key strength lies in Continuous Integration, and lack internal state representing the deployed landscape across clouds and regions.

That state is required to effectively perform deployment strategies, like cutting-edge automated canary analysis. Spinnaker’s autonomous judge, which analyses metrics of both baseline and canary deployments, drives deployment strategies based on automated data-driven decisions.

Spinnaker is a stateful open source multi-region multi-cloud Continuous Delivery platform, fully written in Spring. It started at Netflix but now involves a wider community of contributors from Google, Microsoft, Amazon, Pivotal, and many others. Pivotal Cloud R&D and the Spring Cloud team have been working on Spinnaker’s Cloud Foundry support and Cloud Pipelines compatibility for rollback testing and contract testing.

Join this talk to find out why Spinnaker is the Spring’s preferred Continuous Delivery approach and how it can bring your Spring application to production using cutting-edge strategies like automated canary analysis.


Andreas Evers

May 16, 2019

More Decks by Andreas Evers

Other Decks in Programming


  1. © Copyright 2019 Pivotal Software, Inc. All rights Reserved. Cutting-edge

    Continuous Delivery: Automated Canary Analysis through Spinnaker Fast, Safe, Repeatable Multi-Cloud Deployments
  2. Cover w/ Image Who’s this guy? ▪ Andreas Evers -

    Senior Solutions Architect at Pivotal ▪ Active in Application Transformation (AppTx) EMEA ▪ Used to work for JWorks at Ordina Belgium ▪ @andreasevers on Twitter
  3. The ultimate goal of continuous delivery is to deploy software

    quickly & automatically. This can only be achieved if we’re able to push new code without fear.
  4. Speed Confidence

  5. App Engine Compute Engine

  6. Cloud Pipelines Manual Deployments? Different live versions across regions &

    clouds? Rollbacks? Spring Cloud Pipelines
  7. = Application Centric Control Plane

  8. Orca Front50 Spring Boot at the core Gate Clouddriver Rosco

    Fiat Deck Echo Igor Halyard Kayenta
  9. None
  10. Spinnaker Ecosystem Cloud Providers App Engine Amazon Web Services Azure

    Cloud Foundry DC/OS Google Compute Engine Kubernetes Openstack Oracle CI Systems Jenkins Travis CI Wercker Concourse (coming soon) Artifact Support Docker Google Cloud Storage GitHub HTTP S3 Artifactory Monitoring Datadog Prometheus Stackdriver Atlas SignalFx (10+ more on roadmap) Notifications Email HipChat Slack SMS via Twilio
  11. None
  12. None
  13. Change Change Change Change SVC 1 SVC 2 SVC 3

    Provider A Zone X Provider B Zone Y Provider C Zone Z Cloud Deployments are Complex
  14. Multi-Foundation View

  15. None
  16. Easy Rollbacks are Important

  17. Rollbacks

  18. Deploy during the Right Timeframes

  19. Deployment Windows

  20. Deployment Windows

  21. Deployment Strategies

  22. Automation

  23. Operational Integration DEPLOY OPERATE

  24. Canary Birds

  25. Canary Birds

  26. Canary Analysis

  27. Canary Analysis

  28. Chaos Monkeys

  29. Go Fast - With Safety ▪ Automated rollbacks ▪ Deployment

    windows ▪ Chaos monkeys ▪ Deployment strategies ▪ Automated canary analysis ▪ Cluster locking ▪ Traffic guards ▪ Manual judgements ▪ Conditional pipeline & stage execution ▪ Notifications
  30. Coming up ▪ Spinnaker CLI for pipelines as code ▪

    Declarative CD ▪ More Cloud platforms ▪ Support for “Artifacts” ▪ Comprehensive provisioning support for canary stages ▪ Continue to grow and mature community
  31. Demo

  32. Rick And Morty

  33. Rick And Morty ▪ Green protagonist ▪ Rick turns himself

    into a pickle to avoid family therapy ▪ Rolls into the sewer and has to fight rats and cockroaches ▪ Comes out victorious ▪ Very strong, predictable and stable green version
  34. Rick And Morty ▪ Blue antagonist ▪ Genie in a

    box who exists only to solve the task at hand ▪ Will go to great lengths to solve that task ▪ Gets aggressive if the task can’t be solved ▪ Dangerous, chaotic and unstable blue version
  35. Rick And Morty

  36. Rick And Morty

  37. Rick And Morty

  38. Rick And Morty

  39. Rick And Morty

  40. Rick And Morty

  41. Demo bit.do/springiocanary

  42. Demo bit.do/ spring io canary bit.do/ spring io canary

  43. Speed Confidence

  44. None
  45. © Copyright 2019 Pivotal Software, Inc. All rights Reserved. Slides:

    https://speakerdeck.com/andreasevers Twitter: twitter.com/andreasevers spinnakerteam.slack.com SO tag:spinnaker spinnaker.io Cutting-edge Continuous Delivery: Automated Canary Analysis through Spinnaker Attributions: Doug Thompson (share.america.gov/english-idiom-canary-coal-mine) U.S. Navy photo by Mass Communication Specialist 1st Class Eric Brown [Public domain] Rick and Morty by Adult Swim