homelab/build/config/ansible/inventory/hosts.yml
Russell Seymour 1250c9cef6
Some checks are pending
deploy / deploy (push) Waiting to run
Initial checkin of code for managing homelab
2026-08-24 20:52:36 +01:00

58 lines
2.2 KiB
YAML

---
all:
children:
unraid_servers:
hosts:
nas01:
ansible_host: 192.168.50.1
vars:
ansible_user: root
# The Proxmox host itself, not the guests on it — those come from the
# API-backed dynamic inventory (proxmox.yml) as `proxmox_guests`. Node-level
# configuration (backup storage, the vzdump schedule) has to be applied over
# SSH to the node, which the API inventory gives no way to address.
#
# VERIFY: depending on its configuration, the community.proxmox inventory
# plugin can also emit the node as a host. If it does, this static entry and
# the dynamic one merge under the same name — check with
# `ansible-inventory --graph` before assuming which vars won.
proxmox_nodes:
hosts:
turtle-proxmox-01:
ansible_host: 192.168.50.2
turtle-proxmox-02:
ansible_host: 192.168.50.3
vars:
ansible_user: root
# Bare-metal K3s cluster (4 Raspberry Pis) — a third platform alongside
# Unraid and Proxmox, not an app deployed onto either of them. No
# Terraform: the hosts already exist. See playbooks/k3s.yml and
# roles/k3s_node. Split into two groups, not one, so the playbook can
# bootstrap the control plane before any agent tries to join it.
#
# ansible_user is `ansible`, not root: create this user on every Pi with
# NOPASSWD sudo and install the public half of `homelab/ci/ssh-k3s`
# (docs/vault-secrets.md) as its authorized key before the first run —
# see README.md "SSH access". The private half doesn't need setting up on
# the controller: group_vars/k3s_cluster.yml points
# ansible_ssh_private_key_file at a path playbooks/k3s_ssh_key.yml fetches
# from that same Vault entry.
k3s_cluster:
vars:
ansible_user: ansible
ansible_become: true
children:
k3s_control_plane:
hosts:
k3s-ctrl-01:
ansible_host: 192.168.50.60
k3s_workers:
hosts:
k3s-wkr-01:
ansible_host: 192.168.50.61
k3s-wkr-02:
ansible_host: 192.168.50.62
k3s-wkr-03:
ansible_host: 192.168.50.63