90 lines
2.9 KiB
Plaintext
90 lines
2.9 KiB
Plaintext
# Arvandor Infrastructure Inventory
|
|
#
|
|
# Groups:
|
|
# infrastructure - Core services (Nebula group: infrastructure)
|
|
# projects - Application workloads (Nebula group: projects)
|
|
# games - Game servers (Nebula group: games)
|
|
# all - All managed VMs
|
|
#
|
|
# Variables per host:
|
|
# ansible_host - Bridge network IP (for SSH via Proxmox jump)
|
|
# nebula_ip - Overlay network IP (for inter-service communication)
|
|
# vmid - Proxmox VM ID (used for cert paths)
|
|
|
|
[infrastructure]
|
|
dns ansible_host=192.168.100.11 nebula_ip=10.10.10.11 vmid=1001
|
|
caddy ansible_host=192.168.100.12 nebula_ip=10.10.10.12 vmid=1002
|
|
vault-01 ansible_host=192.168.100.20 nebula_ip=10.10.10.20 vmid=2000
|
|
vault-02 ansible_host=192.168.100.21 nebula_ip=10.10.10.21 vmid=2001
|
|
vault-03 ansible_host=192.168.100.22 nebula_ip=10.10.10.22 vmid=2002
|
|
gitea ansible_host=192.168.100.23 nebula_ip=10.10.10.23 vmid=2003
|
|
postgres-01 ansible_host=192.168.100.30 nebula_ip=10.10.10.30 vmid=3000
|
|
postgres-02 ansible_host=192.168.100.31 nebula_ip=10.10.10.31 vmid=3001
|
|
postgres-03 ansible_host=192.168.100.32 nebula_ip=10.10.10.32 vmid=3002
|
|
valkey-01 ansible_host=192.168.100.33 nebula_ip=10.10.10.33 vmid=3003
|
|
valkey-02 ansible_host=192.168.100.34 nebula_ip=10.10.10.34 vmid=3004
|
|
valkey-03 ansible_host=192.168.100.35 nebula_ip=10.10.10.35 vmid=3005
|
|
garage-01 ansible_host=192.168.100.39 nebula_ip=10.10.10.39 vmid=3009
|
|
garage-02 ansible_host=192.168.100.40 nebula_ip=10.10.10.40 vmid=3010
|
|
garage-03 ansible_host=192.168.100.41 nebula_ip=10.10.10.41 vmid=3011
|
|
|
|
[projects]
|
|
app-server ansible_host=192.168.100.50 nebula_ip=10.10.10.50 vmid=4050
|
|
|
|
[games]
|
|
# Example game servers (firewall disabled, use host DNAT + guest ufw)
|
|
# minecraft ansible_host=192.168.100.52 nebula_ip=10.10.10.52 vmid=4052
|
|
|
|
[docker]
|
|
gitea
|
|
app-server
|
|
|
|
[vault]
|
|
vault-01
|
|
vault-02
|
|
vault-03
|
|
|
|
# PostgreSQL HA Cluster (Patroni + etcd)
|
|
[postgres]
|
|
postgres-01
|
|
postgres-02
|
|
postgres-03
|
|
|
|
# Valkey Sentinel (1 master + 2 replicas)
|
|
[valkey]
|
|
valkey-01
|
|
valkey-02
|
|
valkey-03
|
|
|
|
# Garage S3 Cluster
|
|
[garage]
|
|
garage-01
|
|
garage-02
|
|
garage-03
|
|
|
|
[all:children]
|
|
infrastructure
|
|
projects
|
|
games
|
|
|
|
[all:vars]
|
|
# SSH jumps through the Proxmox host to reach VMs on bridge network
|
|
ansible_user=admin
|
|
ansible_ssh_common_args='-o ProxyCommand="ssh -W %h:%p -q admin@10.10.10.1"'
|
|
ansible_ssh_extra_args='-o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null'
|
|
ansible_python_interpreter=/usr/bin/python3
|
|
|
|
# Infrastructure context (update these for your environment)
|
|
lighthouse_nebula_ip=10.10.10.10
|
|
lighthouse_bridge_ip=192.168.100.10
|
|
lighthouse_public_ip=203.0.113.10
|
|
|
|
# Optional: secondary lighthouse for reduced latency
|
|
home_lighthouse_nebula_ip=10.10.10.102
|
|
home_lighthouse_public_ip=203.0.113.20
|
|
proxmox_host_ip=192.168.100.1
|
|
bridge_network=192.168.100.0/24
|
|
|
|
# Caddy reverse proxy (for iptables rules)
|
|
caddy_nebula_ip=10.10.10.12
|