Skip to main content

Deployment Overview

OSO Kafka Backup can be deployed in several ways depending on your infrastructure and requirements.

Deployment Options​

MethodBest ForManagementScalability
Bare MetalTraditional servers, VMsManualManual
DockerContainerized environmentsManual/ComposeManual
KubernetesK8s clusters (manual)kubectl/HelmManual
Kubernetes OperatorProduction K8sCRDs/GitOpsAutomatic

Quick Decision Guide​

Use Bare Metal When​

  • Running on traditional servers or VMs
  • Simple single-node deployments
  • Direct filesystem access required
  • Minimal container overhead desired

Use Docker When​

  • Local development and testing
  • CI/CD pipelines
  • Simple container deployments
  • Docker Compose environments

Use Kubernetes When​

  • Running on Kubernetes clusters
  • Need manual control over backup scheduling
  • Using external job schedulers (Argo, Airflow)
  • Not ready for operator pattern

Use Kubernetes Operator When​

  • Production Kubernetes deployments
  • GitOps workflows (ArgoCD, Flux)
  • Automated scheduled backups
  • Multi-tenant environments
  • Need declarative backup management

System Requirements​

Minimum Requirements​

ResourceRequirement
CPU1 core
Memory256 MB
Disk10 GB (+ backup storage)
NetworkAccess to Kafka brokers
ResourceRequirement
CPU2-4 cores
Memory1-2 GB
Disk100 GB SSD (for local storage)
Network1 Gbps to Kafka and storage

Sizing Guidelines​

Kafka Cluster SizeCPUMemoryNotes
Small (< 100 partitions)1 core512 MBSingle instance
Medium (100-500 partitions)2 cores1 GBIncrease parallelism
Large (500+ partitions)4 cores2 GBConsider multiple instances

Network Requirements​

Outbound Connections​

ServicePortProtocolRequired
Kafka Brokers9092 (or custom)TCPYes
AWS S3443HTTPSIf using S3
Azure Blob443HTTPSIf using Azure
GCS443HTTPSIf using GCS

Security Considerations​

  • Use TLS for Kafka connections in production
  • Use IAM roles/service accounts for cloud storage (avoid static credentials)
  • Restrict network access to backup service
  • Encrypt data at rest in storage backend

Storage Backend Setup​

Before deploying, configure your storage backend:

BackendSetup Guide
AWS S3AWS S3 Setup
Azure BlobAzure Blob Setup
Google Cloud StorageGCS Setup

Enterprise Edition​

All deployment methods above also apply to the enterprise edition. The enterprise binary is a drop-in replacement that adds Schema Registry backup, Confluent RBAC backup, and more. To use the enterprise edition:

  • Homebrew: brew install osodevops/tap/kafka-backup-enterprise (instead of kafka-backup)
  • Docker: osodevops/kafka-backup-enterprise:latest (instead of ghcr.io/osodevops/kafka-backup)
  • Binary: Download from the enterprise releases page

See the Enterprise Installation Guide for full details.

Next Steps​

  1. Choose your deployment method:

  2. Configure cloud storage (if applicable):

  3. For production Kubernetes: