Deploy Software Safer & Faster with Spinnaker

Jan 16, 2017 by DROdio

Armory’s focus is to make your software deployments boring, fast and continuous.

Here is Armory’s recommended process to evaluate (and ensure) the success of Spinnaker within your organization to deploy software more safely, reliably, and with higher velocity.


Before you begin: Read our Stages of Software Delivery Evolution Infographic to understand which stage your company currently falls into.

What 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, and has a vibrant open source community with over 1,900 members in the Spinnaker Slack channel, with over fifty paid engineers from Netflix, Google, Microsoft, Veritas, Target, Pivotal and Armory working on Spinnaker full-time. *Spinnaker has strong community support, with many global companies successfully using it in production.*

Spinnaker takes an application-centric view of your infrastructure, allowing development teams to create and easily modify reliable, self-service deployment pipelines with the flexibility to respond to changing business needs over time.

What Does Spinnaker Do?

Spinnaker gives companies a sophisticated platform to deploy software in scalable ways. It was built for the cloud, leveraging the ability to spin up, manage and destroy virtual machines (something not possible on bare metal) as a new and safer way to deploy, manage and roll back applications.

Spinnaker offers a number of features out of the box that companies typically look for as they move from bare metal into public or private clouds, including:

How does Spinnaker work?

Spinnaker is a collection of microservices including CloudDriver, Deck, Igor, Orca , Front50, Rosco and Fiat that together comprise the CD platform. Each microservice performs a specific function (click the links above for details) and together they comprise a new way to deploy applications to the cloud. To see Spinnaker in action, watch this first time demo where our CTO Isaac demos Spinnaker.

Spinnaker can be installed from source inside a company’s cloud account. Supported IaaS providers include AWS, GCP, Azure, CloudFoundry & OpenStack. Dig into how Spinnaker works in the Spinnaker documentation.

Why Is Spinnaker Important to Your Company?

Every company realizes the importance of shipping features its users will love. But most companies ship software via slow, unreliable and brittle home-grown scripted deployment pipelines.

In this new software-first world, the relationship customers have with companies becomes defined primarily by how effective the company is at crafting and delivering software. A company can only be as agile as its ability to get code in front of its customers.

Creating features is always a hit-or-miss process. Customers may not love the feature a company ships. Even worse, 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 bad software deployments.

It doesn’t have to be this way.

Here’s an example of the impact of introducing Continuous Integration + Deployment best-practices to an organization. This graph shows an increase in engineering velocity from 5 to over 1,500 deployments per month (this company has since surpassed 2,500 deployments per month):

Each color shows the number of deployments per microservice. As engineering velocity skyrocketed, the number of microservices also increased by over 500%, allowing the company to deploy more software, faster, in more parts of its business.

Not only can the organization deploy features faster, but the product and engineering teams have become much happier now that they can commit code to master and have it immediately out in front of users, at scale.

The industry data bears these observations out. High-performing companies release code over 200x as often as low performing companies. Netflix, for example, deploys 4,000 times per day:

As an engineer, there’s nothing more de-motivating than working at a company that’s so scared of its software deployment process that it releases less often and puts more layers of human approvals on the release process in an effort to stem the fire drill that software deployments often create in these companies.

The irony of this cycle is that holding more features back to deploy in larger batches less frequently impacts the business in two devastating ways:

  1. Larger deployments with more features introduce more risk into the deployment process, which makes the business even more scared to release code — a destructive cycle.
  2. Releasing less often means many fewer opportunities to put code in front of customers and learn from them, which slows successful feature creation to a crawl.

Spinnaker allows companies to increase their deployment velocity by several orders of magnitude, and to deploy software consistently across teams by replacing the home-grown, brittle “glue code” scripted deployment pipelines that vary across teams in most companies with a flexible, modern deployment platform that increases safety, self-service, reliability and velocity.

What does Armory do?

Armory is helping commercialize Spinnaker so it “just works” for Global 2,000 companies that want to deploy to the cloud with safety and velocity, and we are building enterprise-grade features into Spinnaker to solve the pain points enterprises experience when moving away from brittle, home-grown scripted deployment pipelines.

While Spinnaker is a powerful continuous delivery platform for the cloud, it can be a challenge to install and configure (especially in a stable HA production environment) because it’s a young and rapidly evolving open source project. For that reason, we’ve created ‘Armory Spinnaker’ — an enterprise distribution of Spinnaker that you can run “on-prem” within your AWS account. Installing it takes about 15 minutes vs. the days or weeks it can take to manually install and configure all the Spinnaker sub-services from source.

If you want to get to know Spinnaker really well, we still suggest you install it manually and we encourage you to participate in the vibrant open source community (a great place to start is by joining the Spinnaker Slack team where there are over 2,800 people that can help). But if you’d prefer to have a faster, simpler installation of Spinnaker that “just works” for AWS, try using our installer to install Armory Spinnaker. It’ll solve the following challenges you may face if you install Spinnaker manually:

How does Armory compare to Open Source Spinnaker?

Armory
Open-Source
Armory Installer™
Provisions open-source Spinnaker instances within Customer’s Virtual Private Clouds (VPCs) with the following characteristics:

  • Spinnaker infrastructure is deployed into multiple availability zones providing redundancy and failover protection.
  • Multi-region configurations are also available to provide additional levels of global redundancy.
