Setting Up a Production-Grade Kubernetes Cluster from Scratch Using Kubeadm (No Minikube, No AKS)
Setup kubernetes from scratch
Best way to install and use kubernetes for learning
K3S is pretty nice. Single binary install and you can use it to build multi node or HA clusters.
More on reddit.comcan anybody recommend a step by step guide to installing Kubernetes cluster manually (ie not using kubeinit) on on-prem infrastructure? Kubernetes the hard way document is for GCP and I'm not interested in that..
We use kubespray to setup our production clusters. It's Ansible, so not too difficult to figure out what it's doing if you're already familiar with that.
More on reddit.comVideos
Hi ,
I've published a detailed blog on how to set up a 3-node Kubernetes cluster (1 master + 2 workers) completely from scratch using kubeadm — the official Kubernetes bootstrapping tool.
This is not Minikube, Kind, or any managed service like EKS/GKE/AKS. It’s the real deal: manually configured VMs, full cluster setup, and tested with real deployments.
What’s in the guide:
-
How to spin up 3 Ubuntu VMs for K8s
-
Installing
containerd,kubeadm,kubelet, andkubectl -
Setting up the control plane (API server, etcd, controller manager, scheduler)
-
Adding worker nodes to the cluster
-
Installing Calico CNI for networking
-
Deploying an actual NGINX app using NodePort
-
Accessing the cluster locally (outside the VM)
-
Managing multiple kubeconfig files
I’ve also included an architecture diagram to make everything clearer.
Perfect for anyone preparing for the CKA, building a homelab, or just trying to go beyond toy clusters.
Would love your feedback or ideas on how to improve the setup. If you’ve done a similar manual install, how did it go for you?
TL;DR:
-
Real K8s cluster using kubeadm
-
No managed services
-
Step-by-step from OS install to running apps
-
Architecture + troubleshooting included
Happy to answer questions or help troubleshoot if anyone’s trying this out!