Adds 4-layer inventory system as Single Source of Truth: - inventory/physical.yaml: Physical hosts (Hestia, Proxmox, TrueNAS, ER605) - inventory/proxmox.yaml: VMs and LXC containers (dockerino, media, homeassistant) - inventory/truenas.yaml: ZFS pools, disks, datasets, NFS exports - inventory/network.yaml: VLANs, subnets, DNS All files have PLACEHOLDER fields to be filled with real data using the discovery commands in inventory/README.md
142 lines
3.6 KiB
YAML
142 lines
3.6 KiB
YAML
# ===========================================
|
|
# INVENTÁRIO PROXMOX — VMs e Containers
|
|
# ===========================================
|
|
# Máquinas virtuais e containers rodando no Proxmox.
|
|
# TODO: Preencher com dados reais via: pvesh get /qemu-auto, /lxc-auto
|
|
# ===========================================
|
|
|
|
proxmox_node: "proxmox"
|
|
|
|
# ===========================================
|
|
# Virtual Machines (VMs)
|
|
# ===========================================
|
|
vms:
|
|
|
|
homeassistant:
|
|
description: "Home Assistant OS rodando como VM"
|
|
status: "running"
|
|
os_type: "qubes" # HAOS usa o tipo qubes
|
|
vmid: "PLACEHOLDER"
|
|
resources:
|
|
cpu_cores: 4
|
|
ram_mb: 4096
|
|
disk_gb: 32
|
|
boot_order: "scsi0"
|
|
network:
|
|
bridge: "vmbr0"
|
|
vlan: 10 # Rede geral
|
|
volumes:
|
|
# TrueNAS NFS mounts dentro da VM
|
|
nfs_config: "/mnt/nfs/homeassistant/config"
|
|
nfs_media: "/mnt/nfs/media"
|
|
roles:
|
|
- home-automation
|
|
|
|
# PLACEHOLDER — adicione mais VMs aqui
|
|
|
|
# ===========================================
|
|
# Containers (LXC)
|
|
# ===========================================
|
|
containers:
|
|
|
|
dockerino:
|
|
description: "Container principal — Docker + Docker Compose (swarm mode)"
|
|
status: "running"
|
|
os_type: "debian"
|
|
vmid: "PLACEHOLDER"
|
|
resources:
|
|
cpu_cores: 4
|
|
ram_mb: 8192
|
|
disk_gb: 64
|
|
network:
|
|
ip: "10.0.0.50/24"
|
|
bridge: "vmbr0"
|
|
vlan: 1 # Rede infra
|
|
gateway: "PLACEHOLDER" # IP do ER605
|
|
dns: "10.0.0.2"
|
|
volumes:
|
|
# Mounts do TrueNAS NFS
|
|
nfs_picsur: "/mnt/nfs/picsur/data"
|
|
nfs_docker_volumes: "/mnt/nfs/docker-volumes"
|
|
docker:
|
|
version: "PLACEHOLDER"
|
|
compose_version: "PLACEHOLDER"
|
|
services:
|
|
- picsur
|
|
- adguard #outro instance?
|
|
- outline
|
|
- nginx-proxy
|
|
- homer
|
|
- bookstack
|
|
- flatnotes
|
|
- homebox
|
|
- speedtest
|
|
- omada-controller
|
|
- twingate
|
|
roles:
|
|
- docker-host
|
|
- reverse-proxy
|
|
- application-host
|
|
|
|
media:
|
|
description: "Container — Jellyfin e serviços de mídia"
|
|
status: "running"
|
|
os_type: "debian"
|
|
vmid: "PLACEHOLDER"
|
|
resources:
|
|
cpu_cores: 4
|
|
ram_mb: 8192
|
|
disk_gb: 128
|
|
network:
|
|
ip: "PLACEHOLDER" # TODO: Descobrir IP
|
|
bridge: "vmbr0"
|
|
vlan: 1
|
|
gateway: "PLACEHOLDER"
|
|
dns: "10.0.0.2"
|
|
volumes:
|
|
nfs_media: "/mnt/nfs/media"
|
|
docker:
|
|
version: "PLACEHOLDER"
|
|
services:
|
|
- jellyfin
|
|
roles:
|
|
- media-server
|
|
|
|
# ===========================================
|
|
# Storage Pools (Proxmox → TrueNAS)
|
|
# ===========================================
|
|
nfs_mounts:
|
|
nfs-media:
|
|
server: "PLACEHOLDER" # IP do TrueNAS
|
|
export: "/mnt/tank/media"
|
|
mount_point: "/mnt/nfs/media"
|
|
usage: "Jellyfin media files"
|
|
|
|
nfs-picsur:
|
|
server: "PLACEHOLDER"
|
|
export: "/mnt/tank/picsur"
|
|
mount_point: "/mnt/nfs/picsur"
|
|
usage: "Picsur image storage"
|
|
|
|
nfs-docker-volumes:
|
|
server: "PLACEHOLDER"
|
|
export: "/mnt/tank/docker-volumes"
|
|
mount_point: "/mnt/nfs/docker-volumes"
|
|
usage: "Docker named volumes (named volumes persistem entre recreações)"
|
|
|
|
nfs-homeassistant:
|
|
server: "PLACEHOLDER"
|
|
export: "/mnt/tank/homeassistant"
|
|
mount_point: "/mnt/nfs/homeassistant"
|
|
usage: "Home Assistant config"
|
|
|
|
# ===========================================
|
|
# Notes
|
|
# ===========================================
|
|
# Para descobrir IPs das VMs:
|
|
# pvesh get /qemu/<vmid>/agent/network-get-interfaces
|
|
# pvesh get /lxc/<vmid>/agent/network-get-interfaces
|
|
#
|
|
# Para listar todos os containers:
|
|
# pvesh get /cluster/resources
|