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>
1.8 KiB
1.8 KiB
#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-fromper 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-urlmitchecksum); 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 undcicustomwerden auch nach einem Fehler entfernt. - UEFI mit
pre-enrolled-keys=1(Secure Boot an) – Debian 13 bootet damit; Proxmox setzt selbstms-cert=2023k. - Auf dem Testhost dauerte der Vorbereitungsstart ~70 s.