Welcome to Manning India!

We are pleased to be able to offer regional eBook pricing for Indian residents.
All eBook prices are discounted 40% or more!
GitOps and Kubernetes
Billy Yuen, Alexander Matyushentsev, Todd Ekenstam, and Jesse Suen
  • MEAP began November 2019
  • Publication in Fall 2020 (estimated)
  • ISBN 9781617297274
  • 350 pages (estimated)
  • printed in black & white

A perfect introduction to the subject, with a hands on approach.

Jaume López

GitOps and Kubernetes introduces a radical idea—managing your infrastructure with the same Git pull requests you use to manage your codebase. In this in-depth tutorial, you’ll learn to operate infrastructures based on powerful-but-complex technologies such as Kubernetes with the same Git version control tools most developers use daily. With these GitOps techniques and best practices, you’ll accelerate application development without compromising on security, easily roll back infrastructure changes, and seamlessly introduce new team members to your automation process.

Table of Contents detailed table of contents

Part 1: Background

1 Why GitOps?

1.1 Introduction

1.1.1 Who this book is for

1.1.2 Who this book is not for

1.1.3 How to use this book

1.2 Evolution to GitOps

1.2.1 Traditional Ops

1.2.2 DevOps

1.2.3 GitOps

1.3 Developer Benefits of GitOps

1.3.1 Infrastructure as Code

1.3.2 Self-Service

1.3.3 Code Reviews

1.3.4 Git Pull Requests

1.4 Operational Benefits of GitOps

1.4.1 Declarative

1.4.2 Observability

1.4.3 Auditability & Compliance

1.4.4 Disaster Recovery

1.4.5 Rollback

1.5 Summary

2 Kubernetes & GitOps

2.1 Kubernetes Introduction

2.1.1 What Is Kubernetes?

2.1.3 Other Container Orchestrators

2.1.4 Kubernetes Architecture

2.1.4 Deploying to Kubernetes

2.2 Declarative vs Imperative Object Management

2.2.1 How Declarative Configuration Works

2.3 Controller Architecture

2.3.1 Controller Delegation

2.3.2 Controller Pattern

2.3.3 NGINX Operator

2.4 Kubernetes + GitOps

2.5 Getting Started with CI/CD

2.5.1 Basic GitOps Operator

2.5.2 Continuous Integration Pipeline

2.6 Summary

Part 2: Patterns & Processes

3 Environment Management

3.1 Introduction to Environment Management

3.1.1 Components of an environment

3.1.2 Namespace Management

3.1.3 Network isolation

3.1.4 Preprod and Prod Clusters

3.2 Git Strategies

3.2.1 Single branch (multiple directories)

3.2.2 Multiple branches

3.2.3 Multiple repos vs Monorepo

3.3 Configuration Management

3.3.1 Helm

3.3.2 Kustomize

3.3.3 Jsonnet

3.3.4 Configuration Management Summary

3.4 Durable vs. Ephemeral Environments

3.5 Summary

4 Access Control & Security

4.1 Introduction to Access Control

4.1.1 What is Access Control?

4.1.2 [WIP] What to Secure?

4.1.3 Access control in GitOps

4.2 Access Limitations

4.2.1 Git repository access

4.2.2 Kubernetes RBAC

4.2.3 Image Registry Access

4.3 Patterns

4.3.1 Full access

4.3.2 Deployment Repo Access

4.3.3 Code access only

4.4 Security Concerns

4.4.1 Prevent Image Pull from Untrusted Registries

4.4.2 Cluster Level Resources in Git Repository

4.4.3 Prevent Opening External Cluster Access

4.5 Summary

5 Pipelines

5.1 Stages in CI/CD Pipelines

5.1.1 GitOps Continuous Integration

5.1.2 GitOps Continuous Delivery

5.2 How to drive promotions

5.2.1 Code vs. Manifest vs. App Config

5.2.2 Code and Image promotion

5.2.3 Environment promotion

5.2.4 Putting it all together

5.3 Other pipelines

5.3.1 Rollback

5.3.2 Compliance Pipeline

5.4 Summary

6 Observability

Part 3: Advanced Topics

7 Deployment strategies

8 Secrets

9 Considerations for Enterprise Scale

Part 4: Tools

10 Argo CD

11 Jenkins X

12 Flux

13 Additional Tools


Appendix A: Setup a Test Kubernetes Cluster

A.1 Prerequisites for working with Kubernetes

A.2 Install minikube and create a cluster

A.3 Create a GKE cluster in GCP

A.4 Create an EKS cluster in AWS

About the Technology

The tools to monitor and manage software delivery and deployment can be complex to set up and intimidating to learn, especially when you apply them to applications deployed using Docker and Kubernetes. Imagine instead of managing your entire Kubernetes infrastructure with Git pull requests! What might at first sound ridiculous is quickly becoming one of the most reliable ways to do Continuous Delivery. Dubbed “GitOps”, this new method uses Git as the “single source of truth” and allows you to manage your infrastructure as a codebase, just like you manage application code. Using declarative tools such as Kubernetes for automating deployment and scaling, GitOps gives you a single control interface, making it easy to assess and roll back changes.

About the book

GitOps and Kubernetes is half reference, half practical tutorial for operating Kubernetes the GitOps way. You’ll learn the GitOps best practices, techniques, and tools that simplify using Kubernetes to deliver enterprise-scale software faster, all without compromising on security. Through fast-paced chapters, you’ll unlock the benefits of GitOps for flexible configuration management, monitoring, robustness, multi-environment support, and discover tricks and tips for managing secrets in the unique GitOps fashion. When you’re done, you’ll be able to implement and manage a scalable Continuous Delivery pipeline that makes it easy to trace changes, rollback mistakes, and clearly validate and audit container deployments.

What's inside

  • Multiple-environments management with branching, namespace, and configuration
  • Access Control with Git, Kubernetes, and Pipeline
  • Using Kubernetes with Argo CD, JenkinsX, and Flux
  • Multi-step deployment strategies like Blue-Green, Canary in a declarative GitOps model

About the reader

For developers familiar Continuous Delivery principles, and the basics of Git and Kubernetes.

About the authors

Billy Yuen, Alexander Matyushentsev, Todd Ekenstam, and Jesse Suen are principal engineers for the Intuit platform. They are widely recognized as industry leads in GitOps for Kubernetes, having presented numerous related talks at industry conferences.

Manning Early Access Program (MEAP) Read chapters as they are written, get the finished eBook as soon as it’s ready, and receive the pBook long before it's in bookstores.
MEAP combo $49.99 pBook + eBook + liveBook
MEAP eBook $39.99 pdf + ePub + kindle + liveBook
Prices displayed in rupees will be charged in USD when you check out.

placing your order...

Don't refresh or navigate away from the page.

FREE domestic shipping on three or more pBooks