Phase 1 was validated with a live AWS run on June 1, 2026 Pacific time.
The run created a two-node kubeadm cluster on EC2 in us-west-2, deployed nginx through a NodePort, confirmed HTTP 200 from the worker node, and then destroyed the Terraform-managed AWS resources.
kubectl get nodes -o wide
NAME STATUS ROLES VERSION INTERNAL-IP OS-IMAGE CONTAINER-RUNTIME
k8s-control-01 Ready control-plane v1.35.5 10.42.1.x Ubuntu 24.04.4 LTS containerd://2.2.1
k8s-worker-01 Ready <none> v1.35.5 10.42.1.x Ubuntu 24.04.4 LTS containerd://2.2.1
kubectl get pods -A -o wide
default nginx-demo-... 1/1 Running
default nginx-demo-... 1/1 Running
kube-system calico-kube-controllers-... 1/1 Running
kube-system calico-node-... 1/1 Running
kube-system coredns-... 1/1 Running
kube-system etcd-k8s-control-01 1/1 Running
kube-system kube-apiserver-k8s-control-01 1/1 Running
curl http://<worker-public-ip>:30080
HTTP/1.1 200 OK
Server: nginx/1.29.8
Terraform reported:
Destroy complete! Resources: 16 destroyed.
Follow-up AWS checks found no remaining active project-tagged EC2 instances, EBS volumes, VPCs, security groups, or key pairs.