Kubernetes Cluster from Scratch
Bootstrap a cluster with kubeadm and deploy a real workload.
0 of 6 steps
What you will end up with
A multi-node cluster
A deployed, exposed app
Working pod networking
Build steps
0/6Spin up three or more Linux VMs. One becomes the control plane, the brain, and the rest become workers, the hands that actually run pods.
Run kubeadm init on the control plane node. It hands you back a join command, like a locker combination the workers will need to check in.
Apply a network add-on, like Calico, with kubectl apply -f. Skip this and pods on different nodes cannot talk, like rooms with no hallway connecting them.
Run the kubeadm join command from the control plane step on each worker VM. That is literally handing them the locker combination to check in.
Write a Deployment YAML naming the image and how many copies you want, then kubectl apply -f it. A Deployment is your standing promise: always keep this many copies running.
Create a Service to give the pods one stable address, then an Ingress to route a hostname to that Service. The Service is the mailbox, the Ingress is the street sign pointing to it.
Before you start