Wer auf Proxmox VE mehrere virtuelle Maschinen betreibt, steht früher oder später vor einer simplen Frage: In welcher Reihenfolge sollen die VMs nach einem Neustart des Hosts hochfahren? Startet der Reverse Proxy nach den Webdiensten, sind diese kurzzeitig nicht erreichbar. Startet das Monitoring vor den Applikationsdiensten, laufen die ersten Checks sofort auf Fehler. Mit der richtigen Konfiguration lässt sich das vermeiden.
Was Proxmox kann – und was nicht
Proxmox VE unterstützt keine echten Abhängigkeiten zwischen VMs. Es gibt keine Möglichkeit zu sagen: „Starte VM B erst, wenn VM A vollständig gebootet und erreichbar ist." Was Proxmox stattdessen bietet, ist eine einfache Startreihenfolge mit einem optionalen Verzögerungswert.
Das Prinzip:
- VMs werden in aufsteigender Reihenfolge des
order-Wertes gestartet - Zwischen den Starts wartet Proxmox den konfigurierten
up-Delay in Sekunden ab - Beim Herunterfahren wird die Reihenfolge umgekehrt
Das reicht für die meisten Szenarien aus – solange die Delay-Werte großzügig genug gewählt werden.
Die Konfigurationsparameter
Jede VM hat unter Options → Start/Shutdown Order drei relevante Felder:
| Parameter | Bedeutung |
|---|---|
order | Startreihenfolge – niedrigerer Wert startet früher |
up | Wartezeit in Sekunden, bevor die nächste VM angestoßen wird |
down | Timeout in Sekunden beim Herunterfahren |
Zusätzlich muss Start at boot (onboot) aktiviert sein, damit die Einstellungen beim Hochfahren des Hosts überhaupt greifen.
Per CLI sieht das so aus:
| |
Infrastruktur in Tiers einteilen
Der praktischste Ansatz ist es, die VMs in logische Startgruppen (Tiers) einzuteilen. Dienste, die von anderen abhängen, bekommen einen höheren order-Wert.
Beispielinfrastruktur
Angenommen, folgende VMs laufen auf dem Host:
| VMID | Name | Rolle |
|---|---|---|
| 100 | opnsense | Firewall / Gateway |
| 110 | proxymanager | Reverse Proxy (nginx Proxy Manager) |
| 111 | goauthentik | SSO / Authentifizierung |
| 112 | icinga | Monitoring |
| 113 | synapse | Matrix-Homeserver |
| 114 | mastodon | Fediverse / Social |
Die Startreihenfolge
Tier 1 – Netzwerk
Ohne Netzwerk läuft gar nichts. Die Firewall muss als erstes hochkommen:
| |
60 Sekunden Delay geben OPNsense genug Zeit, Routing-Tabellen und Firewall-Regeln zu initialisieren.
Tier 2 – Reverse Proxy
Ein häufiger Fehler: Den Reverse Proxy erst nach dem Auth-Dienst zu starten. Ohne Proxy ist aber keine einzige Webseite über HTTPS erreichbar – einschließlich der Login-Seite von Authentik selbst. Der Proxy kommt also vor allem anderen:
| |
Tier 3 – Authentifizierung / SSO
Erst wenn der Proxy läuft, kann Authentik über seine Domain angesprochen werden. Viele nachgelagerte Dienste nutzen Authentik als Login-Provider – deshalb muss es früh verfügbar sein:
| |
Tier 4 – Anwendungsdienste
Alle weiteren Dienste können dann gestaffelt folgen. Dienste ohne gegenseitige Abhängigkeiten bekommen denselben order-Wert:
| |
Tier 5 – Monitoring
Monitoring-Dienste wie Icinga kommen bewusst ans Ende der Startreihenfolge. Würden sie zu früh starten, würden sie sofort Fehler und Alarme für alle noch nicht laufenden Dienste produzieren. Wenn Icinga als letztes hochfährt, sind alle anderen VMs bereits erreichbar und die ersten Checks laufen sauber durch:
| |
Alles auf einmal mit einem Bash-Skript
Statt jede VM einzeln zu konfigurieren, lässt sich das bequem per Skript erledigen. Das Skript muss direkt auf dem Proxmox-Host als root ausgeführt werden:
| |
Konfiguration prüfen
Nach dem Ausführen lässt sich die Konfiguration einzelner VMs einfach verifizieren:
| |
Oder für einen Überblick über alle VMs auf einmal:
| |
Wichtige Hinweise
- Der
up-Delay ist keine Garantie. Proxmox wartet die angegebene Zeit ab, bevor die nächste VM angestoßen wird – nicht bis die aktuelle VM vollständig gebootet ist. Bei langsamen Diensten oder storage-intensiven VMs die Werte großzügig wählen. - Keine echten Abhängigkeiten. Wer wirklich sicherstellen will, dass Dienst A vollständig läuft, bevor Dienst B startet, braucht externe Lösungen – etwa systemd-Units auf den VMs selbst oder ein Ansible-Playbook nach dem Boot.
- Shutdown-Reihenfolge beachten. Beim Herunterfahren kehrt Proxmox die Reihenfolge automatisch um. Der Proxy fährt also als letztes herunter – das ist in der Regel gewünscht.
- Gleiche
order-Werte sind erlaubt. VMs mit demselbenorder-Wert werden gleichzeitig angestoßen. Das ist nützlich für unabhängige Dienste, die parallel starten können.
Fazit
Die Boot-Order in Proxmox ist kein komplexes Feature, aber mit der richtigen Tier-Einteilung lässt sich eine stabile Startreihenfolge erreichen, die unnötige Fehler beim Hochfahren des Hosts vermeidet. Die wichtigste Regel: Netzwerk → Proxy → Auth → Anwendungen → Monitoring. Wer das als Skript pflegt, hat die Konfiguration versionierbar und jederzeit reproduzierbar.