Book Image

Repeatability, Reliability, and Scalability through GitOps

By : Bryan Feuling
Book Image

Repeatability, Reliability, and Scalability through GitOps

By: Bryan Feuling

Overview of this book

The world of software delivery and deployment has come a long way in the last few decades. From waterfall methods to Agile practices, every company that develops its own software has to overcome various challenges in delivery and deployment to meet customer and market demands. This book will guide you through common industry practices for software delivery and deployment. Throughout the book, you'll follow the journey of a DevOps team that matures their software release process from quarterly deployments to continuous delivery using GitOps. With the help of hands-on tutorials, projects, and self-assessment questions, you'll build your knowledge of GitOps basics, different types of GitOps practices, and how to decide which GitOps practice is the best for your company. As you progress, you'll cover everything from building declarative language files to the pitfalls in performing continuous deployment with GitOps. By the end of this book, you'll be well-versed with the fundamentals of delivery and deployment, the different schools of GitOps, and how to best leverage GitOps in your teams.
Table of Contents (17 chapters)
1
Section 1: Fundamentals of GitOps
5
Section 2: GitOps Types, Benefits, and Drawbacks
10
Section 3: Hands-On Practical GitOps

Manifest explosion

The DevOps team continued their exploration of the underlying operations and requirements for GitOps with Argo CD and Kubernetes. One of the parts they also wanted to understand was the process of onboarding and maintaining the manifests for Argo CD to work correctly. The goal is to make a repeatable, reliable, and scalable process for any current and future applications across the grow cluster size and count.

One of the first things they noticed about the manifest requirements is that every microservice required its own helm chart. Additionally, to add overrides files for different environments, the override files would have to reside in the same repository as the chart for Argo CD to leverage them. This Argo CD requirement meant that the DevOps team would have to maintain the core helm chart for every microservice and work through a pull request approval process for every chart or values file change on every microservice.

Because of this, the DevOps team...