Spinnaker Speak for Kubernetes Users

Aug 22, 2016 by Ben Mappen

With the rapid adoption of Docker and Kubernetes many people are looking for new tools to support the new infrastructure that is being created by this change.

Many folks interested in Spinnaker ask us ‘But does it work well with Kubernetes?’. Not only does it work well together, Spinnaker’s deployment model matches the tenants of Kubernetes perfectly. Below I’ll translate the Spinnaker nomenclature to Kubernetes concepts.

Instances – Instances are the equivalent to Kubernetes pods. Pods are a collection of container and used to represent one instance of an entire stack.

Server Groups – These groups are equivalent to replication controllers within Kubernetes. Note, that replication controllers (service groups) have version numbers within Spinnaker in the form of v0XXX so that you know what version matches the pipeline and thus the build of the app making it simple to know exactly what is in each server group. Wether you use the UI or have applications already deployed to your Kubernetes cluster, Spinnaker will create or pull the yaml from Kubernetes making it simple to see what properties are in the particular server group.

Clusters – Clusters are a grouping of server groups that may contain multiple versions of server groups. This allows you to roll back/forward or canary easily. See below of a screenshot of what a disabled server group looks like

Load Balancers – Load balancers are services within Kubernetes. This allows you to easily & quickly associate clusters to services (load balancers) to expose the service within the Kubernetes cluster or externally to the internet. Just like server groups, YAMLs are created on the backend for the service. The Kind is Service which is different than the ReplicationController you see in the server group screen shots.

Baking – This term comes from “Baking an AMI” or creating an image from a template VM on AWS. In docker speak, its simply building an image and pushing the image to a docker registry of your choice. Because creating an image with Docker is trivial you will almost never use a ‘baking’ step with the exception if you want to port any of your non-kubernetes applications.

Want To Dig In More?
Read all posts related to Spinnaker + Kubernetes

Recently Published Posts

Spinnaker tips: Integration of Terraform & Kubernetes in a pipeline

Dec 8, 2023

Spinnaker is an incredibly powerful platform that lets you deploy to multiple locations and targets concurrently. An example of this includes armory plugin which lets you call terraform and capture the output of terraform commands (this is similar to how you can capture logs from RunJobs https://spinnaker.io/docs/guides/user/kubernetes-v2/run-job-manifest/#capturing-output but our integration is a deeper integration and […]

Read more

Spinnaker Tips: Setting a github status check on a PR from a pipeline

Oct 12, 2023

A common situation we hit is creating a pull request on github with some terraform changes that are run through our pipelines. We’d like to verify the terraform changes cleanly “plan” before we apply them. An example is when someone has a typo (how many times I’ve left dangling commas in a JSON object!) and […]

Read more

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