diff --git a/infrastructure/homelab-2026-guide.md b/infrastructure/homelab-2026-guide.md new file mode 100644 index 0000000..e01aa49 --- /dev/null +++ b/infrastructure/homelab-2026-guide.md @@ -0,0 +1,455 @@ +# Homelab 2026 Starter Stack + 3D Printing GPU Passthrough + +**Research compiled for Fred's homelab and 3D print farm business** + +*Source: VirtualizationHowTo.com + Reddit r/Proxmox community* + +--- + +## 🎯 Why This Matters for You + +**Your situation:** +- Already running Proxmox (10.0.10.3, 10.0.10.2, 10.0.10.4) +- Planning 3D print farm business with your son +- Need CAD/slicing software for 3D printing +- Want modern, efficient homelab stack + +**What you'll learn:** +1. **2026 best practices** for homelab hardware and software +2. **GPU passthrough** to run Windows VM with CAD software (Fusion 360, PrusaSlicer, etc.) +3. **How this fits your 3D print farm** business needs + +--- + +## Part 1: Ultimate Homelab Stack for 2026 + +### Hardware Recommendations + +**The Modern Mini PC Approach** (you already have Proxmox servers, but good to know for expansion): + +**Ideal Specs:** +- **CPU:** Ryzen 7 or Ryzen 9 (uniform, efficient) +- **RAM:** 32-64GB DDR5 (sweet spot despite high 2025/2026 prices) +- **Storage:** Two NVMe drives (mirrored or separate workloads) +- **Network:** 2.5Gb or 10Gb +- **Power draw:** 20-50 watts (vs. your older servers drawing 100+ watts idle) + +**Why mini PCs are trending:** +- Quiet, compact, efficient +- Enterprise-grade performance +- Great models: Minisforum MS-A2, MS-02, MS-01; Beelink SER9 Max + +**Your setup:** You already have Proxmox hosts, but this is good to know if you want to add a dedicated node for 3D printing/CAD work later. + +--- + +### Software Stack - The 2026 Essentials + +#### 1. **Proxmox VE 9.1** (Foundation) ✅ You already have this! + +**What's new in 9.1:** +- **OCI container image support** (NEW) - More efficient than traditional containers +- **vTPM support** for VMs +- **Better SDN (software-defined networking)** +- **Improved backup features** +- No license shenanigans +- Huge community, tons of scripts + +**Why it's still #1:** Best balance of power and simplicity for home labs + +--- + +#### 2. **Container Management: Komodo or Portainer** + +**Komodo** (New kid on the block - 2025/2026 favorite): +- **Free and fast** +- Modern UI +- Easy Docker deployment and monitoring +- Lighter weight than Portainer +- Perfect for your n8n + container stack + +**Portainer** (The 800lb gorilla): +- More features, more complex +- GitOps built-in +- Like "VMware vCenter for containers" +- You already know Docker/containers, so either works + +**Recommendation for you:** Try Komodo - it's simpler and you said n8n node definitions are problematic. Komodo might be easier. + +--- + +#### 3. **Nginx Proxy Manager** (Reverse Proxy) ✅ You should add this! + +**Why you need this:** +- Manages all your services behind one IP +- **Auto LetsEncrypt SSL certificates** (no more manual cert renewals!) +- GUI-based (way easier than editing Nginx configs) +- Perfect for exposing services safely + +**What it does:** +- HTTPS termination +- Automatic renewals +- Domain/subdomain routing (homeassistant.nianticbooks.com, n8n.nianticbooks.com, etc.) +- Access lists and authentication +- Organizes internal vs external access + +**Your use case:** +- Right now you probably access services by IP:port (10.0.10.24:8123, etc.) +- With NPM: nice URLs (homeassistant.local or via your Caddy VPS) +- Combined with your Caddy VPS = secure remote access to everything + +--- + +#### 4. **Gitea** (Self-hosted Git) - You need this! + +**Why:** +- Store your Docker Compose files in Git (you said you lose track of configs) +- Version control for infrastructure +- Backup your n8n workflows as code +- Store 3D printing business documentation + +**Lightweight and fast:** +- Runs as a container +- Looks like GitHub +- Supports issues, pull requests, branches +- **Gitea Actions** = CI/CD built-in (run automation on git push) + +**Your use case:** +- Store Obsidian vault in Gitea (private repo on your network) +- Document infrastructure changes +- Track 3D print farm business code (if you automate anything) + +--- + +#### 5. **Proxmox Backup Server (PBS)** ✅ Critical! + +**You need this running ASAP:** +- Free, from Proxmox team +- Deduplication, compression, incremental backups +- Fast restores +- Can run on same host (separate disk) or dedicated mini PC/NAS + +**Your setup idea:** +- Install PBS on one of your Proxmox nodes +- Point to OMV storage (10.0.10.5) for backup target +- Schedule automated backups of all VMs/containers +- **INCLUDES backing up your OpenClaw container!** + +**3-2-1-1-0 rule:** +- 3 copies of data +- 2 different media +- 1 offsite (your VPS? Backblaze B2?) +- 1 offline (USB drive, fireproof safe) +- **0 errors** after verification ← Most important! + +--- + +#### 6. **Core Containers to Run** + +**From the "15 containers that make home lab better" list, here's the essentials:** + +**Monitoring & Logging:** +- **Dozzle** - Real-time container log viewer (one screen, all logs) +- **Netdata** - System monitoring (CPU, RAM, disk, network) +- **Uptime Kuma** ✅ You already have this (10.0.10.26) + +**Management:** +- **Komodo** - Container stack management +- **Nginx Proxy Manager** - Reverse proxy with SSL +- **Gitea** - Git repository + +**Security & Services:** +- **Vaultwarden** ✅ You already planned this (10.0.10.27 Week 1) +- **Pi-hole** - DNS-level ad blocking (also planned) +- **Mailrise** - Unified notification bridge (emails become push notifications) + +**Automation:** +- **n8n** ✅ You already have this (10.0.10.22) + +--- + +## Part 2: GPU Passthrough for 3D Printing Lab + +### The Use Case (From Reddit) + +**What someone built:** +- Proxmox host +- Windows 10 VM with GPU passthrough +- GPU: NVIDIA card (prices dropped in late 2024/2025) +- Purpose: Run CAD software (Fusion 360, SolidWorks, etc.) and slicing software (PrusaSlicer, Cura, etc.) + +**Why GPU passthrough matters:** +- CAD software needs GPU acceleration +- 3D rendering and complex models +- Slicing large files with previews +- Remote access to Windows VM = access CAD from anywhere + +--- + +### How It Works + +**The Setup:** +1. **Proxmox host** with dedicated GPU (not the iGPU used for Proxmox console) +2. **Windows 10/11 VM** with GPU passed through +3. **RDP or remote desktop** to access VM +4. Install CAD software, slicers, 3D printing tools +5. Access from any device (your PC, iPhone, Mac) + +**The Result:** +- Full GPU acceleration for CAD +- Can run multiple 3D printing tools +- Centralized 3D printing workstation +- Your son can access the VM too (collaborative design work) + +--- + +### Requirements + +**Hardware:** +- Dedicated GPU (NVIDIA or AMD) + - Don't use iGPU (Proxmox needs it for console) + - Budget options: GTX 1060, 1660, RTX 3060 + - Pro options: RTX 4060, 4070 (better CAD performance) +- CPU with VT-d / AMD-Vi (virtualization extensions) ✅ Your Ryzen CPUs support this +- Motherboard with IOMMU support ✅ Your Proxmox hosts likely support this + +**Software:** +- Proxmox with IOMMU enabled in BIOS +- GPU drivers inside Windows VM +- Remote desktop software (built-in RDP or Parsec for better performance) + +--- + +### Configuration Steps (High-Level) + +**1. Enable IOMMU in BIOS:** +- Boot into BIOS on Proxmox host +- Enable VT-d (Intel) or AMD-Vi (AMD) +- Save and reboot + +**2. Enable IOMMU in Proxmox:** +Edit `/etc/default/grub`: +```bash +# For Intel +GRUB_CMDLINE_LINUX_DEFAULT="quiet intel_iommu=on iommu=pt" + +# For AMD +GRUB_CMDLINE_LINUX_DEFAULT="quiet amd_iommu=on iommu=pt" +``` + +Update grub: `update-grub && reboot` + +**3. Load VFIO modules:** +Edit `/etc/modules`: +``` +vfio +vfio_iommu_type1 +vfio_pci +vfio_virqfd +``` + +**4. Blacklist GPU drivers on host:** +(So Proxmox doesn't try to use the GPU) +```bash +echo "blacklist nouveau" >> /etc/modprobe.d/blacklist.conf +echo "blacklist nvidia" >> /etc/modprobe.d/blacklist.conf +update-initramfs -u +``` + +**5. Create Windows VM in Proxmox:** +- Machine: q35 +- BIOS: OVMF (UEFI) +- Add EFI disk +- **Add PCI device** (your GPU) +- Set CPU type to "host" (important for passthrough) +- Enable "PCIe" checkbox on GPU device + +**6. Install Windows + GPU drivers:** +- Install Windows normally +- Install NVIDIA/AMD drivers inside Windows +- Verify GPU is recognized (Device Manager) + +**7. Remote Access:** +- Enable RDP in Windows +- Or install Parsec (better for CAD/gaming performance) +- Access VM from anywhere on your network + +--- + +### For Your 3D Print Farm Business + +**Use cases:** +1. **Centralized CAD workstation** - You and your son access same VM +2. **Slicing station** - Queue up print jobs, generate G-code +3. **Design library** - Store all STL files, designs in one place +4. **Remote access** - Work on designs from your bus route (when parked, obviously!) +5. **Backup everything** - VM backups = CAD software + settings + files all backed up together + +**Software you'd run:** +- **Fusion 360** (free for hobbyists/small business) +- **PrusaSlicer** or **Cura** (slicing) +- **Blender** (if doing custom modeling) +- **Bambu Studio** (for your Bambu A1) +- **OctoPrint / Mainsail** web UIs (manage printers remotely) + +**Workflow:** +1. Design in Fusion 360 (with GPU acceleration) +2. Export STL +3. Slice in PrusaSlicer/Bambu Studio +4. Send to printer (via OctoPrint or direct USB) +5. Monitor prints via webcam + OctoPrint + +--- + +### Budget GPU Options (2026 Prices) + +**Entry Level ($150-250 used):** +- GTX 1060 6GB - Good for basic CAD +- GTX 1660 Super - Better performance, still affordable + +**Mid-Range ($250-400):** +- RTX 3060 12GB - Excellent CAD performance, good value +- RTX 4060 - Newer, more efficient + +**Pro Level ($500+):** +- RTX 4070 - Great for complex CAD assemblies +- RTX 4080 - Overkill for most home use + +**Recommendation for you:** RTX 3060 or RTX 4060 - sweet spot for price/performance for CAD work. + +--- + +## How This Fits Your Current Setup + +### Your Proxmox Infrastructure + +**Current hosts:** +- main-pve (10.0.10.3) +- pve-router (10.0.10.2) +- pve-storage (10.0.10.4) + +**Option 1: Add GPU to existing host** +- Install GPU in main-pve (if there's a PCIe slot) +- Pass through to Windows VM +- Use for CAD/3D printing workstation + +**Option 2: Dedicated 3D printing node** +- Buy a mini PC with PCIe slot OR desktop with GPU +- Install Proxmox +- Cluster it with your existing nodes +- Dedicated to 3D print farm workloads + +**Option 3: Use iMac (10.0.10.11)** +- Your iMac already has GPU +- Install Windows via Boot Camp or Parallels +- Not ideal (macOS CAD apps are limited), but works short-term + +--- + +### Immediate Action Plan + +**This Week:** +1. ✅ **Install Nginx Proxy Manager** container + - Makes all services accessible via nice URLs + - Auto SSL certificates + - 30-minute setup + +2. ✅ **Install Gitea** container + - Start version-controlling your infrastructure + - Store Docker Compose files, n8n workflows, notes + - 15-minute setup + +3. ✅ **Set up Proxmox Backup Server** + - Install on one of your Proxmox nodes + - Point to OMV (10.0.10.5) for storage + - Schedule backups of all VMs/containers + - 1-hour setup + +**Next Week:** +4. **Research GPU options** + - Check if main-pve has free PCIe slot + - Look at used GPU market (Facebook Marketplace, eBay) + - Budget: $200-300 for RTX 3060 used + +5. **Test GPU passthrough** (once GPU acquired) + - Follow configuration steps above + - Create Windows 10 VM + - Install Fusion 360, PrusaSlicer, Bambu Studio + - Test remote access via RDP + +**Month 1:** +6. **Centralize 3D printing workstation** + - Move all CAD/slicing to Windows VM + - Set up file sharing (SMB) to OMV for STL library + - Configure remote access (VPN or Caddy reverse proxy) + +7. **Document workflow for your son** + - How to access VM + - How to use CAD software + - How to slice and send prints + - Collaborative design process + +--- + +## Key Takeaways + +### What You Should Implement Now + +**High Priority (This Week):** +1. **Nginx Proxy Manager** - Makes everything easier to access +2. **Gitea** - Version control for your infrastructure +3. **Proxmox Backup Server** - Protect your work (VA docs, business plans, everything!) + +**Medium Priority (Next Week):** +4. **Komodo** - Replace or augment Portainer, simpler UI +5. **Dozzle** - Real-time log viewer (helps with debugging n8n, containers) +6. **Pi-hole** - DNS ad blocking (already planned, but bump up priority) + +**Lower Priority (Month 1-2):** +7. **GPU passthrough setup** (once you buy GPU) +8. **Netdata** - System monitoring +9. **Mailrise** - Unified notifications + +--- + +### Why This Matters for Your Business + +**3D Print Farm Business:** +- **Centralized workstation** = you + your son collaborate on designs +- **GPU acceleration** = faster CAD, complex models, better workflow +- **Remote access** = work from anywhere (bus parking lot, home, vacation) +- **Professional setup** = looks good if you show clients your process + +**Homelab Improvements:** +- **Better organization** (Gitea for code, Nginx Proxy Manager for access) +- **Better backups** (PBS protects your VA docs, business plans, everything) +- **Better monitoring** (Uptime Kuma + Netdata + Dozzle) +- **Professional skills** = you learn modern DevOps tools (good for HomelabHub.AI business too!) + +--- + +## Resources + +**Setup Guides:** +- [Proxmox PCI Passthrough (Official Wiki)](https://pve.proxmox.com/wiki/PCI_Passthrough) +- [Nginx Proxy Manager Docker Setup](https://www.virtualizationhowto.com/2023/10/setting-up-nginx-proxy-manager-on-docker-with-easy-letsencrypt-ssl/) +- [Gitea Installation Guide](https://docs.gitea.io/en-us/install-with-docker/) +- [Proxmox Backup Server Documentation](https://pbs.proxmox.com/docs/) + +**Communities:** +- r/Proxmox on Reddit +- r/homelab on Reddit +- r/3Dprinting on Reddit +- Proxmox forums (forum.proxmox.com) + +**Your existing resources:** +- Your Proxmox infrastructure (already solid foundation) +- Your Caddy VPS (already handling reverse proxy externally) +- Your OMV storage (great for backup target) +- Your son's 3D printing interest (built-in business partner!) + +--- + +**Questions? Want me to help you install any of these? Just ask!** 🚀 + +*Saved to Obsidian vault: infrastructure/homelab-2026-guide.md*