Lightweight in-cluster Kubernetes observer that maintains a materialized cluster state and streams ordered, versioned resource events to the Octokube backend.
The system consists of three main components:
- Agent (running inside the cluster)
- Backend (central service)
- Client (frontend connected via socket)
Agent
- Watches the cluster via Kubernetes watch
- Maintains hot state materialized in memory
- Linearizes events
- Generates global versioning per cluster
- Provides full-state snapshots on demand
Backend
- Manages socket connections
- Applies per-user authorization rules
- Filters events and snapshots
- Multiplexes responses
- Does not generate versions
Client
- Applies incremental deltas
- Detects version gaps
- Requests re-sync when necessary
- Treats snapshots as authoritative state
- Clone the repository
- Run
make buildto build the agent - Deploy using the manifests in
config/
Run the agent with appropriate configuration flags.