docs(architecture): correct infrastructure topology - all nodes are physical servers
- Updated mermaid diagram to show Heimdall as standalone physical server (10.0.0.151) - Removed nested VM structure incorrectly showing Heimdall inside PVE01 hypervisor - Corrected infrastructure inventory table: Heimdall listed as "Physical Server" with Intel N100 - Updated Watchtower label from "Raspberry Pi 5" to "Physical Server" for consistency - Clarified PVE01 role as hypervisor platform with no VMs currently deployed - Updated repository structure comment: heimdall/ marked as "Physical" not "VM on PVE01" - Adjusted stats section: "Proxmox VE 9.1.7 available (no VMs currently deployed)" - Added qualifier to backup strategy: Proxmox VM snapshots only apply when VMs exist Context: User clarified that all infrastructure nodes (heimdall, waldorf, watchtower, pve01) are physical servers. Previous documentation incorrectly represented Heimdall as a VM hosted on the PVE01 hypervisor, when it is actually a standalone physical server running Ubuntu 24.04.
This commit is contained in:
parent
e087670ca5
commit
ebaac8aa50
38
README.md
38
README.md
@ -15,10 +15,10 @@
|
|||||||
- **Ansible Automation:** All nodes managed by Ansible from watchtower control plane
|
- **Ansible Automation:** All nodes managed by Ansible from watchtower control plane
|
||||||
- **Infrastructure as Code:** Services defined in `compose.yaml` + infrastructure managed with Ansible playbooks
|
- **Infrastructure as Code:** Services defined in `compose.yaml` + infrastructure managed with Ansible playbooks
|
||||||
- **GPU Transcoding:** Hardware-accelerated media streaming with NVIDIA GTX 1060 Mobile
|
- **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
|
- **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)
|
- **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,8 +30,7 @@ graph TB
|
|||||||
CF[Cloudflare DNS]
|
CF[Cloudflare DNS]
|
||||||
end
|
end
|
||||||
|
|
||||||
subgraph "PVE01 - Proxmox VE Hypervisor (10.0.0.201)"
|
subgraph "Heimdall - Physical Server (10.0.0.151)"
|
||||||
subgraph "Heimdall VM (10.0.0.151)"
|
|
||||||
Traefik[Traefik Reverse Proxy<br/>:80, :443]
|
Traefik[Traefik Reverse Proxy<br/>:80, :443]
|
||||||
Komodo[Komodo Core<br/>Container Orchestrator]
|
Komodo[Komodo Core<br/>Container Orchestrator]
|
||||||
Gitea[Gitea<br/>Self-Hosted Git]
|
Gitea[Gitea<br/>Self-Hosted Git]
|
||||||
@ -39,7 +38,6 @@ graph TB
|
|||||||
Trek[Trek]
|
Trek[Trek]
|
||||||
Vault[Vaultwarden]
|
Vault[Vaultwarden]
|
||||||
end
|
end
|
||||||
end
|
|
||||||
|
|
||||||
subgraph "Waldorf - Physical Server (10.0.0.251)"
|
subgraph "Waldorf - Physical Server (10.0.0.251)"
|
||||||
Plex[Plex Media Server<br/>GPU Transcoding]
|
Plex[Plex Media Server<br/>GPU Transcoding]
|
||||||
@ -48,12 +46,16 @@ graph TB
|
|||||||
KomodoW[Komodo Periphery]
|
KomodoW[Komodo Periphery]
|
||||||
end
|
end
|
||||||
|
|
||||||
subgraph "Watchtower - Raspberry Pi 5 (10.0.0.200)"
|
subgraph "Watchtower - Physical Server (10.0.0.200)"
|
||||||
Ansible[Ansible Control Node<br/>Infrastructure Automation]
|
Ansible[Ansible Control Node<br/>Infrastructure Automation]
|
||||||
KomodoP[Komodo Periphery]
|
KomodoP[Komodo Periphery]
|
||||||
VSCode[VS Code Server]
|
VSCode[VS Code Server]
|
||||||
end
|
end
|
||||||
|
|
||||||
|
subgraph "PVE01 - Physical Server (10.0.0.201)"
|
||||||
|
PVE[Proxmox VE 9.1.7<br/>Hypervisor Platform]
|
||||||
|
end
|
||||||
|
|
||||||
subgraph "TerraMaster NAS (10.0.0.250)"
|
subgraph "TerraMaster NAS (10.0.0.250)"
|
||||||
NFS[NFS Storage<br/>Volume1: /appdata<br/>Volume2: /media]
|
NFS[NFS Storage<br/>Volume1: /appdata<br/>Volume2: /media]
|
||||||
end
|
end
|
||||||
@ -68,16 +70,16 @@ graph TB
|
|||||||
Komodo <-->|WebSocket| KomodoP
|
Komodo <-->|WebSocket| KomodoP
|
||||||
Gitea -->|Webhook| Komodo
|
Gitea -->|Webhook| Komodo
|
||||||
|
|
||||||
Ansible -.->|SSH| PVE01
|
Ansible -.->|SSH| PVE
|
||||||
Ansible -.->|SSH| Heimdall
|
Ansible -.->|SSH| Traefik
|
||||||
Ansible -.->|SSH| Waldorf
|
Ansible -.->|SSH| Plex
|
||||||
|
|
||||||
Plex --> GPU
|
Plex --> GPU
|
||||||
Tunarr --> GPU
|
Tunarr --> GPU
|
||||||
|
|
||||||
Heimdall -.->|NFS v4| NFS
|
Traefik -.->|NFS v4| NFS
|
||||||
Waldorf -.->|NFS v4| NFS
|
Plex -.->|NFS v4| NFS
|
||||||
Watchtower -.->|NFS v3| NFS
|
Ansible -.->|NFS v3| NFS
|
||||||
|
|
||||||
style NFS fill:#f9a825,color:#000
|
style NFS fill:#f9a825,color:#000
|
||||||
style PVE01 fill:#e57000,color:#fff
|
style PVE01 fill:#e57000,color:#fff
|
||||||
@ -89,10 +91,10 @@ graph TB
|
|||||||
|
|
||||||
| Node | IP | Hardware | Platform/OS | Role | Services |
|
| Node | IP | Hardware | Platform/OS | Role | Services |
|
||||||
|------|------|----------|----------|------|----------|
|
|------|------|----------|----------|------|----------|
|
||||||
| **PVE01** | `10.0.0.201` | Physical Server<br/>Intel i5-13500T (14c), 15GB RAM | Proxmox VE 9.1.7 | Hypervisor | Hosts Heimdall VM |
|
| **PVE01** | `10.0.0.201` | Physical Server<br/>Intel i5-13500T (14c), 15GB RAM | Proxmox VE 9.1.7 | Hypervisor | VM orchestration platform |
|
||||||
| **Heimdall** | `10.0.0.151` | Proxmox VM on PVE01<br/>Intel N100 (4c), 15GB RAM | Ubuntu 24.04 | Core Services | Komodo Core, Gitea, Traefik, Redis, Trek, Vaultwarden |
|
| **Heimdall** | `10.0.0.151` | Physical Server<br/>Intel N100 (4c), 15GB RAM | Ubuntu 24.04 | Core Services | Komodo Core, Gitea, Traefik, Redis, Trek, Vaultwarden |
|
||||||
| **Waldorf** | `10.0.0.251` | Physical Server<br/>i7-7820HQ (8c), GTX 1060, 16GB | Ubuntu 24.04 | Media Processing | Plex, Tunarr (GPU transcoding), Komodo Periphery |
|
| **Waldorf** | `10.0.0.251` | Physical Server<br/>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<br/>ARM Cortex-A76 (4c), 16GB | Debian Trixie | Control Plane | Ansible, Komodo Periphery, VS Code Server |
|
| **Watchtower** | `10.0.0.200` | Physical Server<br/>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`) |
|
| **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
|
│ │ └── proxmox_post_install/ # Nag removal, repo config
|
||||||
│ └── group_vars/ # Global variables
|
│ └── group_vars/ # Global variables
|
||||||
├── nodes/ # Service definitions per node
|
├── nodes/ # Service definitions per node
|
||||||
│ ├── heimdall/ # Core infrastructure (VM on PVE01)
|
│ ├── heimdall/ # Core infrastructure (Physical)
|
||||||
│ │ ├── core/ # Komodo, Traefik, Redis
|
│ │ ├── core/ # Komodo, Traefik, Redis
|
||||||
│ │ ├── trek/ # Trek service
|
│ │ ├── trek/ # Trek service
|
||||||
│ │ ├── vaultwarden/ # Password manager
|
│ │ ├── vaultwarden/ # Password manager
|
||||||
@ -323,7 +325,7 @@ environment:
|
|||||||
|
|
||||||
- **Git Repository:** Daily backups via Gitea's built-in backup feature
|
- **Git Repository:** Daily backups via Gitea's built-in backup feature
|
||||||
- **Docker Volumes:** Weekly snapshots to `/mnt/appdata/backups/`
|
- **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}/`
|
- **Configuration Files:** Tracked in Git under `nodes/{hostname}/`
|
||||||
|
|
||||||
---
|
---
|
||||||
@ -336,7 +338,7 @@ environment:
|
|||||||
- **Active Services:** 12+ (Traefik, Plex, Tunarr, Gitea, Trek, Vaultwarden, etc.)
|
- **Active Services:** 12+ (Traefik, Plex, Tunarr, Gitea, Trek, Vaultwarden, etc.)
|
||||||
- **Total RAM:** 62GB (15GB PVE01 + 15GB Heimdall + 16GB Waldorf + 16GB Watchtower)
|
- **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)
|
- **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)
|
- **GPU Acceleration:** NVIDIA GTX 1060 Mobile (6GB VRAM)
|
||||||
- **Storage:** TerraMaster NAS (NFSv3/v4)
|
- **Storage:** TerraMaster NAS (NFSv3/v4)
|
||||||
|
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user