# ============================================================ # homelab.conf — EINZIGE QUELLE DER WAHRHEIT # ============================================================ # Wenn sich eine IP, URL, ein Container oder Passwort ändert: # → NUR DIESE DATEI editieren. # → sync-state.sh liest hieraus und generiert alles andere. # → Niemals STATE.md, MOTDs oder Issues manuell pflegen. # ============================================================ # --- DOMAINS --- DOMAIN_PRIMARY="arakavanews.com" DOMAIN_OLD="arakava-news-2.orbitalo.net" DOMAIN_MATOMO="matomo.orbitalo.net" DOMAIN_SEAFILE="seafile.orbitalo.net" DOMAIN_GRAFANA="grafana.orbitalo.net" DOMAIN_PDM="pdm.orbitalo.info" DOMAIN_RSS="rss-manager.orbitalo.net" DOMAIN_REDAX="redax.orbitalo.net" # ============================================================ # SERVER — Eindeutige Benennung nach Standort # ============================================================ # Kambodscha (KA): 3 Server, LAN 192.168.0.x # Muldenstein (MU): 3 Server (1 offline), LAN 192.168.178.x # Ramsin (HE): 1 Server bei Helmut # Hetzner DC: 1 Server # ============================================================ # --- HETZNER --- SRV_HETZNER="100.88.230.59" # --- KAMBODSCHA (3 Server, Takeo) --- SRV_KA1="100.122.56.60" SRV_KA1_LOCAL="192.168.0.197" SRV_KA1_HOSTNAME="pve-ka-1" SRV_KA2="100.120.126.95" SRV_KA2_LOCAL="192.168.0.198" SRV_KA2_HOSTNAME="pve-ka-2" SRV_KA3="100.103.90.94" SRV_KA3_LOCAL="192.168.0.199" SRV_KA3_HOSTNAME="pve-ka-3" # --- PHNOM PENH (2 Server, Kondo — pp-cluster) --- SRV_PP1="100.126.26.46" SRV_PP1_LOCAL="192.168.0.171" SRV_PP1_HOSTNAME="pve-pp-1" SRV_PP2="100.95.156.25" SRV_PP2_LOCAL="192.168.0.227" SRV_PP2_HOSTNAME="pve-pp-2" # --- MULDENSTEIN (3 Server, pve-mu-1 aktuell offline) --- # SRV_MU1="???" # SRV_MU1_HOSTNAME="pve-mu-1" SRV_MU2="100.99.101.37" SRV_MU2_LOCAL="192.168.178.123" SRV_MU2_HOSTNAME="pve-mu-2" SRV_MU3="100.109.101.12" SRV_MU3_LOCAL="192.168.178.250" SRV_MU3_HOSTNAME="pve-mu-3" # --- RAMSIN (bei Helmut) --- SRV_HE="100.87.235.11" SRV_HE_HOSTNAME="pve-he" # --- BACKUP (PBS) --- SRV_PBS_MU="100.99.139.22" SRV_PBS_KA="lokal" # --- PASSWÖRTER --- PW_HETZNER="Astral-Proxmox!2026" PW_DEFAULT="astral66" PW_WP_ADMIN="eJIyhW0p5PFacjvvKGufKeXS" PW_5V8_USER="Holgerhh" PW_5V8_PASS="ddlhh" PW_EDELMETALL_DASHBOARD="" PW_PDM_USER="root" PW_PDM_PASS="astral66" # ============================================================ # CONTAINER — Format: CT__="name|tailscale_ip|dienste" # Servercodes: HZ=Hetzner, KA1/2/3=Kambodscha, MU2/3=Muldenstein, HE=Ramsin # ============================================================ # --- pve-hetzner (Hauptinfrastruktur) --- CT_101_HZ="wordpress-v2|100.91.212.19|WordPress + MySQL (Docker) — arakavanews.com" CT_103_HZ="seafile|100.75.247.60|Seafile (Docker)" CT_109_HZ="rss-manager|100.113.244.101|RSS Manager + Matomo — WP intern via http://10.10.10.101" CT_110_HZ="portainer|100.109.206.43|Portainer Docker UI + Loki Stack" CT_111_HZ="forgejo|100.89.246.60|Forgejo Git Server" CT_112_HZ="fuenfvoracht|100.73.171.62|FuenfVorAcht Telegram Bot" CT_113_HZ="redax-wp|100.69.243.16|Redakteur WordPress KI-Autor + DeutschlandBlog" CT_115_HZ="flugscanner-hub|100.92.161.97|Flugpreisscanner Hub + Scheduler" CT_116_HZ="homelab-ai-bot|100.123.47.7|Hausmeister Telegram Bot" CT_117_HZ="memory-service|100.121.192.94|Memory Service API (FastAPI + SQLite)" CT_144_HZ="muldenstein-backup|—|Backup-Archiv (Read-Only)" CT_999_HZ="cluster-docu|100.79.8.49|Dokumentation" # --- pve-ka-1 (Kambodscha, Hauptserver) --- CT_110_KA1="uptime-kuma|—|Uptime Monitoring" CT_115_KA1="flugscanner-asia|100.112.190.22|Scraping-Node Asia" CT_118_KA1="Django-Klon-Neu|—|Django App (Taxi)" CT_134_KA1="gold-silber-v3|100.72.230.87|Edelmetall Dashboard + Telegram Bot" CT_200_KA1="doc-converter|—|Dokument-Konverter" CT_888_KA1="MCP-Proxmox|—|MCP Server" CT_999_KA1="cluster-docu|—|Dokumentation" VM_100_KA1="debian|—|Debian VM" # --- pve-pp-1 (Phnom Penh, Kondo — Arbeitsmaschine) --- CT_100_PP1="yt-desktop|100.112.224.39|XFCE Desktop + xrdp + Chromium/Firefox + Seafile-Sync (Videos) + NFS-Mount Torrents" CT_103_PP1="torrent|—|qBittorrent Web-UI :8080 (192.168.0.129) + NFS-Export → CT 100" # --- pve-pp-2 (Phnom Penh, Kondo — Reserve/Standby) --- CT_101_PP2="yt-desktop-standby|—|Standby-Kopie CT 100 (gestoppt)" CT_102_PP2="torrent|—|qBittorrent Web-UI :8080 (192.168.0.193)" # --- pve-ka-2 (Kambodscha, Shop-Server) --- CT_504_KA2="Shop-Template|—|Shop Template (stopped)" CT_8000_KA2="Kunde0-Shop|—|Kunde 0 Shop (stopped)" CT_8010_KA2="Kunde1-Shop|—|Kunde 1 Shop (stopped)" # --- pve-ka-3 (Kambodscha, Webcam + Dienste) --- CT_101_KA3="freshrss|—|FreshRSS Reader" CT_103_KA3="Intercity-Taxi|—|Intercity Taxi App" CT_104_KA3="bt-search|—|BT Search" CT_141_KA3="llm-router-dev|—|LLM Router Entwicklung" CT_600_KA3="webcam|100.80.76.118|Restreamer + Dahua 4K Cam → cam.arakavanews.com" VM_500_KA3="frigate-vm|100.104.64.99|Frigate NVR + Coral TPU — 3 Kameras, GUI :5000" # --- pve-mu-2 (Muldenstein, Shop- & Entwicklungsserver) --- CT_111_MU2="uptimekuma|—|Uptime Monitoring" CT_112_MU2="myspeed|—|Internet Speedtest" CT_113_MU2="pve-scripts-local|—|PVE Helper Scripts" CT_114_MU2="djangoadmin|—|Django Admin" CT_115_MU2="Takeo-PC-Shop-Engl|—|PC Shop (englisch)" CT_116_MU2="Pulse|—|Pulse App" CT_117_MU2="Intercity-Taxi|—|Intercity Taxi" CT_123_MU2="Kofi-Shop-PP|—|Kofi Shop Phnom Penh" CT_128_MU2="rustdeskserver|—|RustDesk Remote Desktop" CT_130_MU2="PC-Shop-Takeo|—|PC Shop Takeo" CT_131_MU2="PC-Shopp-PP|—|PC Shop Phnom Penh" CT_136_MU2="Seleniumbase|—|Selenium Scraping" CT_140_MU2="Alfredo-Pizza|—|Pizza Alfredo" CT_150_MU2="Pizza-Express-Wolfen|—|Pizza Express Wolfen" CT_160_MU2="Red-Pizza|—|Red Pizza" CT_180_MU2="Mellensa-Pizza|—|Mellensa Pizza" CT_190_MU2="Ali-Baba|—|Ali Baba" CT_200_MU2="Pizza-Di-Angelo|—|Pizza Di Angelo" CT_500_MU2="Test-Shop|—|Test Shop" CT_501_MU2="Test-Shop-Prod|—|Test Shop Produktion" CT_502_MU2="Test-Shop-2|—|Test Shop 2" # --- pve-mu-3 (Muldenstein, Infrastruktur + Mirrors) --- CT_139_MU3="Syncthing-Muldenstein|—|Syncthing" CT_141_MU3="syncthing|—|Syncthing" CT_142_MU3="WG-easy|—|WireGuard VPN" CT_143_MU3="Raspi-Broker|—|ioBroker MQTT Broker" CT_145_MU3="flugscanner-mu|100.75.182.15|Flugpreisscanner Node DE" CT_504_MU3="projektscan-template|—|Projektscan Template" CT_600_MU3="wp-mirror|100.92.205.101|WordPress Mirror (Redundanz CT 101)" CT_601_MU3="rss-mirror|—|RSS Manager Mirror (Redundanz CT 109)" VM_144_MU3="BT-Bridge|—|BT Bridge VM" # --- pve-he (Ramsin, bei Helmut) --- # Container noch nicht inventarisiert # --- TELEGRAM BOTS --- TG_CHAT_ID="674951792" TG_MUTTER_TOKEN="8551565940:AAHIUpZND-tCNGv9yEoNPRyPt4GxEPYBJdE" TG_FUENFVORACHT_TOKEN="8799990587:AAEoQuohGdoJ2WudoOHs_j5Ns3iwft6OlFc" TG_EDELMETALL_TOKEN="8262992299:AAEf8YHPsz42ZdP85DV7JqC4822Ts75GqF4" TG_HAUSMEISTER_TOKEN="8390233104:AAHdgF6r7qZsQEZHIBHPV1ky3v-6-YULvj8" # --- PROXMOX API TOKENS --- PVE_TOKEN_HETZNER_NAME="mcp-homelab" PVE_TOKEN_HETZNER_VALUE="e986d3d5-36c0-425c-b1bb-20ed650a8065" # --- API KEYS --- FORGEJO_TOKEN="b874766bdf357bd4c32fa4369d0c588fc6193336" FORGEJO_SYNC_TOKEN="5402da0447b0eb6aede721a8748a08974ddc5c42" GITHUB_PAT="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" OPENROUTER_KEY="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" OPENAI_API_KEY="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" MEMORY_API_TOKEN="Ai8eeQibV6Z1RWc7oNPim4PXB4vILU1nRW2-XgRcX2M" MEMORY_API_URL="http://100.121.192.94:8400" MATOMO_TOKEN="7d3987d48dcd7fdf9776bd81a4da1778" MATOMO_URL="http://100.113.244.101" MATOMO_SITE_ID="1" # --- HOMELAB MCP-SERVER (auf pve-hetzner Host) --- MCP_PATH="/root/homelab-mcp" MCP_VENV="/root/homelab-mcp/.venv" MCP_TOOLS="homelab_overview,homelab_all_containers,homelab_container_status,homelab_query_logs,homelab_get_errors,homelab_check_silence,homelab_host_health,homelab_metrics,homelab_get_config,homelab_loki_labels,homelab_prometheus_targets" # --- SAVE.TV (Online-Videorecorder) --- SAVETV_USER="739281" SAVETV_PASS="Astral1966" SAVETV_URL="https://www.save.tv" # Download-Pipeline: GEPLANT (bauen wenn Muldenstein erreichbar) # Ziel: Samba-Share auf RAID in Muldenstein → Jellyfin-Mediathek # Architektur: Save.TV → pve-hetzner (temp) → Samba/CIFS → Jellyfin-Ordner # TODO: Share-IP, Share-Name, Credentials, Jellyfin-Pfad ermitteln # TODO: Download-Endpoint reverse-engineeren (vermutlich SendungsDetails.cfm) # TODO: cifs-mount oder smbclient fuer Transfer # Status: Login+EPG+AutoRecord FERTIG | Download+Sync OFFEN # --- E-MAIL (All-Inkl IMAP-Spiegel von GMX) --- MAIL_IMAP_SERVER="w0206aa8.kasserver.com" MAIL_IMAP_PORT="993" MAIL_USER="info@orbitalo.info" MAIL_PASS="Astral-66" # --- LOKI --- LOKI_URL="http://100.109.206.43:3100" LOKI_CT="110" # --- PROMETHEUS --- PROMETHEUS_URL="http://100.88.230.59:9090" PROMETHEUS_STATUS="aktiv" # --- ROUTING (Cloudflare Tunnels) --- # Format: TUNNEL__="domain|ziel|status" TUNNEL_101_HZ="arakavanews.com|:80|aktiv" TUNNEL_101_HZ_OLD="arakava-news-2.orbitalo.net|301→arakavanews.com|aktiv" TUNNEL_109_HZ="matomo.orbitalo.net|:80|aktiv" TUNNEL_600_KA3="cam.arakavanews.com|:8080|aktiv" TUNNEL_600_MU3="arakavanews.com|:80|standby" TUNNEL_601_MU3="rss-manager|:8080|standby" # ============================================================ # GEPLANTE HARDWARE (noch nicht online) # ============================================================ # --- KI-Tower (Muldenstein, geplant) --- # Logischer Name: ki-tower # CPU: AMD Ryzen 7 7700 (8C/16T) # RAM: 64 GB DDR5 # GPU: NVIDIA RTX 3090 (24 GB VRAM) # Storage: 1 TB NVMe # Rolle: Chef — Orchestrator, Szenenplan (Qwen 14B), Hero-Bilder (FLUX.1-dev), # Assembly (FFmpeg + NVENC), production.db (SQLite) # Skripte: GPT-5.4 via OpenAI API (Cloud, ~0.10-0.50 EUR/Skript) # OS: geplant Debian 12 + Docker + CUDA # Dienste: vLLM (:8401), ComfyUI (:8402), Orchestrator (Python) # Projekt: ki-video/PLAN.md # Status: geplant # --- NVIDIA Worker-Rig (Muldenstein, geplant) --- PRIMAERER WORKER # Logischer Name: gpu-worker # GPUs: 4x NVIDIA RTX 3080 (je 10 GB GDDR6X, PCIe 4.0 x16) # CUDA: voll unterstuetzt, identischer Stack wie ki-tower # Rolle: Produktiver Worker-Pool fuer KI-Video Pipeline # GPU #0: XTTS v2 (TTS, ~4 GB) → danach SDXL Bilder (~7 GB) :8501 # GPU #1: SDXL (Standard-Szenen, ~7 GB, durchgehend) :8502 # GPU #2: SadTalker (Avatar lip-sync, ~6 GB, wartet auf TTS) :8503 # GPU #3: Real-ESRGAN (Upscaling) + Whisper (Untertitel) :8504 # OS: geplant Debian 12 + Docker + CUDA # Architektur: 1 Container pro GPU, feste Zuordnung, HTTP-API pro Worker # Status: geplant # # --- AMD Mining-Rig (Muldenstein, Reserve) --- NEBENROLLE # Logischer Name: gpu-reserve # GPUs: 8x AMD Radeon RX 6600 XT Dual (je 8 GB GDDR6, PCIe 4.0 x8) # Chip: Navi 23 (gfx1032), RDNA 2 # ROCm: inoffiziell (HSA_OVERRIDE_GFX_VERSION=10.3.0 noetig) # Funktion: Reserve/Nebenrolle — Whisper (whisper.cpp), CPU-Batch-Jobs # Prioritaet: Niedrig. Nur einsetzen wenn 3080-Rig ausgelastet. # Alternative: Verkaufen und Erloese in Storage/RAM investieren. # OS: geplant Debian 12 + Docker + ROCm (falls benoetigt) # Status: zurueckgestellt, Entscheidung nach 3080-Rig-Aufbau # ============================================================ # NAMENS-MAPPING (Alt → Neu) — Referenz für Migration # ============================================================ # pve-hetzner → pve-hetzner (unverändert) # pve1 → pve-ka-1 (Kambodscha, Hauptserver) # pve-Shops → pve-ka-2 (Kambodscha, Shop-Server) # pve3 (KH) → pve-ka-3 (Kambodscha, Webcam + Dienste) # pve2 → pve-mu-2 (Muldenstein, Shops & Entwicklung) # pve3 (MU) → pve-mu-3 (Muldenstein, Infra + Mirrors) # pve-mu-1 → offline (Muldenstein, noch nicht inventarisiert) # helmut-pve → pve-he (Ramsin, bei Helmut) # PBS → pbs-mu (PBS Muldenstein) # ============================================================