Files
cluster-knaster/platform/proxmox
rorappandClaude Opus 5.5 c81e372c49
ci / test (push) Successful in 25s
sites: Inventar und Zielbild an echte Knoten (pve44–pve61) angepasst; ADR-0001/0002/0006 ergänzt
Aufbauplan Task 0.4:
- inventory.yaml: pve44/46/48/52/61 und GODE-PC-05/06 (Ada, Windows, cpu_roles: false)
- proxmox.yaml: eine GPU-VM pro Knoten mit allen Karten (D2), local-lvm/tank (D1 B),
  192.168.100.0/24 ohne VLAN, Gast-IPs .220–.239 (ANNAHME bis Task 0.2)
- registry.yaml/prometheus.yml: ops-Labels auf gpu-pve44/46/48, Ada ohne pve_node/vmid
- tofu: dynamische hostpci, Speicher je Gast; Ansible: pve_gpu_hosts/pve_kiosk,
  Replikation auf mehrere Ziele
- Placement: cpu_roles=false schließt Arbeitsplätze/Kiosk von CPU-Rollen aus
- PLAN §1.3/§1.4/§9 und ADR-Nachträge (D1 entschieden, D2/D3 Bestätigung offen)

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-13 01:39:49 +02:00
..

platform/proxmox

Proxmox-spezifische Schicht (austauschbar, siehe PLAN §7.2). Eingabe ist immer sites/<site>/proxmox.yaml.

Status: geschrieben, aber noch nicht gegen den echten Cluster getestet. Erster Lauf beim gemeinsamen Deployment, jeweils mit tofu plan bzw. ansible-playbook --check.

Ablauf

  1. Inventar: auf jedem Node knaster inventory collect ausführen und sites/knaster/inventory.yaml ersetzen. Danach knaster placement plan --inventory sites/knaster/inventory.yaml und die Ergebnisse in proxmox.yaml übertragen (PCI-Pfade über lspci -nn | grep -i nvidia, IOMMU-Gruppen).
  2. Hosts vorbereiten: ansible-playbook playbooks/site.yml --limit pve_gpu_hosts. Setzt IOMMU und VFIO und sperrt die NVIDIA-Treiber, nur auf GPU-Knoten (pve61 bleibt unberührt, Kiosk). Danach die Hosts neu starten. Der ZFS-Pool tank wird nicht automatisch angelegt (Datenverlustgefahr), die Rolle gibt dafür den Befehl aus.
  3. Template: pro GPU-Knoten ein Ubuntu-24.04-Cloud-Image als Template mit VMID 9000.
  4. VMs/LXC: cd tofu && tofu init && tofu plan -var proxmox_api_token=... und danach tofu apply.
  5. Gäste: ansible-playbook playbooks/site.yml --limit gpu_vms,infra. Installiert die Treiber pro Generation gepinnt (legacy/modern), das Container-Toolkit, Docker und den Xid-Exporter.
  6. Dienste: deploy/compose/<rolle> auf den jeweiligen Gästen starten.

Bewusste Grenzen

  • Keine Live-Migration von GPU-VMs. HA gilt nur für den Infra-LXC (mit ZFS-Replikation alle 15 Min.).
  • Der Proxmox-API-Token für den Healer braucht nur VM.PowerMgmt auf den GPU-VMs und Sys.PowerMgmt (Host-Neustart, nur mit Freigabe).