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

Purist GitOps basics

The DevOps team had begun their trial run of Jenkins X. Even though the name is shared with the legacy tool that they attempted to use before, Jenkins X is significantly different. One main difference is that Jenkins X was built from the ground up as a Kubernetes-only deployment solution. Jenkins X has the ability to even create and configure brand new Kubernetes clusters, which could be extremely beneficial when you need to scale out to other regions.

Connecting Jenkins X to the GitHub repository was an easy task, and the first deployment was executed almost immediately. Although the tool still had a problem with the fact that nothing in the manifest was changing, it was able to deploy across multiple clusters when a manual trigger was kicked off. Of the issues that the team encountered with Argo CD, the ability to easily deploy the same application across multiple clusters was very important. The development teams would have to be instructed to use a better...