Unikraft: Fast, Specialized Unikernels the Easy Way
Unikraft is a project focused on building fast, specialized unikernels that are easy to construct and operate, requiring minimal application porting while delivering exceptional performance. It aims for low memory usage and high density, enabling multiple instances to run on a single server, with significant improvements in boot times and request handling. Unikraft features a fully modular design, robust security measures, and compatibility with various applications, featuring around 160 syscalls thus far.
Introduction of Unikraft as a specialized unikernel solution emphasizing high performance and easy deployment.
Details on unikernels' modular design and significant performance advantages compared to traditional OS, including low memory usage and fast operation.
Outlines the key design principles of Unikraft focusing on modular architecture and specialized APIs for enhanced performance.
Strategies for integrating Unikraft with Kubernetes and Prometheus for streamlined deployment and monitoring.
Exploration of POSIX compatibility approaches in Unikraft and methods to facilitate easy application porting.
Comparison of syscall support between Unikraft and Linux, highlighting support of popular applications and resilience.
Summary of performance metrics for Unikraft, including boot times, memory requirements, and throughput capabilities.
Final remarks on Unikraft's advancements and resources available for further exploration.
Unikernels = SpecializedVirtual Machines
GOALS
• Easy to build and run
• Easy or no app porting
• Great performance
4.
Unikernel Power
▌Fast start/stop/migrationtimes
● 10s of milliseconds or less (and as little as 2.3ms)
REFS: LigthVM [Manco SOSP 2017], Jitsu [Madhvapeddy, NSDI 2015]
▌Low memory footprint
● Few MBs of RAM or less
REFS: ClickOS [Martins NSDI 2014], Unikraft [Kuenzer, Eurosys 2021. Best Paper Award]
▌High density
● 8k guests on a singlex86 server
REFS: LigthVM [Manco SOSP 2017]
▌High Performance
● ~300K reqs/sec nginx with a single guest CPU
REFS: Unikraft [Kuenzer, Eurosys 2021. Best Paper Award], Elastic CDNs [Kuenzer VEE 2017]
▌Security Features
● Small trusted compute base
● Strong isolation by hypervisor
● Per-library isolation
REFS: FlexOS [Lefeuvre HotOS 2021], CubicleOS [Sartakov ASPLOS 2021])
5.
Unikernels in OneSlide
Web server
General Purpose OS (e.g., Linux)
3rd
party
libraries
OS
libraries
OS
kernel
Web server
Unikernel
Lots of devel time!
Doing it withexisting unikernels?
(1) Require significant expert work to build
(2) They are often non-POSIX compliant
(3) The (uni)kernels are still monolithic
Unikraft is built from scratch (with borrowing)
Unikraft: Fast, SpecializedUnikernels the Easy Way
P99 Conf, October 6-7 2021
Simon Kuenzer
Sharan Santhanam
Cyril Soldani
Costi Răducanu
Răzvan Deaconescu
Vlad-Andrei Bădoiu
Alexander Jung
Costin Lupu
Cristian Banu
Costin Raiciu
Hugo Lefeuvre
Gaulthier Gain
Stefan Teodorescu
Laurent Mathy
Felipe Huici
36.
Brought to youby
Info: https://unikraft.org/
Code: https://github.com/unikraft
High performance POSIX unikernels are now a reality!