Das Internet spuckt zu einer Suchanfrage mit dem Term "Container versus VM" Dutzende von Artikeln zu verschiedenen Aspekten dieses Themas aus. Ein großer Teil davon dreht sich um Benchmarks von virtuellen Maschinen und Containern, die sich auf stationäre Workloads beschränken. Das bedeutet, dass die Systeme nicht von Host zu Host migrieren, sondern ihren gesamten Lebenszyklus auf einer einzelnen Maschine verbringen. Zudem treten während des Benchmark-Verfahrens im Allgemeinen nur wenige Start- und Shutdown-Prozesse auf.
Die Untersuchung "A Performance Survey of Lightweight Virtualization Techniques" [1] geht neben klassischen Containern und virtuellen Maschinen auch auf das Konzept des Unikernels ein. Dieser steht zwar momentan nicht im Interesse der IT-Abteilungen und der Forschung, könnte in Zukunft aber wie beispielsweise bei KATA zu einem interessanten Thema werden. Lobenswert ist an der Arbeit auch, dass die Autoren eine Tabelle anderer Studien beifügen, die noch tiefergehende Performance-Analysen anbietet.
Hinter dem in Unikernel-Systemen wie Rumprun, OSv oder MirageOS implementierten Design steckt der Gedanke, dass das Betriebssystem nur noch Multiplexing-Features und grundlegende Taskverwaltung liefert. Hardwareunterstützung und so weiter muss der Entwickler über Bibliotheken bereitstellen, die er in seiner Applikation ausliefert. Für den Administrator ist diese Vorgehensweise bequem, denn die Ausführungsumgebung, die die einzelnen Unikernel-Module als Payload benutzt, besteht aus einem Hypervisor. Unterm Strich stellt die Untersuchung fest, dass Docker die mit Abstand beste Performance in Bezug auf die Startzeit liefert. Unikernel-basierte Systeme waren rund um den Faktor zehn langsamer, während virtuelle Maschinen im Jahr 2017 sogar um den Faktor 100 langsamer ausfielen.
Interessant ist dabei allerdings die
...Der komplette Artikel ist nur für Abonnenten des ADMIN Archiv-Abos verfügbar.