GitOps for Kubernetes: A DevOps Iteration Focused on Declarative Infrastructure
GitOps is an iteration of DevOps as applied to cloud native and in particular Kubernetes which has a strong emphasis on declarative infrastructure, said Weaveworks CEO Alexis Richardson in this episode of The New Stack Makers podcast. Richardson said the Weaveworks team got excited about the concept of GitOps through the ongoing management of Weave Cloud, the company’s deployment, monitoring and management SaaS for containers and microservices.
The team noticed how much of the Weaveworks system was captured in Git and began exploring how they could develop a more declarative environment that captured state and allowed for continuous experimentation on the Kubernetes architecture, Richardson said. They found that the state of the code, managed in Git, allowed for better tracking and recovery when managed independently of Kubernetes. Continuous delivery approaches for Kubernetes often rely on technologies such as Jenkins.
It’s important to note that the team at Weaveworks are some of the most technically proficient about Kubernetes and cloud-native architectures. They have come to depend on GitOps to keep their own systems and services running in Google Cloud on Kubernetes. Before Amazon Web Services started supporting Kubernetes last Fall, Weaveworks was using GitOps to manage Kubernetes.
Weaveworks has built its own diff tools such as with Slack updates which speaks to a theme of this podcast recording with Weaveworks. Collaboration is crucial even in a declarative environment to allow any number of updates to be viewed among the multiple components of the microservices environment.
In This Edition:
1:23: What led you to develop GitOps?
7:57: How the layered approach to infrastructure GitOps is taking works
22:40: How far does the security story go with what you’re discussing here in GitOps?
27:02: Managing Kubernetes on AWS
32:19: Using Weave Flux as the glue
35:57: How do people get started with adopting a GitOps methodology?