Skip to content

5. Confirm it worked

The quick check

Clusters → dane-first-cluster.

Field Expected
Cluster status Running
Health Healthy
Nodes 1, Ready
Profile dane-agent-basic

If that is what you see, you have built a working Kubernetes cluster. That is the milestone.

screenshot — cluster overview, Running / Healthy

The check that actually proves the variables worked

A cluster can look healthy while the networking is quietly wrong — that is the failure described in step 3. Two minutes to rule it out.

  1. On the cluster page, open the Nodes tab.
  2. Click your node and look at the pod IP addresses listed against it.

Every pod address should begin 100.64..

If you see 192.168. or 10. addresses instead, one of the three edits did not take. Go back to step 3 and check all three — most often it is the Cilium one.

Confirm the pod network actually took

Do this even if the cluster looks healthy — a misplaced networking: block (Edit 2) fails silently, and this is the check that catches it.

kubectl get node -o jsonpath='{.items[0].spec.podCIDR}{"\n"}'

Expected: an address inside your pod range, e.g. 100.64.0.0/24.

Empty output means Kubernetes never assigned a pod range. Cilium will sit restarting forever, every pod stays stuck in ContainerCreating, and the cluster never leaves Provisioning. Go back to Edit 2 and check that networking: lines up with etcd: and scheduler:, then redeploy — the pod network is fixed when the cluster is built and cannot be changed afterwards.

Optional: look inside with kubectl

Not required, but this is how anyone technical will inspect it.

First, install kubectl if you do not have it — most laptops do not:

=== "macOS"

```bash
brew install kubectl
kubectl version --client
```

=== "Windows"

```powershell
winget install -e --id Kubernetes.kubectl
kubectl version --client
```

=== "Linux"

```bash
curl -LO "https://dl.k8s.io/release/$(curl -Ls https://dl.k8s.io/release/stable.txt)/bin/linux/amd64/kubectl"
sudo install -o root -g root -m 0755 kubectl /usr/local/bin/kubectl
kubectl version --client
```

Then:

  1. On the cluster page, top right, click the kubeconfig download icon.
  2. From your terminal:
Point kubectl at your cluster
export KUBECONFIG=~/Downloads/dane-first-cluster.kubeconfig
kubectl get nodes
Expected
NAME                                    STATUS   ROLES           AGE   VERSION
edge-06396f804bc511eb80001ceec94be53d   Ready    control-plane   12m   v1.36.2
Confirm the pod network really is 100.64.x.x
kubectl get pods -A -o wide

Every address in the IP column should sit inside 100.64.0.0/18.

What you have now

  • A reusable profile — deploy it again on any registered edge host, in minutes
  • Two variables anyone can change at deploy time without touching YAML
  • A live single-node cluster ready to have things installed on it

Cleaning up

Leave it running if you want to keep experimenting. To remove it: Clusters → dane-first-cluster → Settings → Delete Cluster. Deleting the cluster releases the node back to Ready so it can be claimed again. It does not delete the profile — that stays for next time.