A New Approach to DevOps with Spinnaker on Kubernetes
As organizations look to DevOps as a means to achieve digital transformation, they realize they must accelerate the end-to-end software delivery process, and also make it safer.
“It can seem like a boil-the-ocean type of problem. That makes it hard to figure out how you’re going to incrementally derive value from it,” said Andrew Phillips, a product manager in Google Cloud Platform’s DevOps division, in this episode of The New Stack Makers.
By separating the developer feedback cycle from the rollout process, organizations can find a manageable starting point. Tools like Spinnaker were built for this purpose, Phillips said, “to provide an abstraction so that development teams can have a simplified experience, while still providing the operations teams with the ability to manage and tweak and define it in exactly the way that makes the most sense for the organization.”
Abstractions are often discussed to provide context for how application architectures are managed. Kubernetes introduces new abstractions of the infrastructure. Technologies such as Spinnaker allow people who work in an enterprise to create the abstractions that are right for them, Phillips said.
In general, software delivery is not perfect. Defining patterns is not easy. It comes down to what is that artifact that is getting released. Often, people in IT who follow DevOps practices find themselves thinking in terms of templates, which can eventually become quite an exercise in managing complexity.
Spinnaker has Google’s support
Companies must define the rollout process for the candidate it’s running and manage it in a manner that recognizes the validity of the manifest for Kubernetes. The manifest needs to be healthy. Kubernetes allows teams to create a “restore flow” which is the saved state, the manifest so-to-speak. If you can commit the manifest in a healthy manner, then that serves as your template for restoring and replicating that state. But how do you do it?
It comes down to what implementation is the most appropriate given a team or organization’s context. It may be using a tool such as Spinnaker or it may be a pull request approach such as GitOps. Spinnaker allows for organizations to grow as application development architectures get more complex and require an environment to handle the scale. Google has put its development efforts behind Spinnaker and is now investing in its fit with Kubernetes.
Spinnaker, originally developed by Netflix, provides an unambiguous user interface to know how the application is running. With Spinnaker, the user does not have to check templates. The manifest gets updated to run automatically in Kubernetes.
The challenge now is for organizations to find the right way for them to manage application delivery when they adopt Kubernetes. Early adopters of Kubernetes are building out their platforms. Spinnaker is a method of software deployment for the applications – for the release candidate artifacts and configuration.
It speaks to why Google is investing in its support for Kubernetes so applications can be managed in cloud native, multi-cloud and hybrid scenarios.
In this Edition:
5:00: The concept of sub-units, development feedback cycles, and the issues involved with these when working with Kubernetes
9:54: The context for the bridge in tool ecosystems Google recognizes as important
14:00: What are some of the patterns you’ve started to see evolve when users have adopted a Kubernetes infrastructure?
21:15: When you see tools like Spinnaker emerge, what are you looking at, and what should you be considering when building an ecosystem around Kubernetes?
30:59: How do you think of modernization identity in that context, and Spinnaker’s architectural history?
34:11: Other tools and challenges when working in the Kubernetes landscape