Open Source 2019

Exhibition VM Controller

VM-Verwaltung für Ausstellungsumgebungen mit zentraler Steuerung und automatischer Planung.

Rolle: Entwickler

VirtualisierungKVMPythonMuseum

Über das Projekt

Framework zur Bewahrung und zum Betrieb historischer digitaler Kunstwerke in Museumsausstellungen. Entwickelt am ZKM | Zentrum für Kunst und Medien Karlsruhe, begegnet es technischer Obsoleszenz durch die Erhaltung von Legacy-Rechenumgebungen als virtuelle Maschinen mit automatischer Fehlerbehebung. Wenn eine VM abstürzt oder ein Kunstwerk hängt, setzt das System automatisch innerhalb von 2-5 Sekunden auf einen funktionierenden Snapshot zurück — damit der Ausstellungsbetrieb ohne Personaleingriff weiterläuft. Im Produktiveinsatz getestet über 6 Monate mit 12 gleichzeitigen VMs unter Windows XP, Legacy-Multimedia-Engines und Browser-basierten Kunstwerken mit obsoleten Rendering-Systemen.

Features

  • Automatische Wiederherstellung — erkennt Ausfälle über Heartbeat-Timeouts und QEMU-Agent-Monitoring, setzt dann innerhalb von Sekunden auf einen sauberen Snapshot-Zustand zurück
  • Modulare Gast-Skripte — spezialisierte Monitoring-Tools (AutoIT für Windows XP) für Heartbeat-Signaling, Idle-Erkennung und Prozess-Watchdog-Funktionalität
  • REST-API — Endpunkte für VM-Steuerung, Snapshot-Verwaltung, Heartbeat-Konfiguration und Gesundheitsstatus
  • Kiosk-Anzeige — Vollbild-Präsentation mit virt-viewer und automatischem Launcher-Start für unbeaufsichtigten Ausstellungsbetrieb
  • libvirt-Integration — QEMU/KVM-Virtualisierung auf Linux (Ubuntu 22.04, Debian 12), gesteuert über Python 3.10+ mit FastAPI