Role: Compute & Orchestration
Responsibility
The Compute role provides the execution environment for all platform workloads. It handles scheduling, lifecycle management (start/stop/restart), and resource isolation between tenants.
Key Guarantees
- Automated Scheduling: Workloads are placed on nodes based on resource availability and constraints.
- Self-Healing: Automatic recovery of failed workloads.
- Resource Isolation: Enforced limits on CPU, memory, and disk to prevent “noisy neighbor” effects.
Related Models & Policies
Implementation Options
| Option | Best Fit | Good At | Costs / Risks | Integration Notes |
|---|---|---|---|---|
| K3s | Pragmatic homelab | Lightweight Kubernetes; easy setup; bundled extras (Traefik). | Still Kubernetes complexity; some opinionated defaults. | Best with Traefik + Longhorn patterns. |
| Kubernetes on Talos | Enterprise-grade HA | Immutable OS; security; “OS as appliance” feel. | Steeper learning curve; non-traditional debugging. | Pairs with NGINX + Rook-Ceph + Velero. |
| Nomad | Simple/Flexible | Easy to run; handles non-container workloads; low overhead. | Smaller ecosystem than K8s; stateful patterns more DIY. | Best with Consul/Vault, ZFS host volumes, Traefik/Caddy. |
Typical Stack Pairings
- K3s: Traefik + Longhorn
- Talos/K8s: NGINX + Rook-Ceph
- Nomad: Traefik + ZFS + Consul