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

Benefits and drawbacks of verified GitOps

By working through the nuances of verified GitOps and how to support all of the potential platforms and tools that the delivery pipeline requires, the DevOps team has, yet again, found themselves in the position of questioning their tool choice.

Even with all of the testing and research that they conducted, the team found that the building and maintaining requirement was too heavy. Ansible is highly customizable, but requires its users to build out every step in every file. And since there is no auto-generation capability, the overall file building requirement was massive. If the company only needed to support one or two platforms, the workload would be bearable. But because they had to support many different platforms, tools, and use cases, the build requirements were daunting. They needed to make a quick decision as to whether to search for another potential solution or start building out the Ansible process immediately.

But a quick...