When Netflix and Google get together to produce a continuous delivery platform, you can bet people sit up and take notice. Today, Spinnaker, the product of that collaboration, reached version 1.0. The project’s ultimate goal is to support global, multi-cloud deployments, and automated releases across those deployments.
“In Spinnaker, deployments are orchestrated using custom release pipelines, the stages of which can consist of almost anything you want — integration or system tests, spinning a server group up or down, manual approvals, waiting a period of time, or running a custom script or Jenkins job,” wrote Christopher Sanson, product manager at Google, in a release blog detailing the 1.0 changes and how Spinnaker works overall.
Originally created at Netflix, Google first took notice of Spinnaker in 2014. By November of 2015, Spinnaker was open sourced by Netflix as the project began to take on new users in companies like Target, Oracle, and Microsoft.
Today’s release includes the work of the past four years towards supporting multiple clouds. As of today, Spinnaker supports Google’s cloud platforms, AWS, Microsoft Azure, Kubernetes, and OpenStack. Oracle Bare Metal cloud will be supported by the end of the year.
Spinnaker also supports things like release canaries, multiple staging environments, blue/green or red/black deployments, traffic splitting and easy rollbacks. Spinnaker itself even includes a tool to make it easier to manage it. With the release of Spinnaker 1.0, the project now also includes halyard, a tool for configuring, installing and updating the platform.
The Spinnaker project as a whole includes a few other tools for care and feeding. This includes the deck, which is a management UI, some monitoring tools, a command line interface called roer, and igor, which handles integrations between Spinnaker, git, and Jenkins.
Sanson wrote that Spinnaker is particularly appealing to enterprises because it supports a number of authentication and authorization options. This means Spinnaker can provide roles-based authorizations and permissions using OAuth, SAML, LDAP, X.509 certificates, GitHub teams, Azure Groups, or Google Groups.
Spinnaker can apply these roles directly to a development stage, meaning access to pipelines can even be restricted to require a manual approval process if need be. Stages can also be restricted based on time of day or week, meaning that new deployments can automatically be rolled out late at night.
The 1.0 release also provided a reason to redesign the Spinnaker Website. And, as Spinnaker originated at Netflix, it’s also compatible with Chaos Monkey, meaning Chaos can be brought to bear upon specific stages in the Spinnaker pipeline.