Personal blog powered by a passion for technology.

A Helm Chart for Confluent Replicator

We recently finished a Kafka migration at Billie: moving from one Confluent Cloud cluster to another.

For this kind of migration you need something boring and reliable: copy data from the old cluster to the new one, keep it running during the migration window, and remove it when the cutover is done.

Confluent has Replicator for this use case. It sits on top of Kafka Connect and works in roughly the same problem space as MirrorMaker 2, but with the Confluent-specific bits you would expect.

What I could not find was an official Helm chart for the way we wanted to run it.

So I built one.

What the chart does

The chart is intentionally narrow. It was used for one-shot, uni-directional replication between two Confluent Cloud clusters during a migration.

It creates:

  • a Deployment running the Replicator / Kafka Connect worker
  • a Service exposing the Connect REST API on :8083
  • a ConfigMap with the forward connector JSON
  • a Job that submits the connector to the Connect REST API
  • a ServiceAccount ready for IRSA
  • ExternalSecret and SecretStore resources for pulling source and destination API credentials from AWS SSM Parameter Store

That is it.

Not a universal Kafka replication framework. Not a full platform. Just the Kubernetes glue needed to run Replicator in a repeatable way.

Usage

The basic usage is straightforward:

helm install confluent-replicator . -f development/values.yaml

Then adjust the values for your environment:

  • source and destination bootstrap servers
  • SSM path for credentials
  • IAM role ARN for the ServiceAccount
  • connector tuning

The repository includes example values and the chart structure is deliberately small, so it should be easy to read before using it.

Why publish it

This chart is no longer in active use for us. The migration is done.

But I like publishing artifacts like this because they are honest engineering work: small, focused, and shaped by a real production need.

Sometimes the most useful open source is not a grand framework. It is a thing someone built because they needed it on Tuesday, cleaned up, and left behind for the next person.

Repository: github.com/mprokopov/confluent-replicator-helm