Skip to main content

Spinnaker 101

Learn about the world’s most powerful continuous delivery platform

What Is Spinnaker?

Spinnaker is a continuous delivery tool that helps you be intentional about how you ship software by granting visibility & control into your software delivery process. Specifically, Spinnaker is an open source, multicloud, continuous delivery platform. Let’s break that down.

Open Source

Although originally a project created at Netflix to dramatically accelerate their software delivery, Spinnaker now lives as an open source project that is part of the CD Foundation, a branch of the Linux Foundation. There’s a vibrant and active community with thousands of members that span industries. Major contributors include Netflix, Google, Armory, Amazon, Microsoft, and others. The source code, issues, and documentation are available to anyone on GitHub.

Multicloud

Spinnaker natively supports deploying your applications to major cloud providers such as Amazon, Google, and Microsoft, as well as Kubernetes.

Continuous Delivery

CD is the process of building software that can be put into production on a consistent, understood, and frequent basis. Previously, gluing together scripts to try to deliver software was good enough. Your deployment velocity was very slow and sometimes the whole process would fall over on itself, but it mostly worked most of the time. Spinnaker realizes the vision and promise of CD by providing a purpose-built tool that allows you to reliably deliver software, to any target, as frequently as you want.

Platform

With its rich ecosystem of integrations, you can automate your code going from commit to production. Once in production, monitor applications. Scale up, scale down, roll back, or roll forward; all these actions can be viewed in Spinnaker and automated.

Connect your CI system. Connect your monitoring tools. Connect what you need to deliver software.

Diving a Little Deeper

Pipelines

Delivering an application with Spinnaker requires a pipeline. This pipeline can be reused and iterated on as your needs change.

Build pipelines with a series of customizable stages that each perform a single function. For example, include a Canary Analysis stage to perform Automated Canary Analysis for Blue/Green deployments.

What a Pipeline Looks Like

1

Spinnaker, integrated with your CI tool, triggers a build for a Linux-based machine image.

2

This image, along with your launch configurations, defines an immutable infrastructure that you can use to deploy to your cloud provider with Spinnaker.

3

Run your tests, which can be integrated with Spinnaker and automatically triggered.

4

Based on your deployment strategy and any criteria you set, go live with the build.

Deployment Strategies

One of the central philosophies of Spinnaker is to automate deployments and get code to production faster. To make this process easy and dependable, Spinnaker supports several deployment strategies:

Blue/Green: You have two instances of your deployment running concurrently, the production build and a new one. Once you feel confident or certain criteria are met, traffic shifts all at once from the old deployment to the new one. A configurable number of server groups are maintained with the old production build, allowing for easy, fast rollback.

Rolling Blue/Green: Similar to Blue/Green, but traffic is gradually shifted from the older deployment to the new one.

Highlander: Similar to Blue/Green, except the old deployment is destroyed once traffic is shifted.

Canary: Three instances: production, a baseline instance (a smaller clone of production), and a canary instance with the new deployment. Production handles most of the load while the baseline and canary each receive a smaller amount. After a predetermined amount of time, performance of the baseline and canary are compared. The new deployment becomes the new production build if requirements are met. The canary analysis can be automated or manual.

Who Should Use Spinnaker?

Use Spinnaker if you want to accelerate your software delivery velocity. If you’re currently shipping software once a quarter, start there. Use Spinnaker to automate that process and make it smoother. Feeling adventurous? Bump up your release cadence to once a month, once a day, once an hour – Spinnaker can handle it all. Let Spinnaker meet you where you’re at.

Spinnaker today is used by companies around the world, from small startups to Fortune 50 organizations. Check out some of the companies that are succeeding with Spinnaker