Open source and source-available Kafka tools by Kannika: offset migration, plugins, and more

Open source Kafka tools by Kannika
Guide
September 21, 2026

TL;DR: Kannika publishes its Kafka toolchain in the open on github.com/kannika-io: kbridge for consumer offset migration, SAME for Schema Registry mapping, the WASI plugin interfaces for Kannika Armory, production-ready Helm charts, and runnable tutorial environments. Two repositories are open source in the strict sense (MIT and Apache 2.0); kbridge, SAME, and the Helm charts are source-available under the Business Source License 1.1; the LICENSE file in each repository is authoritative.

Why a Kafka backup company maintains open source tools

The hard part of Kafka reliability isn't any single tool, it's the discipline around it: testing failure before it happens, moving consumer state without losing your place, and being able to inspect how your safety net actually works. Some of that belongs in a commercial product. A lot of it belongs in the open, where you can read the code, run it against your own cluster, and use it whether or not you ever buy anything from us.

That's the split we maintain. Kannika Armory, our Kafka backup, restore, and disaster recovery platform, is the commercial core. Around it we publish tools that stand on their own and open interfaces that let you extend Armory with your own code. Everything below lives on GitHub, with the README and LICENSE files as the source of truth.

How the licensing works, honestly

"Open source" is a precise term, and we use it precisely. Two of our public repositories are open source under OSI-approved licenses: the Armory plugin WIT definitions are MIT licensed, and the Armory examples are licensed under Apache 2.0. Use them for anything, commercially included.

kbridge, SAME, and the Helm charts are source-available under the Business Source License 1.1 (BSL), the license model pioneered by MariaDB and used by projects such as CockroachDB and Terraform. The full source is public on GitHub, and the license includes a grant for limited production use, with each released version eventually converting to an open license under the terms set for that release. The LICENSE file in each repository is authoritative for the exact terms.

kbridge: Kafka consumer offset migration

github.com/kannika-io/kbridge

kbridge is a source-available CLI tool (Business Source License 1.1, see the repository LICENSE for the exact terms), built in Rust, that migrates and restores Kafka consumer group offsets between clusters. It uses a simple three-step pipeline, fetch offsets from the source, calculate the matching offsets on the target, apply them with a confirmation prompt, and the steps chain together with plain Unix pipes and CSV in between, so everything is scriptable and reviewable.

Offsets are the part of a Kafka migration everyone underestimates. Move the data without the consumer state and every application either reprocesses history or skips ahead. That applies to cluster migrations, disaster recovery, and environment promotion alike, and it's the same problem we solve at platform scale inside Armory, as we describe in how Kannika handles consumer group offsets.

SAME: automated schema mapping between Schema Registries

github.com/kannika-io/same

SAME (Schema Automated Mapping Engine) is a source-available CLI tool, built in Rust, that automatically maps schemas between different Schema Registry instances by canonical schema fingerprint. It supports Avro fully and JSON Schema via structural fingerprinting, offers conflict resolution strategies (strict, pick-first, pick-lowest-id, pick-highest-id), works offline against cached schemas, stores credentials in the OS keyring instead of plaintext config, and runs non-interactively from YAML for CI/CD pipelines, on Linux, macOS, and Windows.

Schema IDs are the invisible tripwire of every Kafka migration: the same schema gets a different ID in a different registry, and every serialized message points at the ID. Consolidating environments, moving to Confluent Cloud, or keeping staging in sync with production all run into it, which is why backing up and restoring Schema Registry state is a first-class concern in our commercial platform too. Like kbridge, SAME is licensed under the Business Source License 1.1; the repository LICENSE has the exact terms.

Armory plugin WIT definitions: extend backup and restore with WebAssembly

github.com/kannika-io/armory-plugins-wit

This MIT-licensed open source repository contains the official WebAssembly Interface Type (WIT) definitions for building custom Kannika Armory plugins. Plugins are WASI components that hook into Armory's backup and restore pipeline: transform payloads in-flight, remap schema IDs, repartition messages, or filter records by retention policy or custom logic, in any language that compiles to WebAssembly. Plugins chain in sequence and can be scoped to specific topics with literal, regex, or glob selectors.

The interface is open so that your data transformations don't depend on us. The background on why we chose WASI for this is in Kannika's WASI plugin story, and the full plugin documentation lives at docs.kannika.io.

Helm charts: deploy Kannika Armory on Kubernetes

github.com/kannika-io/helm-charts

The official Helm charts for deploying Kannika.io products on Kubernetes, published to the Quay.io registry under the Kannika namespace and source-available under the Business Source License 1.1. Armory is Kubernetes-native, a custom operator with CRDs manages backups and restores declaratively, so the chart is how most production deployments start: GitOps and ArgoCD friendly, with separate values files per environment and sane defaults for Kubernetes 1.30+.

Armory examples: runnable tutorials with a full local Kafka stack

