K3s provides Kubernetes orchestration with a smaller footprint, but one node is not enough for production high availability. With embedded etcd, server/control-plane nodes should be designed around quorum while worker capacity is sized separately.
According to K3s documentation, an HA cluster with embedded etcd uses three or more server nodes. Agent/worker nodes can be added for application workloads. A fixed registration/load-balancer address simplifies operations.
An external load balancer or fixed registration address points to server nodes. Workers join through the API and pod traffic flows through service/ingress layers.
Embedded etcd keeps cluster state on server nodes. An external database model separates control-plane and datastore concerns; network latency and backups remain critical.
Embedded etcd HA requires server-to-server access on 2379/2380. Metrics Server needs 10250 reachability and the chosen CNI may add ports.
Check control plane, nodes, pods and snapshots regularly.
sudo k3s kubectl get nodes -o widesudo k3s kubectl get pods -Asudo k3s kubectl get events -A --sort-by=.lastTimestamp | tail -n 30sudo k3s etcd-snapshot lssystemctl status k3s --no-pagerInventory persistent storage, DNS, ingress and backups before scaling.
K3s is a lightweight Kubernetes distribution providing the Kubernetes API and core orchestration.
Not for embedded etcd HA; official docs require three or more server nodes. External datastore HA is different.
It protects cluster state, but persistent application data still needs storage/database backups.
Share node count, stateful apps, storage and uptime goals; we can choose single-node, HA embedded etcd or external DB topology.