Skip to main content

Licensing

OSO Kafka Backup Enterprise uses Ed25519-signed license files validated entirely offline. No license server, no phone-home, no network dependency. The license file is self-contained and cryptographically verifiable.

License Model

TierTargetFeaturesPricing
OSSIndividuals, small teamsCore backup/restore, PITR, all storage backendsFree
StandardGrowing teams, single cluster+ Schema Registry, RBAC backup, encryptionPer cluster/year
EnterpriseMulti-cluster, compliance-driven+ All features, unlimited clustersCustom
TrialEvaluationAll enterprise features, 1 cluster, 14 daysFree

Licensed Features

Each license encodes which features are enabled:

Feature FlagDescription
schema_registryConfluent Schema Registry backup & restore
rbacConfluent RBAC backup & restore (MDS)
migrations:msk-kraftAWS MSK ZooKeeper to KRaft migration execution
migrations:msk-kraft:planAWS MSK ZooKeeper to KRaft plan/precheck entitlement
encryptionField-level encryption (planned)
maskingData masking for non-production (planned)
auditAudit logging (planned)
wasmWebAssembly plugin system (planned)
supportPriority support SLA entitlement

Obtaining a License

Free Trial

The enterprise binary includes a 14-day free trial on first run — no signup, no credit card. Just install the enterprise binary and start using all features immediately.

For an extended 30-day trial, request one at:

Purchase a License

Buy a Standard or Enterprise license at enterprise.kafkabackup.com or contact sales directly:

Pricing is per Kafka cluster per year. A cluster can grow from 3 to 30 brokers without changing the license cost.

License File Format

Licenses are distributed as PEM-encoded files containing a JSON payload signed with Ed25519:

-----BEGIN KAFKA-BACKUP LICENSE-----
eyJsaWNlbnNlX2lkIjoiYWJjZGVmMTItMzQ1Ni03ODkwLWFiY2QtZWYxMjM0
NTY3ODkwIiwiY3VzdG9tZXJfaWQiOiJjdXN0XzEyMzQ1NiIsImN1c3RvbWVy
...
-----END KAFKA-BACKUP LICENSE-----

The license payload contains:

FieldDescription
license_idUnique identifier (UUID)
customer_idCustomer identifier
customer_nameOrganization name
customer_emailContact email
tierstandard or enterprise
featuresList of enabled feature flags
max_clustersMaximum Kafka clusters (optional)
max_nodesMaximum brokers across all clusters (optional)
issued_atIssue date (ISO 8601)
expires_atExpiry date (optional — null = perpetual)
schema_versionLicense format version

License Activation

Apply from File

kafka-backup license apply --file /path/to/license.key

This validates the license and saves it to ~/.config/kafka-backup/license.key.

Output:

License applied successfully.
License ID: abcdef12-3456-7890-abcd-ef1234567890
Customer: Acme Corp
Tier: Enterprise
Saved to: /home/user/.config/kafka-backup/license.key

Verify a License (Without Applying)

kafka-backup license verify --file /path/to/license.key

Output:

License is valid.
License ID: abcdef12-3456-7890-abcd-ef1234567890
Customer: Acme Corp
Tier: Enterprise
Features: encryption, schema_registry, rbac, audit, support
Expires: 2027-01-15 (285 days remaining)

Check Current License Status

kafka-backup license info

Output when licensed:

  License ID:   abcdef12-3456-7890-abcd-ef1234567890
Customer: Acme Corp (acme@example.com)
Tier: Enterprise
Features: encryption, schema_registry, rbac, audit, support
Max clusters: 5
Issued: 2026-01-15
Expires: 2027-01-15 (285 days remaining)
Status: Valid

Output when unlicensed:

  No license found. Running in OSS mode.

To activate enterprise features:
kafka-backup license apply --file /path/to/license.key

Get a license at https://enterprise.kafkabackup.com

License Discovery

The license is loaded automatically at startup. The tool searches these locations in order:

PrioritySourceDescription
1ENTERPRISE_LICENSE_KEY env varBase64-encoded PEM content (for CI/CD)
2ENTERPRISE_LICENSE_FILE env varPath to license file
3/etc/kafka-backup/license.keyDefault for containers and Kubernetes
4~/.config/kafka-backup/license.keyDefault for CLI users

Kubernetes Secret

For Kubernetes deployments, mount the license as a secret:

apiVersion: v1
kind: Secret
metadata:
name: kafka-backup-license
namespace: kafka-backup
type: Opaque
stringData:
license.key: |
-----BEGIN KAFKA-BACKUP LICENSE-----
eyJsaWNlbnNlX2lkIjoiYWJjZGVmMTItMzQ1Ni03ODkwLWFiY2QtZWYxMjM0
...
-----END KAFKA-BACKUP LICENSE-----

Mount it in your deployment:

volumes:
- name: license
secret:
secretName: kafka-backup-license
volumeMounts:
- name: license
mountPath: /etc/kafka-backup
readOnly: true

Environment Variable (CI/CD)

For CI/CD pipelines, pass the license as a base64-encoded environment variable:

export ENTERPRISE_LICENSE_KEY=$(base64 < license.key)
kafka-backup backup --config backup.yaml

Graceful Degradation

Enterprise features never block your backup. If a feature is configured but not licensed:

  • A warning is logged: "Schema Registry backup is configured but not licensed. Skipping."
  • The backup continues without the enterprise feature
  • Kafka data backup runs normally
  • Exit code is 0 (success)

This means you can deploy the enterprise binary everywhere and activate features per-environment by providing licenses only where needed.

Offline Validation

License validation is fully offline:

  • The Ed25519 public key is embedded in the binary at compile time
  • No network calls, no license server, no DNS dependency
  • Works in air-gapped environments
  • Validation checks: signature integrity, expiry date, feature flags

Security

  • The private signing key is held exclusively by OSO DevOps — never distributed
  • The public verification key is embedded in the enterprise binary
  • Licenses cannot be forged or modified without the private key (Ed25519 is 128-bit security)
  • License files contain customer information but no secrets — safe to store in version control or config management

FAQ

Q: What happens when the license expires? Enterprise features stop activating. The binary continues to work as an OSS-equivalent tool. No data loss, no downtime.

Q: Can I use the same license on multiple machines? Yes. The license is not tied to a machine or MAC address. It is limited by max_clusters (number of distinct Kafka clusters backed up).

Q: Do I need internet access to validate the license? No. Validation is 100% offline using Ed25519 signature verification.

Q: What if I lose my license file? Contact sales@oso.sh — we can reissue your license from our records.