Updates & Wartung
Updates im Pterodactyl-Ökosystem betreffen mehrere technische Ebenen gleichzeitig: Panel, Wings, Docker Images, Eggs sowie das zugrunde liegende Host-Betriebssystem.
Unkoordinierte oder ungetestete Updates gehören zu den häufigsten Ursachen für vollständige Plattformausfälle, Dateninkonsistenzen und API-Inkompatibilitäten.
Diese Seite beschreibt einen produktionsreifen Update- und Wartungsprozess inklusive Pre-Checks, SSH-Kommandos, Migrationsstrategie und Rollback.
1. Update-Ebenen im Überblick
- Pterodactyl Panel (Control Plane)
- Wings (Node-Daemon)
- Eggs (Runtime-Definitionen)
- Docker Images (Runtimes)
- Host-System (Kernel, Docker, OS)
Jede Ebene besitzt ein eigenes Risikoprofil und darf niemals isoliert aktualisiert werden.
2. Panel-Updates (Control Plane)
2.1 Technische Charakteristik
- Datenbank-Migrationen (Schema & Indizes)
- API-Änderungen (Clients & Wings)
- Abhängigkeit von PHP- und Composer-Versionen
Panel-Updates sind zustandsverändernde Eingriffe und niemals trivial.
2.2 Pre-Update-Checks (Pflicht)
- Aktuelle Version prüfen
- Changelog & Breaking Changes lesen
- Queue-Status prüfen
- Vollständiges Datenbank-Backup
php artisan --version
php artisan queue:status
2.3 Panel-Update (SSH)
cd /var/www/pterodactyl
php artisan down
curl -Lo panel.tar.gz https://github.com/pterodactyl/panel/releases/latest/download/panel.tar.gz
tar -xzf panel.tar.gz
composer install --no-dev --optimize-autoloader
php artisan migrate --seed --force
php artisan view:clear
php artisan config:clear
php artisan up
Hinweis: Ohne erfolgreiche Migration darf das Panel nicht wieder freigegeben werden.
3. Wings-Updates (Node-Daemon)
3.1 Technische Charakteristik
- Direkter Einfluss auf laufende Container
- Zwingende API-Kompatibilität zum Panel
Panel- und Wings-Versionen müssen zueinander passen.
3.2 Update-Reihenfolge (verbindlich)
- Panel zuerst
- Wings danach
Abweichungen führen zu API-Fehlern, Node-Offlines und nicht steuerbaren Serverzuständen.
3.3 Wings-Update (SSH)
systemctl stop wings
curl -L -o /usr/local/bin/wings \
https://github.com/pterodactyl/wings/releases/latest/download/wings_linux_amd64
chmod +x /usr/local/bin/wings
systemctl start wings
systemctl status wings
4. Egg-Updates (Runtime-Definitionen)
Egg-Updates verändern direkt:
- Startup Commands
- Environment-Variablen
- Installations-Skripte
Eggs sind Code und müssen wie Software behandelt werden.
4.1 Best Practices für Eggs
- Eigene Versionierung (z. B. v1, v2, v3)
- Keine automatischen Community-Updates
- Tests auf isolierten Servern
Ein ungeprüftes Egg kann Server unstartbar machen oder Daten beschädigen.
5. Docker Image Updates
5.1 Risiken
- Änderungen an Java / Node / SteamCMD
- Library-Updates brechen Mods
- Inkompatible Runtime-Versionen
Ein neues Image ist kein harmloses Update.
5.2 Update-Strategie
6. Host- & OS-Updates
Host-Updates betreffen:
- Kernel
- Docker Engine
- Filesysteme
Risiken:
- Kernel-Änderungen beeinflussen cgroups
- Docker-Updates ändern Default-Verhalten
Host-Updates sind Cluster-Operationen, keine Einzelaktionen.
7. Wartungsfenster & Betrieb
- Feste Wartungsfenster
- Vorab-Kommunikation an Kunden
- Rollback jederzeit möglich
Unangekündigte Updates zerstören Vertrauen und SLA-Grundlagen.
8. Rollback-Strategien
8.1 Panel
- Datenbank-Restore
- Code-Rollback
8.2 Wings
- Binary zurücktauschen
- Service neu starten
8.3 Eggs & Images
- Version zurücksetzen
- Container neu erzeugen
Rollback muss vor dem Update geplant sein, niemals danach.
9. Typische Update-Fehler
- Blindes Update ohne Changelog
- Kein Backup
- Eggs ungeprüft aktualisieren
- Panel und Wings asynchron
10. Best Practices (Venasty Systems Standard)
- Keine Auto-Updates im Produktivbetrieb
- Staging-Umgebung verpflichtend
- Backups vor jedem Update
- Versionierung auf allen Ebenen
- Dokumentierte Rollback-Prozesse
11. Fazit
Updates sind notwendige Wartungsarbeiten, aber niemals risikofrei.
Wer Updates als kontrollierten, reproduzierbaren Prozess behandelt, vermeidet Ausfälle, Datenverlust und Kundeneskalationen.
Venasty Systems betrachtet Update- und Wartungsmanagement als zentrale Betriebsdisziplin, nicht als Nebenaufgabe.