Skip to content

Introduction

Welcome to K8s Operators Docs.

This is a collection of Kubernetes Operators built with Python, created as a hands-on exploration of Kubernetes Operator development.

Each Operator in this project focuses on a different problem and provides an opportunity to explore a specific aspect of the Kubernetes control plane, from custom resources and reconciliation to resource management, self-healing, and deployment.

The documentation is organized around the implementation of each Operator. Rather than treating Operators as black boxes, it explains how they are structured, how they interact with Kubernetes, and how their behavior is implemented.

Each Operator typically includes documentation covering:

  • Overview — the problem the Operator solves and its intended behavior.
  • Architecture — the components and interactions that make up the Operator.
  • Getting Started — installation and a minimal working example.
  • Resource — the Custom Resource and its specification and status.
  • Behaviour — reconciliation, lifecycle, error handling, and other runtime behavior.
  • Examples — practical scenarios demonstrating the Operator in action.
  • Deployment — the Kubernetes resources required to run the Operator.

The Operators and their documentation evolve together as the implementations grow, with the goal of keeping the documentation closely aligned with the actual source code.

Operators

Currently, the project includes:

  • ConfigBundleOperator — a Kubernetes-native approach to managing configuration through a custom resource and its corresponding ConfigMap.
  • Replikator — a Kubernetes resource replication Operator focused on synchronizing resources across namespaces.

More Operators may be added as the project evolves.