Using Spinnaker for Enterprise-Grade Software Delivery
What Problem is Armory Solving with Spinnaker?
As software permeates everything around us, including the goods and services we use every day, the relationship customers have with companies becomes defined primarily by how effective the company is at crafting and delivering this software. A company can only be as agile as its ability to get code in front of its customers. Many enterprises are breaking customer trust in expensive ways by deploying software that breaks the user experience, which leads to an ‘all hands on deck’ emergency reactive situation as the company tries to fix the problem. Here are two illustrative examples:
Several years ago, pilots were carrying large, heavy bound books with airport terminal maps. Today, they use iPads. A bad deployment to an iPad led planes full of passengers to be stuck on runways for hours.
Trading was halted on a major stock exchange due to a bad software update.
Imagine these scenarios playing out over the next decade as everything in our lives begins to have embedded software in it.
Today there’s no concept of "your clothes not working" or "your walls not working" but in the next 10 years, our clothes, the walls in our home and work, our appliances — they’ll all have software in them. Your clothes will be able to monitor your body’s vital stats, to cool or warm you, all with embedded software. Your appliances will communicate with the world, to order more supplies when the washing machine needs more soap, or call for repair when it needs to be repaired. Or even more likely, you won’t even own a washing machine — your clothes will be laundered by a service and delivered to you, and your clothes will know when they are dirty and automatically send for pickup.
When these services and smart appliances stop working because of a bad software update — or your car stops driving you (or worse) due to a software error — you will be especially distraught.
Companies must become more sophisticated in the way they deliver software to their customers as software becomes the defining mechanism that drives customer interactions with goods and services.
How does Spinnaker solve this problem?
Spinnaker gives companies a sophisticated platform with which to deploy software in scalable ways that allow for phased (canary) deployments, perform rollbacks and much more (described in detail below).
Spinnaker is now being supported by over thirty full time employees at multiple companies:
What exactly is Spinnaker?
Spinnaker is an open-source, multi-cloud continuous delivery platform initially created by Netflix and open-sourced in November 2015. It is an opinionated framework that leverages the benefits of immutable infrastructure brought by deploying to the cloud.
Some of the benefits of using Spinnaker to manage software deployments include:
- Supports phased, canary deployments out of the box
- Supports “green/blue” deployments out of the box
- Users can manage resources using cloud-agnostic constructs
- Configure pipelines for deploying infrastructure rather than managing resources manually
- Easy creation and modification of deployment pipelines using a visual interface
Armory expects that Spinnaker will become the de-facto standard for Continuous Delivery.
Want to see what the Spinnaker interface looks like? Take a look at this post on creating complex deployment pipelines with Spinnaker.
Here are resources to learn more about Spinnaker:
- Armory releases regular "State of Spinnaker" reports
- Articles about Spinnaker from WIRED, Fortune, The Register, Business Insider
- An overview of Spinnaker and Netflix’s motivations for open-sourcing it
- Google’s take on Spinnaker: " Overall, working with [the community] on Spinnaker, we would like to set the standard for tooling in this space."
If you want to geek out at a more technical level:
- Hour long video of Pivotal’s demo of Spinnaker.
- A great Github repo to explore is the CloudDriver one (vs. the main Spinnaker repo, which is more of a holding area). CloudDriver is the main integration point for Spinnaker cloud providers like AWS, GCE, CloudFoundry, Azure etc.
More about Armory’s role in Spinnaker:
Armory is creating an enterprise-grade, bulletproofed version of Spinnaker that’s specialized for the needs of the Global 2000. Learn more here.