{# Error output for noble.yml API preflight when kubectl /healthz fails #} Cannot use the Kubernetes API from this host (kubectl get --raw /healthz). rc={{ noble_k8s_health_rc | default('n/a') }} stderr: {{ noble_k8s_health_stderr | default('') | trim }} {% set err = (noble_k8s_health_stderr | default('')) | lower %} {% if 'connection refused' in err %} Connection refused: the TCP path to that host works, but nothing is accepting HTTPS on port 6443 there. • **Not bootstrapped yet?** Finish Talos first: `talosctl bootstrap` (once on a control plane), then `talosctl kubeconfig`, then confirm `kubectl get nodes`. See talos/README.md §2–§3 and CLUSTER-BUILD.md Phase A. **Do not run this playbook before the Kubernetes API exists.** • If bootstrap is done: try another control-plane IP (CLUSTER-BUILD inventory: neon 192.168.50.20, argon .30, krypton .40), or the VIP if kube-vip is up and you are on the LAN: -e 'noble_k8s_api_server_override=https://192.168.50.230:6443' • Do not point the API URL at a worker-only node. • `talosctl health` / `kubectl get nodes` from a working client. {% elif 'network is unreachable' in err or 'no route to host' in err %} Network unreachable / no route: this machine cannot route to the API IP. Join the lab LAN or VPN, or set a reachable API server URL (talos/README.md §3). {% else %} If kubeconfig used the VIP from off-LAN, try a reachable control-plane IP, e.g.: -e 'noble_k8s_api_server_override=https://192.168.50.20:6443' See talos/README.md §3. {% endif %} To skip this check (not recommended): -e noble_skip_k8s_health_check=true