WZ-IT unterstützt den Proxmox-Aufbau mit abgestimmtem Storage und Netzwerk. Automatisierte Installation wird in die Konfiguration und Abnahme der Umgebung eingeordnet.
Die automatisierte Proxmox-Installation ersetzt die Eingaben im Hostinstaller durch eine answer.toml. Sie ist von Gast-Cloud-Init und späterer Konfigurationsverwaltung zu unterscheiden (Installationshandbuch, Cloud-Init).
Stand: Oktober 2026. Ablauf nach Herstellerdokumentation und offiziellem Installer-Quellcode. Die Beispiele sind vor Verwendung auf ISO-Version und Zielhardware abzustimmen. Für einen einzelnen Host beschreibt Proxmox installieren den interaktiven Weg.
Inhaltsverzeichnis
- 1. Zielhost und Antwortquelle festlegen
- 2. Answer File vorbereiten
- 3. Datei validieren und ISO erzeugen
- 4. Installation und Erststart prüfen
- Fehler und Grenzen
- Quellen
1. Zielhost und Antwortquelle festlegen
Vorbereitung: ein für Auto-Install geeignetes offizielles Proxmox-ISO, proxmox-auto-install-assistant aus den Proxmox-Paketquellen und ein Inventar von Zielplatten, Management-Netz, DNS und Hostnamen. Prüfsumme und Zielversion gehören in die eigene Installationsakte (Installation).
| Quelle | Einsatzentscheidung | Vor dem Boot prüfen |
|---|---|---|
| ISO | Antwortdatei fest eingebettet | Richtiger Host, sensible Inhalte, geschützte Ablage |
| Partition | Antwort über bezeichnetes Dateisystem | Label und vorhandene Datei |
| HTTP | Antwort über zentralen Endpunkt | Erreichbarkeit, Hostzuordnung und TLS-Konzept |
Diese drei Modi bietet der Auto-Install-Assistent. Im folgenden Beispiel wird die ISO-Variante verwendet.
Bei der Partitionsvariante sucht der Installer eine Partition mit dem Label proxmox-ais (auch PROXMOX-AIS) und darin die Datei answer.toml; ein anderes Label wird beim Vorbereiten mit --partition-label festgelegt. Bei HTTP stammt die URL aus dem ISO, aus der DHCP-Option 250 oder aus einem DNS-TXT-Eintrag proxmox-auto-installer.<Suchdomäne>. Der SHA-256-Fingerprint des Zertifikats kommt aus dem ISO, aus der DHCP-Option 251 oder aus dem TXT-Eintrag proxmox-auto-installer-cert-fingerprint.<Suchdomäne>. Der Installer sendet per POST JSON-Daten mit Informationen zum Zielsystem; der Server kann darüber die passende Antwortdatei auswählen (Automated Installation). Ein beliebiger Dateiserver genügt dafür nicht.
2. Answer File vorbereiten
Ausgangspunkt ist die minimale TOML-Datei im Herstellerrepository. Das folgende Beispiel zeigt ihre Struktur mit zu ersetzenden Werten:
[global]
keyboard = "de"
country = "de"
fqdn = "pve01.example.invalid"
mailto = "[email protected]"
timezone = "Europe/Berlin"
root-password = "REPLACE_WITH_UNIQUE_SECRET"
[network]
source = "from-dhcp"
[disk-setup]
filesystem = "ext4"
disk-list = ["REPLACE_WITH_CONFIRMED_EMPTY_DISK"]
Nicht unverändert booten. FQDN, E-Mail, Passwort und Disk-Auswahl müssen zum Ziel passen. Die Platzhalter-Disk ist absichtlich kein gültiges Ziel. DHCP wird hier nur als Beispiel für ein vorbereitetes Management-Netz verwendet; die spätere Adresse muss zuverlässig erreichbar bleiben. Statt eines Klartextpassworts erlaubt der Installer root-password-hashed; die Dokumentation zeigt dafür einen Hash im yescrypt-Format ($y$…).
Die wichtigsten Abschnitte und Schlüssel nach der Herstellerdokumentation:
| Abschnitt | Schlüssel |
|---|---|
[global] |
keyboard, country, fqdn (oder fqdn.source = "from-dhcp"), mailto, timezone, root-password oder root-password-hashed, optional root-ssh-keys und reboot-on-error |
[network] |
source = "from-dhcp" oder "from-answer"; bei from-answer zusätzlich cidr, dns, gateway und optional filter.* für die Netzwerkkarte |
[disk-setup] |
filesystem = ext4, xfs, zfs oder btrfs; Platten über disk-list oder filter.* (nicht beides), filter-match = any oder all; Untertabellen [disk-setup.zfs], [disk-setup.lvm], [disk-setup.btrfs] mit raid, hdsize, compress und weiteren Optionen |
[first-boot] |
source = from-iso oder from-url, ordering = before-network, network-online oder fully-up |
[post-installation-webhook] |
url, optional cert-fingerprint und auth-token |
Ein Beispiel mit fester Adresse, ZFS-Mirror und Plattenfilter. Der Adressbereich 192.0.2.0/24 ist für Dokumentation reserviert; alle Werte sind zu ersetzen:
[global]
keyboard = "de"
country = "de"
fqdn = "pve02.example.invalid"
mailto = "[email protected]"
timezone = "Europe/Berlin"
root-password-hashed = "REPLACE_WITH_HASH"
root-ssh-keys = ["REPLACE_WITH_PUBLIC_KEY"]
[network]
source = "from-answer"
cidr = "192.0.2.10/24"
gateway = "192.0.2.1"
dns = "192.0.2.53"
filter.ID_NET_NAME_MAC = "*REPLACE_WITH_MAC_SUFFIX"
[disk-setup]
filesystem = "zfs"
filter.ID_MODEL = "REPLACE_WITH_MODEL*"
filter-match = "any"
[disk-setup.zfs]
raid = "raid1"
raid1 bedeutet bei ZFS einen Mirror über die gefilterten Platten. Filter wählen Geräte über udev-Eigenschaften: bei Platten etwa DEVNAME, ID_SERIAL_SHORT, ID_WWN, ID_MODEL und ID_SERIAL, bei Netzwerkkarten etwa ID_NET_NAME und ID_NET_NAME_MAC. Zulässig sind die Platzhalter * und ? sowie Bereiche wie [0-9]. Mit filter-match = "all" müssen alle Bedingungen zutreffen, mit any genügt eine.
Die Installation überschreibt die ausgewählten Zielplatten. Deshalb vorhandene Daten sichern und Platte sowie Verkabelung gegen das Inventar prüfen. Gerätenamen wie sda nicht ungeprüft zwischen Maschinen übernehmen. Für Filter und zulässige Netzwerkfelder das Auto-Install-Verfahren des gewählten ISO-Stands verwenden; keine anderen Platten zur Probe auswählen.
3. Datei validieren und ISO erzeugen
Nach Anpassung und Sicherung der Antwortdatei auf dem Vorbereitungsrechner ausführen, nicht als Installationsbefehl auf einem laufenden Produktivhost:
proxmox-auto-install-assistant validate-answer answer.toml
proxmox-auto-install-assistant prepare-iso ./proxmox-ve.iso --fetch-from iso --answer-file ./answer.toml
Für die Plattenauswahl helfen drei weitere Unterbefehle:
proxmox-auto-install-assistant device-info -t disk
proxmox-auto-install-assistant device-info -t network
proxmox-auto-install-assistant device-match disk ID_SERIAL='REPLACE_WITH_SERIAL*'
device-info zeigt die udev-Eigenschaften der Geräte des Systems, auf dem der Befehl läuft. Für Filter müssen sie deshalb auf dem Zielsystem oder auf gleichartiger Hardware ermittelt werden. device-match zeigt, welche Geräte ein Filter trifft. Mit inspect-iso lässt sich eine vorbereitete ISO-Datei prüfen; sensible Werte bleiben ohne --show-sensitive ausgeblendet.
Syntax und Optionen folgen dem Assistenten. Die lokal installierte Version mit --help abgleichen. Der Name des erzeugten ISO wird vom Werkzeug ausgegeben. Validierung ersetzt keine Prüfung der Zielhardware.
Antwortdatei und erzeugtes ISO als vertraulich behandeln. Zugangsdaten nicht ins Repository oder in öffentliche Downloadbereiche legen. Für HTTP-Bereitstellung Hostzuordnung, Zugriff und Zertifikatsprüfung separat entwerfen; das ISO-Beispiel konfiguriert keinen Antwortserver.
4. Installation und Erststart prüfen
Zuerst in einer entbehrlichen Testumgebung den gesamten Weg einschließlich Plattenauswahl prüfen. Erst danach mit bestätigtem Inventar vom vorbereiteten Medium starten. Ein automatischer Boot ist keine nachträgliche Bestätigung des Installationsziels.
Nach dem Neustart Management-Zugriff, FQDN, Adressen, DNS, Zeit, Storage und Boot ohne Installationsmedium prüfen. Repository und Updates folgen dem Installationsguide. Clusterbeitritt und Cluster-Netz brauchen eine eigene Planung. Für die nächste Ebene folgt VM erstellen.
Nacharbeiten lassen sich beim ersten Start automatisieren: --on-first-boot bettet ein Skript in das ISO ein, alternativ lädt [first-boot] mit source = "from-url" eines nach. ordering legt fest, ob es vor dem Netzwerk, bei erreichtem Netzwerk oder nach vollständigem Start läuft. Ein [post-installation-webhook] meldet das Ende der Installation an eine URL. Skripte sind wie die Antwortdatei zu behandeln: versioniert ablegen, vor dem Einsatz lesen und keine Zugangsdaten im Klartext einbetten.
Fehler und Grenzen
| Beobachtung | Prüfung |
|---|---|
| Antwort wird abgewiesen | TOML und Schema mit dem passenden Assistenten validieren |
| HTTP-Antwort fehlt | POST-Verarbeitung, Netzwerk und Zuordnung des Hosts prüfen |
| Falsche oder mehrere Platten passen | Installation stoppen, Inventar und Auswahl korrigieren |
| Filter trifft keine oder falsche Geräte | Eigenschaften mit device-info auf dem Zielsystem lesen, Filter mit device-match prüfen |
| Netzwerkkarte oder Adresse falsch | Netzwerkfilter und Schnittstellenzuordnung gegen das Inventar prüfen |
| Host nach Reboot nicht erreichbar | Lokale Konsole, Netzkonfiguration, DNS und Uplink prüfen |
Proxmox-Setup durch WZ-IT verbindet den Hostaufbau mit Storage, Netzwerk und Dokumentation. Die Installation allein definiert noch kein Betriebsmodell.










