Platform decision memo — phase, HA scope, deferrals (Pi / k3s / Longhorn / Rancher)¶
Purpose¶
Decision memo for the smart-farm-wiki homelab/edge Kubernetes platform: what belongs in Phase 0/1, what is deferred, what “HA” means in this repo, and what must not be overbuilt before workload truth (farmOS, telemetry) exists.
Doctrine package (first-class hub): Platform doctrine package — homelab / farm edge.
Canonical stack doc: Platform strategy for farm and homestead services.
HA semantics (expanded): HA meaning and constraints — homelab / farm platform. Component roles: k3s role, Longhorn role.
Phase 0/1 (pilot-ready)¶
In scope
- 1–3 Pi-class nodes: one k3s server + agents per
k3s quick-start—embedded datastore acceptable for non-life-safety lab use. - Longhorn trial only if iSCSI + disk plan are ready (
Longhorn CSI on K3s); otherwise local-path or hostPath spikes (throwaway). - One stateful pilot: farmOS or broker + DB—with logical backup proven (
Backup strategy comparison). - Documentation: tokens, kubeconfig hygiene, hostname uniqueness (
Pi fleet provisioning standard).
Out of scope for 0/1
- Rancher by default (
Rancher role and timing). - Multi-server etcd HA without a written restore drill.
- GitOps multi-cluster unless you already have more than one cluster to operate.
Deferred (until justified)¶
| Item | Defer until |
|---|---|
| k3s HA control plane (3+ servers) | Uptime need exceeds maintenance windows you can tolerate; read HA embedded etcd and test failover |
| Rancher | More than one cluster to operate, or explicit need for catalog / CD (Rancher role and timing) |
| Longhorn as default for every workload | I/O and CPU cost understood on Pi; central NAS may win for bulk (Longhorn vs central storage) |
| Service mesh, complex ingress tiers | Ten microservices you do not have yet |
What “HA” means in this repository¶
| Term | Meaning | Not implied |
|---|---|---|
| k3s HA | Multiple server nodes + quorum datastore per k3s docs (architecture) |
Multi-region; zero RPO for farm records without app-level backup |
| Longhorn replication | Survive node/disk loss on the same farm LAN | Geographic DR; ransomware immutability (needs object-lock / air-gap policy) |
| Central NAS “HA” | Vendor appliance feature set | Kubernetes SLO unless integrated as PV backend |
Full doctrine: HA meaning and constraints — homelab / farm platform.
Anti-patterns (do not overbuild)¶
- Kubernetes for a single static container on one Pi—use Docker Compose first when appropriate (
farmOS Docker captureis a lighter-weight pattern for dev). - Longhorn before stable k3s + disk + iSCSI—debug the base cluster first (
CSI on K3s). - Rancher before you can restore etcd / PVC—the dashboard is not a backup.