github.com/kannika-io/armory-examples

Open source (Apache 2.0) self-contained tutorial environments for Kannika Armory. One command spins up a complete local stack with Docker and kind: two Kafka clusters, the Armory console and API, and a guided scenario such as migrating consumer groups between clusters. It's the fastest way to try real Kafka operations, migrations, consumer group management, schema handling, without touching production and without writing any setup code yourself.

The toolchain at a glance

Kannika repositories on GitHub
RepositoryWhat it doesLicenseBuilt with
kbridgeConsumer group offset migration between Kafka clusters, as a scriptable CLI pipelineBSL 1.1Rust
sameAutomated schema mapping between Schema Registry instances by canonical fingerprintBSL 1.1Rust
armory-plugins-witWIT interface definitions for building Armory backup/restore plugins in any WASM languageMIT (open source)WebAssembly / WASI
helm-chartsProduction Helm charts for deploying Kannika Armory on KubernetesBSL 1.1Helm, Kubernetes
armory-examplesRunnable tutorials: full local Kafka + Armory stack for hands-on scenariosApache 2.0 (open source)Docker, kind, Kubernetes

Open source and commercial: how the two fit together

The tools above are standalone and useful on any Kafka setup, free within the license terms described per repository. What Kannika Armory adds on top is the part that's hard to build and harder to operate: continuous backup with point-in-time restore, offset and schema remapping at restore time, environment cloning, audit trails for DORA and NIS2, and support that answers when something breaks. If you're comparing open source and source-available Kafka backup options against a supported platform, our product page comparison and the Kafka backup guide cover that decision honestly, including where open source tooling is enough.

Star the repos, open issues, send pull requests: the contribution guidelines are in each README. And if you want to see the commercial side, explore the Kannika Sandbox, start a free trial, or book a demo.

Kris Van Vlaenderen
Author
Kris Van Vlaenderen

Frequently Asked Questions

|
Is Kannika Armory open source?

Kannika Armory itself is a commercial product, but the toolchain around it is public on github.com/kannika-io. Two repositories are open source under OSI-approved licenses: the plugin interface definitions (armory-plugins-wit, MIT) and the tutorial environments (armory-examples, Apache 2.0). kbridge, SAME, and the Helm charts are source-available under the Business Source License 1.1.

What licenses do Kannika's public repositories use?

armory-plugins-wit is MIT licensed and armory-examples is Apache 2.0 licensed, both OSI-approved open source. kbridge, SAME, and helm-charts use the Business Source License 1.1: the source is public, with a grant for limited production use, and each released version eventually converts to an open license under the terms set for that release. The LICENSE file in each repository is authoritative for the exact terms.

What is kbridge?

kbridge is Kannika's source-available CLI for migrating Kafka consumer group offsets between clusters, built in Rust. It works as a three-step pipeline (fetch, calculate, apply) over CSV, chains with Unix pipes, and shows a confirmation prompt before applying anything. Typical uses are cluster migrations, disaster recovery, and promoting consumer state between environments. It is source-available under the Business Source License 1.1; see the repository LICENSE for the exact terms.

What is SAME (Schema Automated Mapping Engine)?

SAME is Kannika's source-available CLI, built in Rust, for automatically mapping schemas between Schema Registry instances by canonical schema fingerprint. It fully supports Avro and matches JSON Schema structurally, offers multiple conflict resolution strategies, runs offline against cached schemas, and drives from YAML config for CI/CD. Typical uses are registry consolidation, migration to Confluent Cloud, and keeping staging registries in sync with production. It uses the Business Source License 1.1; see the repository LICENSE for the exact terms.

Can I build custom plugins for Kannika Armory?

Yes. Armory plugins are WebAssembly (WASI) components that hook into the backup and restore pipeline to transform, filter, or remap data in-flight. The official WIT interface definitions are open source in the armory-plugins-wit repository, and you can write plugins in any language that compiles to WebAssembly. Plugins chain in sequence and can be scoped to topics with literal, regex, or glob selectors. The step-by-step guide to building one is at docs.kannika.io/user-guide/plugins/wasi.

How do I deploy Kannika Armory on Kubernetes?

With the official Helm charts from the helm-charts repository, published to Quay.io under the Kannika namespace. Armory is Kubernetes-native: a custom operator with CRDs manages backups and restores declaratively, which makes the deployment fit GitOps and ArgoCD workflows. Kubernetes 1.30+ and Helm 3.x are the prerequisites, and the full walkthrough is in the installation guide on docs.kannika.io.

How can I try Kannika Armory without touching production?

Two ways. The armory-examples repository spins up a complete local stack (two Kafka clusters, the Armory console and API) with one command, using Docker and kind, and walks you through real scenarios such as consumer group migration. Or skip the local setup entirely and use the hosted Kannika Sandbox or the free trial. From there, the getting started guide on docs.kannika.io takes you from your first backup to your first restore.