
Firecracker microVM
Firecracker microVM ist eine von Amazon entwickelte Technologie, die winzige, blitzschnell startende virtuelle Maschinen erzeugt. Sie bildet die unsichtbare Grundlage für Cloud-Dienste wie AWS Lambda, bei denen Tausende Nutzerfunktionen gleichzeitig und sicher voneinander getrennt laufen müssen.
Eine virtuelle Maschine ist ein Computerprogramm, das sich nach außen hin wie ein vollständiger, eigenständiger Computer verhält. Auf einem einzigen physischen Server können so Dutzende oder Hunderte solcher virtuellen Maschinen gleichzeitig laufen, ohne voneinander zu wissen. Firecracker microVM ist eine besonders schlanke Variante davon, entwickelt von Amazon und 2018 als Open-Source-Projekt veröffentlicht. Sie startet in unter 125 Millisekunden — schneller als ein Wimpernschlag — und belegt dabei so wenig Arbeitsspeicher, dass auf einem einzigen Server Tausende von ihnen gleichzeitig laufen können. Der Trick dabei: Firecracker lässt alles weg, was eine klassische virtuelle Maschine träge und schwer macht.
Warum Firecracker für Cloud-Dienste unverzichtbar ist
Viele moderne Cloud-Dienste funktionieren nach einem Prinzip namens Serverless Computing: Der Nutzer lädt ein kleines Programm hoch, und die Cloud führt es genau dann aus, wenn es gebraucht wird — für Millisekunden oder Sekunden, dann ist es vorbei. AWS Lambda ist der bekannteste Dienst dieser Art. Das Problem dabei: Jede Ausführung eines fremden Programms auf einem gemeinsamen Server ist ein Sicherheitsrisiko. Was, wenn der Code bösartig ist oder abstürzt?
Klassische virtuelle Maschinen lösen das Problem mit Isolation — aber sie brauchen Sekunden zum Starten und schlucken Gigabytes an Speicher. Container, eine leichtere Alternative, starten zwar schnell, bieten aber eine schwächere Trennung zwischen den laufenden Programmen. Firecracker trifft einen Mittelweg: die starke Isolation einer vollwertigen virtuellen Maschine, kombiniert mit der Startgeschwindigkeit und dem niedrigen Ressourcenverbrauch eines Containers. Für Anbieter wie Amazon ist das der Unterschied zwischen einem wirtschaftlich sinnvollen und einem unrentablen Dienst.
Wie Firecracker so schlank wird
Herkömmliche virtuelle Maschinen simulieren vollständige Hardware: Grafikkarten, USB-Anschlüsse, Soundkarten — das meiste davon braucht ein serverbasiertes Programm niemals. Firecracker simuliert nur eine Handvoll essenzieller Bauteile: Prozessor, Arbeitsspeicher, Netzwerkkarte und Speicher. Mehr nicht. Das reduziert die Angriffsfläche — also die Stellen, an denen ein Angreifer ins System einbrechen könnte — drastisch.
Firecracker läuft dabei direkt auf dem Linux-Kernel des Host-Servers und nutzt eine eingebaute Funktion namens KVM (Kernel-based Virtual Machine), die den Prozessor des Servers dazu bringt, Code einer virtuellen Maschine so auszuführen, als wäre es echter Hardware-Code. Das macht Firecracker schnell. Das Programm selbst ist in der Programmiersprache Rust geschrieben, die für ihre Speichersicherheit bekannt ist — ein weiterer Schutz gegen Fehler, die Sicherheitslücken öffnen könnten.
Jede Firecracker-Instanz läuft außerdem mit einem sogenannten Jailer — einem Wächter-Prozess, der ihr verbietet, auf Teile des Betriebssystems zuzugreifen, die sie nichts angehen. Eine microVM kann also selbst dann keinen Schaden anrichten, wenn der Code in ihr schadhaft ist.
Firecracker im Alltag: unsichtbar, aber allgegenwärtig
Wer AWS Lambda benutzt — etwa um automatisch Bilder zu verkleinern, wenn jemand ein Foto hochlädt — nutzt Firecracker, ohne es zu wissen. Auch AWS Fargate, ein Dienst zum Ausführen von Containern in der Cloud, setzt darauf. Firecracker ist in diesen Produkten vollständig verborgen; man sieht nur das Ergebnis.
In der Tech-Presse taucht Firecracker immer dann auf, wenn es um die Infrastruktur hinter KI-Diensten geht. Modelle wie Amazons eigene KI-Assistenten oder Drittanbieter, die ihre Sprachmodelle über AWS betreiben, brauchen genau die Eigenschaften, die Firecracker liefert: Tausende parallele, isolierte Ausführungsumgebungen, die sofort bereitstehen und nach Gebrauch verschwinden. Auch andere Cloudanbieter haben inzwischen ähnliche Technologien entwickelt — Firecracker gilt aber als Referenzpunkt für das gesamte Feld.
Weil Firecracker als Open-Source-Projekt frei verfügbar ist, bauen auch kleinere Unternehmen ihre eigene Infrastruktur darauf auf. Der Anbieter Fly.io etwa betreibt seinen gesamten Dienst zur weltweiten App-Ausführung auf Firecracker. Das ist ungewöhnlich: Eine Technologie, die für einen der weltgrößten Konzerne gebaut wurde, ist gleichzeitig für jeden frei nutzbar.