k6e is a small container orchestrator in Go. The goal is to build something we can actually understand, run, break, and fix while learning how control planes, scheduling, reconciliation, failure recovery, and distributed systems work.

Start Here

Current milestone: M7, Mutable Workloads & Convergence

Completed: M0 through M6, including runtime execution, persistent state, node registration, scheduling, assignment execution, reconciliation, failure recovery, scale-up, scale-down, and controller-driven convergence.

Current focus: M7.4, rollout semantics for workload template changes

Next: M7.5, failed and stale assignment cleanup; M7.6, retry and backoff

What is k6e?

k6e is an educational, portfolio-grade container orchestrator built in Go and inspired by the core ideas behind Kubernetes. We are keeping it deliberately small so we can understand how the pieces work instead of trying to reproduce Kubernetes itself. The project is being developed under the kubeli8 GitHub organization.

The core mental model

flowchart LR
    A[Desired State] --> B[Control Plane]
    B --> C[Schedule]
    C --> D[Node Agent]
    D --> E[Docker]
    E --> F[Actual State]
    F --> B

How to use this hub after a long break

  1. Read Current Project State.
  2. Open the latest Engineering Journal milestone.
  3. Read its Mental Model and Walkthrough before reading code.
  4. Check Architecture Decisions to understand why we made the current design choices.
  5. Run the milestone's Verification Commands.
  6. Then continue with Next Steps.

Current Project State