A custom resource definition (CRD) extends Kubernetes so Kafka artifacts such as topics, connectors, and ACLs can be represented as Kubernetes resources. An operator translates those definitions into Kafka configurations. section 10.2.2
A GitOps workflow connects the definition to the running Kafka environment:
- Define Kafka resources as YAML and store them in Git. section 10.2.2
- Let Argo CD or Flux monitor Git and reconcile desired state with the Kubernetes cluster. section 10.2.2
- Have the Kubernetes operator create, update, or delete the corresponding Kafka resources. section 10.2.2
Kafka configuration through Kubernetes
A team commits a topic definition as a CRD-backed YAML resource. After review, Argo CD detects the change, calculates the difference from cluster state, and the operator applies the required Kafka update. section 10.2.2
Figure 10.3 Applying changes with a Kubernetes operator. Argo CD synchronizes the desired state from Git with the current state of custom resources in the cluster, and applies the differences automatically.
Shows Argo CD synchronizing Git-defined state with custom resources and applying the differences through a Kubernetes operator. section 10.2.2






