Skip to main content

Phase 1 β€” Kubernetes Cluster (k3s)

The cluster is the foundation of the entire platform. Everything else runs on top of it.


Node Roles​

NodeIPRole
set-hog10.0.0.2Control Plane
fast-skunk10.0.0.4Worker
fast-heron10.0.0.7Worker
star-kitten10.0.0.8Worker

1. Install Control Plane​

ssh ubuntu@10.0.0.2

curl -sfL https://get.k3s.io | sh -

k3s installs a full Kubernetes control plane (API server, scheduler, controller manager, etcd).


2. Get Join Token​

sudo cat /var/lib/rancher/k3s/server/node-token

Copy this token β€” you'll need it for the workers.


3. Join Worker Nodes​

On each worker:

# fast-skunk
ssh ubuntu@10.0.0.4

curl -sfL https://get.k3s.io | \
K3S_URL=https://10.0.0.2:6443 \
K3S_TOKEN=<TOKEN_FROM_STEP_2> \
sh -
# fast-heron
ssh ubuntu@10.0.0.7

curl -sfL https://get.k3s.io | \
K3S_URL=https://10.0.0.2:6443 \
K3S_TOKEN=<TOKEN_FROM_STEP_2> \
sh -

4. Verify Cluster​

sudo kubectl get nodes

Expected output:

NAME STATUS ROLES AGE
set-hog Ready control-plane,master X
fast-skunk Ready <none> X
fast-heron Ready <none> X
star-kitten Ready <none> X

All 4 nodes must show Ready.


Done When​

βœ” 4 nodes in Ready state
βœ” kubectl get nodes returns all 4