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

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

Cutting-edge Continuous Delivery: Automated Canary Analysis through Spinnaker - Spring One Platform 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 analyzes 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.


Andreas Evers

October 08, 2019

More Decks by Andreas Evers

Other Decks in Technology


  1. Cutting-edge Continuous Delivery: Automated Canary Analysis through Spinnaker October 7–10,

    2019 Austin Convention Center
  2. Cover w/ Image Who’s this guy? ▪ Andreas Evers -

    Senior Solutions Architect at Pivotal ▪ Part of Application Transformation (AppTx) EMEA ▪ Active in Pivotal’s Spinnaker team (collaboration between Spring & Cloud Foundry R&D) ▪ @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. None
  7. Orca Front50 Spring Boot at the core Gate Clouddriver Rosco

    Fiat Deck Echo Igor Halyard Kayenta
  8. None
  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 Artifact Support Docker GitHub HTTP S3 Artifactory Google Cloud Storage Nexus (coming soon) Monitoring Datadog Prometheus Stackdriver Atlas SignalFx (10+ more on roadmap) Notifications Email HipChat Slack SMS via Twilio
  11. Cloud Pipelines Manual Deployments? Different live versions across regions &

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

  13. None
  14. Change Change Change Change SVC 1 SVC 2 SVC 3

    Cloud Deployments are Complex
  15. Multi Cloud / Foundation / Account / Region View

  16. None
  17. Easy Rollbacks are Important

  18. Rollbacks

  19. Deploy during the Right Timeframes

  20. Deployment Windows

  21. Deployment Windows

  22. Deployment Strategies

  23. Automation

  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. Halyard ▪ Configuration & deployment lifecycle management tool ▪ Install,

    upgrade, configure, validate your Spinnaker installation ▪ Works with Bill of Materials (BOM)
  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/springone

  42. Demo bit.do/ spring one bit.do/ spring one

  43. None
  44. None
  45. None
  46. Canary best practices ▪ Apply fine-grained traffic splits & content-based

    routing with Istio or other sophisticated load-balancing technologies ▪ Fine-tune the metrics you choose to reflect key service health indicators ▪ Include business metrics such as pirate metrics
  47. Canary best practices ▪ Run canaries long enough to gather

    enough data points ▪ Use the metrics store explorer to figure out what metric expressions to use ▪ Align the data points from both canary and baseline deployments using time series aggregators / reducers carefully ▪ Take advantage of SpEL templating to avoid manifest hell
  48. Speed Confidence

  49. None
  50. None
  51. None
  52. © 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