Skip to main content

Konductor

Konductor

Konductor is a Kubernetes operator that provides synchronization primitives for coordinating jobs and workloads. It enables controlled access, ordering, and coordination between distributed workloads without breaking Kubernetes semantics.

What is Konductor?​

Konductor solves coordination problems in Kubernetes by providing four core primitives:

  • Semaphore - Limit concurrent access to shared resources
  • Barrier - Coordinate multi-stage workflows
  • Lease - Singleton execution and leader election
  • Gate - Dependency coordination

Why Konductor?​

Kubernetes Jobs are powerful but lack built-in coordination. When you need to:

  • Wait for multiple Jobs to complete before starting the next stage
  • Prevent CronJobs from overlapping when they run longer than their schedule
  • Ensure only one Job runs database migrations across multiple replicas
  • Limit how many batch Jobs run concurrently to avoid overwhelming your cluster
  • Coordinate Pods with each other using CLI or SDK

Konductor provides simple primitives to solve these problems natively in Kubernetes.

Key Features​

  • Kubernetes Native - CRDs, kubectl, GitOps-friendly
  • Self-Enforced - Pods voluntarily coordinate their own progress
  • Observable - All state visible via Kubernetes APIs
  • Crash-Safe - Automatic cleanup and TTL expiration
  • Lightweight - Minimal operator with efficient reconciliation

Quick Start​

Installation​

# Add the LogicIQ Helm repository
helm repo add logiciq https://logiciq.github.io/helm-charts
helm repo update

# Install konductor
helm install my-konductor logiciq/konductor

Basic Usage​

# Create a barrier for 3 Jobs
apiVersion: konductor.io/v1
kind: Barrier
metadata:
name: stage-1-complete
spec:
expected: 3
# Wait for barrier in Job
koncli barrier wait stage-1-complete --timeout 30m

Getting Started​

Use Cases​

Community​