This repo contains guides and resources on how to run the Talos controlplane as pods in a Kubernetes cluster.
Pre-reqs
- kubectl
- talosctl
You must also have access to a Kubernetes/OpenShift cluster with cluster-admin rights.
Step-by-step guide
- Apply the statefulset++ from this repo:
kubectl apply -f statefulset.yaml
- Make sure your hostfile has an entry like this:
127.0.0.1 talos talos-0 talos-1 talos-2
- Start portforwarding to port 50000 of one of the talos pods:
kubectl port-forward pod/talos-0 50000:50000 -n talos
- Bootstrap talos:
talosctl -e talos-0 -n talos-0 --talosconfig talosconfig bootstrap
- Generate a kubeconfig:
talosctl -e talos-0 -n talos-0 --talosconfig talosconfig kubeconfig ~/.kube/config.d/talos
-
Modify the endpoint in the kubeconfig to your environment (wip)
-
???
-
profit
❯ kubectl --kubeconfig ~/.kube/config.d/talos get node
NAME STATUS ROLES AGE VERSION
talos-0 Ready control-plane 6m39s v1.33.0
talos-1 Ready control-plane 6m29s v1.33.0
talos-2 Ready control-plane 6m59s v1.33.0
Adding a node
- Create a VM from talos iso (wip)
- Portforward to port 50000 of the vm:
kubectl virt port-forward vm/talos-node-1 50000
- Add node to cluster:
talosctl apply-config --insecure --nodes 127.0.0.1:50000 --file worker.yaml