Rely on Rootless Docker/Podman/nerdctl for simplifying multi-host cluster setup (similar to `kind` and minikube KIC but for multi-host)
AkihiroSuda opened this issue · comments
The current "hard way" shell scripts are really hard to maintain.
Maybe we should consider relying on Rootless Docker/Podman/nerdctl, so that we no longer need to run rootlesskit.sh
and other bunch of helper scripts to set up the user namespace.
This has been already possible with kind
and minikube (for Rootless Docker and Rootless Podman), but they do not support deploying a cluster on multiple hosts (by design), so probably we have to fork them.
Also, I guess there has been already a third party project to deploy a multi-node cluster using (rootful) Docker.
Maybe we can rewrite it to use Rootless Docker.
Bootstrapping
A cluster should be bootstrappable with the upstream kubeadm.
Multi-node networking
VXLAN (Flannel).
The UDP port for VXLAN have to be exposed with docker run -p
NodePort
The node port number will have to be decided and exposed on running docker run -p
, as Docker does not support dynamically updating the -p
ports.
Persistent data
etcd data and persistent volumes have to be mounted with docker run -v