--- # **noble_repo_root** and **noble_talos_dir** are set by **playbooks/talos_phase_a.yml** (repo root and **talos/**). # Run **talhelper genconfig -o out** before apply (needs talhelper + talsecret per talos/README.md §1). noble_talos_genconfig: true # **auto** — probe nodes (maintenance vs joined TLS); **insecure** — always **--insecure**; **secure** — always **TALOSCONFIG** (Phase A already done / talos/README §2 B). noble_talos_apply_mode: auto # Skip if cluster is already bootstrapped (re-run playbook safely). noble_talos_skip_bootstrap: false # After **apply-config**, nodes often reboot — wait for Talos **apid** (:50000) before **bootstrap** / **kubeconfig**. noble_talos_wait_for_apid: true noble_talos_apid_wait_delay: 20 noble_talos_apid_wait_timeout: 900 # **talosctl bootstrap -n** — first control plane (neon). noble_talos_bootstrap_node_ip: "192.168.50.20" # **talosctl kubeconfig -n** (node that answers Talos/K8s for cert fetch). noble_talos_kubeconfig_node: "192.168.50.20" # **talosctl kubeconfig -e** — Talos endpoint (node IP before VIP is reachable; VIP when LAN works). noble_talos_kubeconfig_endpoint: "192.168.50.20" # After kubeconfig, patch **kubectl** server if VIP in file is unreachable (**group_vars** / same as noble.yml). # noble_k8s_api_server_override: "" # Must match **cluster.name** / kubeconfig cluster entry (often **noble**). noble_talos_kubectl_cluster_name: noble # Inventory: IP + filename under **talos/out/** — align with **talos/talconfig.yaml**. noble_talos_nodes: - { ip: "192.168.50.20", machine: "noble-neon.yaml" } - { ip: "192.168.50.30", machine: "noble-argon.yaml" } - { ip: "192.168.50.40", machine: "noble-krypton.yaml" } - { ip: "192.168.50.10", machine: "noble-helium.yaml" }