diff --git a/README.md b/README.md index e9c2843..9e8f212 100644 --- a/README.md +++ b/README.md @@ -15,10 +15,10 @@ - **Ansible Automation:** All nodes managed by Ansible from watchtower control plane - **Infrastructure as Code:** Services defined in `compose.yaml` + infrastructure managed with Ansible playbooks - **GPU Transcoding:** Hardware-accelerated media streaming with NVIDIA GTX 1060 Mobile -- **Distributed Architecture:** Services across Proxmox hypervisor, VMs, physical servers, and Raspberry Pi +- **Distributed Architecture:** Services across physical servers with Proxmox hypervisor ready for VM deployment - **Self-Hosted Git:** No external dependencies—Gitea runs on-premise with automated backups - **Production-Grade Networking:** Traefik reverse proxy with automatic SSL (Cloudflare DNS challenge) -- **Hypervisor Management:** Proxmox VE for VM orchestration with automated post-install configuration +- **Hypervisor Management:** Proxmox VE ready for VM orchestration with automated post-install configuration --- @@ -30,15 +30,13 @@ graph TB CF[Cloudflare DNS] end - subgraph "PVE01 - Proxmox VE Hypervisor (10.0.0.201)" - subgraph "Heimdall VM (10.0.0.151)" - Traefik[Traefik Reverse Proxy
:80, :443] - Komodo[Komodo Core
Container Orchestrator] - Gitea[Gitea
Self-Hosted Git] - Redis[Redis Cache] - Trek[Trek] - Vault[Vaultwarden] - end + subgraph "Heimdall - Physical Server (10.0.0.151)" + Traefik[Traefik Reverse Proxy
:80, :443] + Komodo[Komodo Core
Container Orchestrator] + Gitea[Gitea
Self-Hosted Git] + Redis[Redis Cache] + Trek[Trek] + Vault[Vaultwarden] end subgraph "Waldorf - Physical Server (10.0.0.251)" @@ -48,12 +46,16 @@ graph TB KomodoW[Komodo Periphery] end - subgraph "Watchtower - Raspberry Pi 5 (10.0.0.200)" + subgraph "Watchtower - Physical Server (10.0.0.200)" Ansible[Ansible Control Node
Infrastructure Automation] KomodoP[Komodo Periphery] VSCode[VS Code Server] end + subgraph "PVE01 - Physical Server (10.0.0.201)" + PVE[Proxmox VE 9.1.7
Hypervisor Platform] + end + subgraph "TerraMaster NAS (10.0.0.250)" NFS[NFS Storage
Volume1: /appdata
Volume2: /media] end @@ -68,16 +70,16 @@ graph TB Komodo <-->|WebSocket| KomodoP Gitea -->|Webhook| Komodo - Ansible -.->|SSH| PVE01 - Ansible -.->|SSH| Heimdall - Ansible -.->|SSH| Waldorf + Ansible -.->|SSH| PVE + Ansible -.->|SSH| Traefik + Ansible -.->|SSH| Plex Plex --> GPU Tunarr --> GPU - Heimdall -.->|NFS v4| NFS - Waldorf -.->|NFS v4| NFS - Watchtower -.->|NFS v3| NFS + Traefik -.->|NFS v4| NFS + Plex -.->|NFS v4| NFS + Ansible -.->|NFS v3| NFS style NFS fill:#f9a825,color:#000 style PVE01 fill:#e57000,color:#fff @@ -89,10 +91,10 @@ graph TB | Node | IP | Hardware | Platform/OS | Role | Services | |------|------|----------|----------|------|----------| -| **PVE01** | `10.0.0.201` | Physical Server
Intel i5-13500T (14c), 15GB RAM | Proxmox VE 9.1.7 | Hypervisor | Hosts Heimdall VM | -| **Heimdall** | `10.0.0.151` | Proxmox VM on PVE01
Intel N100 (4c), 15GB RAM | Ubuntu 24.04 | Core Services | Komodo Core, Gitea, Traefik, Redis, Trek, Vaultwarden | +| **PVE01** | `10.0.0.201` | Physical Server
Intel i5-13500T (14c), 15GB RAM | Proxmox VE 9.1.7 | Hypervisor | VM orchestration platform | +| **Heimdall** | `10.0.0.151` | Physical Server
Intel N100 (4c), 15GB RAM | Ubuntu 24.04 | Core Services | Komodo Core, Gitea, Traefik, Redis, Trek, Vaultwarden | | **Waldorf** | `10.0.0.251` | Physical Server
i7-7820HQ (8c), GTX 1060, 16GB | Ubuntu 24.04 | Media Processing | Plex, Tunarr (GPU transcoding), Komodo Periphery | -| **Watchtower** | `10.0.0.200` | Raspberry Pi 5
ARM Cortex-A76 (4c), 16GB | Debian Trixie | Control Plane | Ansible, Komodo Periphery, VS Code Server | +| **Watchtower** | `10.0.0.200` | Physical Server
ARM Cortex-A76 (4c), 16GB | Debian Trixie | Control Plane | Ansible, Komodo Periphery, VS Code Server | | **TerraMaster** | `10.0.0.250` | NAS | TOS | Shared Storage | NFS (Volume1: `/appdata`, Volume2: `/media`) | --- @@ -201,7 +203,7 @@ homelab/ │ │ └── proxmox_post_install/ # Nag removal, repo config │ └── group_vars/ # Global variables ├── nodes/ # Service definitions per node -│ ├── heimdall/ # Core infrastructure (VM on PVE01) +│ ├── heimdall/ # Core infrastructure (Physical) │ │ ├── core/ # Komodo, Traefik, Redis │ │ ├── trek/ # Trek service │ │ ├── vaultwarden/ # Password manager @@ -323,7 +325,7 @@ environment: - **Git Repository:** Daily backups via Gitea's built-in backup feature - **Docker Volumes:** Weekly snapshots to `/mnt/appdata/backups/` -- **Proxmox VMs:** Daily snapshots with 7-day retention +- **Proxmox VMs:** Daily snapshots with 7-day retention (when VMs are deployed) - **Configuration Files:** Tracked in Git under `nodes/{hostname}/` --- @@ -336,7 +338,7 @@ environment: - **Active Services:** 12+ (Traefik, Plex, Tunarr, Gitea, Trek, Vaultwarden, etc.) - **Total RAM:** 62GB (15GB PVE01 + 15GB Heimdall + 16GB Waldorf + 16GB Watchtower) - **Total CPU Cores:** 30 physical (14c i5-13500T + 8c i7-7820HQ + 4c N100 + 4c ARM) -- **Virtualization:** Proxmox VE 9.1.7 hosting 1 VM (expandable) +- **Virtualization:** Proxmox VE 9.1.7 available (no VMs currently deployed) - **GPU Acceleration:** NVIDIA GTX 1060 Mobile (6GB VRAM) - **Storage:** TerraMaster NAS (NFSv3/v4)