Install from source

  • Note: Spinnaker is comprised of multiple sub-services which must be installed from source.
  • For Kubernetes there is a 1.0 installer (in beta for GCP; does not exist for installing on AWS or other environments)
Armory Lighthouse™

  • Monitoring: Intelligently monitors health and availability of Spinnaker sub-services as well as other integrated resources to facilitate graceful restarts if failure occurs.
  • Release Management: Enables zero-downtime upgrades to latest, stable & fully integration tested Armory Spinnaker versions.
  • Audit Portal: Provides a queryable interface to perform AMI ancestry audits, with a visual parent/child dependency tree output.
  • Usage Statistics: Provides a dashboard with granular usage statistics. Usage data can also be sent to DataDog.
Self Supported

  • Release management via apt-get update.
  • No built-in monitoring.
Armory Composition™

  • Logging: Seamless integration with popular Centralized Logging solutions such as Splunk, Sumo Logic, ELK Stack, etc.
  • Spinnaker Configuration Management: A version-controlled configuration enabling reproducible deployments of Armory Spinnaker (aka Spinnaker deploys Spinnaker). Also enables pain-free rollbacks to previous configurations.
Self Supported
Armory Barometer™

  • Automated Canaries: Custom stage built into Spinnaker UI to enable kickoff of automated canaries in deployment pipeline.
  • Intelligent Rollbacks: Deployments automatically rolled back based on signals from DataDog or ElasticSearch (with more integrations coming)
None

  • Canaries must be run manually
Enterprise Support

  • M-F 9am-5pm PT support via customer portal ticketing system, email or phone
  • Tickets responded to by next business day
  • Best effort bug fixes to the open source Spinnaker project
  • Access to unlimited remote training documentation & video resources
Community Support

  • Support by asking open source community for help
Premium Support

  • Armory Service Level Agreement: 99.95% Uptime: Armory provides a pro-rated discount for Spinnaker downtime beyond 21.56 minutes per month
  • On-Demand access to a Solutions Architect up to 24 hours per month.
  • At least 1 on-site training session per month
  • Armory prioritizes customer’s needs in product roadmap timeline planning.
  • Armory guides customer team(s) on building features important to customer which can then be open sourced (This helps prevent forked versions of Spinnaker.)
  • Armory guides customer team(s) on building proprietary features that extend Armory Spinnaker for customer’s non-OSS needs.
None

How does Armory work with enterprise customers to deploy Spinnaker?

Armory helps companies evaluate Spinnaker, run a successful Proof of Concept with one application and team, and then expand Spinnaker across all teams within the organization. We do this through a combination of People, Process and Technology:

We offer a free trial of Armory Spinnaker, which installs Spinnaker on-prem in your AWS account.

This is the architecture of Armory Spinnaker:

The Armory Customer Engagement process typically happens as follows:

And results in the following deliverables:

Here is a sample POC Delivery report (fictional company name; real data)

Here is how Armory runs the Customer Proof Of Concept:

Pre-kickoff meeting w/ key stakeholder

Engineering Management Presentation: Review how Spinnaker’s approach to application development can address existing customer pain points and provide for consolidation of application deployment workflows across teams.

Kickoff Meeting: (we can record this meeting for Customer’s internal use)

Implementation Process:

Timing:

Contract & Administrative:

Expanding Past POC

Armory Pricing

Armory offers a free 30 day evaluation of Armory Spinnaker. Pricing post-evaluation is based on usage, billed per Customer application deployed to production using Spinnaker. Get pricing details here.

Armory 2017 Roadmap

Armory’s Spinnaker provides an enterprise-grade version of Spinnaker that “just works”. Our 2017 roadmap includes functionality to solve other pain points we’ve heard from our customers, including:

We’d love to hear from you, especially if you have feedback on the roadmap prioritization above.

Other Resources

How Companies Go Digital: We highly recommend O’Reilly’s free PDF e-Book about migrating toward cloud-native technologies and practices by shifting from monolithic onsite architectures to applications designed solely to operate on cloud computing platforms.

Recently Published Posts

Introducing Pipelines-as-Code Plugin for Open Source Spinnaker

Jul 21, 2023

Easily Scale and Automate with Version Control in Git Developers choose best-of-breed version control systems like GitHub for a reason: they need the ability to collaborate and improve code together.  But a broken Spinnaker deployment pipeline can often be the last thing standing in the way of getting your application to market.  Until now. Armory’s […]

Read more

What is FedRAMP and Why It Matters

Jun 8, 2023

What’s FedRAMP? Federal Risk and Authorization Management Program (FedRAMP) is a government-wide program that provides a standardized approach to security assessment, authorization, and continuous monitoring for cloud products and services. FedRAMP is important since it’s the gold standard for assessing cloud service providers (CSP) within the government. Under this program, authorized FedRAMP cloud service providers […]

Read more

New Spinnaker Operator Updates Now available for the Spinnaker Community

Mar 15, 2023

Stay up-to-date with the latest Kubernetes release with Spinnaker. The Armory crew has worked diligently the past several weeks to release a new stable version of OSS Operator (1.3.0). This is the first release in just over 18 months and is now available for the open source community.  What Changed? The Spinnaker Operator is the […]

Read more