Files
proxdeploy/docs/issues/007-template-bau.md
T
florian.wildeandClaude Opus 5.5 4285785a4c feat(templates): Template-Bau für VMs mit eingebautem Guest-Agent
Cloud-Image laden (download-url mit Prüfsumme, ab PVE 8.4 per API, davor
per SSH), VM mit q35/UEFI/virtio-scsi-single anlegen, Disk per
import-from importieren, Guest-Agent mit einem einmaligen
Vorbereitungsstart einbauen und als Template markieren.

Auf pve-demo (PVE 9.2.2) gebaut: Template 9000 aus Debian 13 in
5 min 26 s, Snippet und cicustom danach entfernt. Der Weg ohne SSH über
eine Bau-Adresse ist als #021 ausgegliedert.

Templates-Seite mit Liste (Proxmox ist maßgeblich, Tag
proxdeploy-template) und Formular; Abfrageschleifen erscheinen im
Detail-Log nur noch bei Fehlern.

Closes #007

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-12 10:57:11 +02:00

1.8 KiB
Raw Blame History

#007 Template-Bau für VMs

Status: erledigt Meilenstein: v0.2.0 Labels: feature, proxmox Geschätzt: 8 h Tatsächlich: 0 h 20 min

Ziel

Cloud-Image laden, Prüfsumme prüfen, VM anlegen, Disk importieren, Guest-Agent einbauen, als Template markieren.

Aufgaben

  • Weg A (≥ 8.4): download-url (content=import, checksum) + import-from per Volume-ID
  • Weg B (SSH): Download + Prüfung auf dem Node, Import per qm importdisk/import-from
  • VMID: nächste freie im Template-Bereich (Entscheidung 2026-10-12)
  • Hardware: q35, OVMF+EFI-Disk (Standard) oder SeaBIOS, virtio-scsi-single, discard/ssd/iothread, CPU host, serielle Konsole, agent=1, cloud-init-Laufwerk
  • Guest-Agent einbauen per Snippet (SSH); Weg über Bau-Adresse ohne SSH → #021
  • Template-Übersicht je Server/Node, VMID-Bereich konfigurierbar
  • Singleton je Server+Distribution

Akzeptanzkriterien

  • Debian-13-Template auf pve-demo (PVE 9.2.2) gebaut, Auftrag t-8zca3, 5 min 26 s; 8.x folgt im Feldtest (#020)

Abhängigkeiten

#005, #006

Notizen / Entscheidungen

  • Image-Dateiname mit Prüfsummen-Präfix (proxdeploy-debian-13-f46f0671a6e5.qcow2): ein neues „latest“-Image wird neu geladen, ein gleiches wiederverwendet.
  • Proxmox prüft die Prüfsumme selbst (download-url mit checksum); ProxDeploy holt sie vorher aus SHA512SUMS/SHA256SUMS.
  • Vorbereitungsstart mit vendor-data: qemu-guest-agent, Maschinen-ID leeren (sonst teilen sich Klone DHCP-Client-ID), cloud-init clean, poweroff. Snippet und cicustom werden auch nach einem Fehler entfernt.
  • UEFI mit pre-enrolled-keys=1 (Secure Boot an) – Debian 13 bootet damit; Proxmox setzt selbst ms-cert=2023k.
  • Auf dem Testhost dauerte der Vorbereitungsstart ~70 s.