A Performance Survey of Lightweight Virtualization Techniques

The increasing prevalence of the microservice paradigm creates a new demand for low-overhead virtualization techniques. Complementing containerization, unikernels are emerging as alternative approaches. With both techniques undergoing rapid improvements, the current landscape of lightweight virtualization approaches presents a confusing scenery, complicating the task of choosing a suited technology for an intended purpose. This work provides a comprehensive performance comparison covering containers, unikernels, whole-system virtualization, native hardware, and combinations thereof. Representing common workloads in microservice-based applications, we assess application performance using HTTP servers and a key-value store. With the microservice deployment paradigm in mind, we evaluate further characteristics such as startup time, image size, network latency, and memory footprint.

[1]  Don Marti,et al.  OSv - Optimizing the Operating System for Virtual Machines , 2014, USENIX Annual Technical Conference.

[2]  Antti Kantee The Rise and Fall of the Operating System , 2015, login Usenix Mag..

[3]  Antti Kantee,et al.  Flexible Operating System Internals: The Design and Implementation of the Anykernel and Rump Kernels , 2012 .

[4]  Jeremy Kepner,et al.  Scalability of VM provisioning systems , 2016, 2016 IEEE High Performance Extreme Computing Conference (HPEC).

[5]  Eric Eide,et al.  A Performance Evaluation of Unikernels ∗ , 2014 .

[6]  César A. F. De Rose,et al.  Performance Evaluation of Container-Based Virtualization for High Performance Computing Environments , 2013, 2013 21st Euromicro International Conference on Parallel, Distributed, and Network-Based Processing.

[7]  Jon Crowcroft,et al.  Jitsu: Just-In-Time Summoning of Unikernels , 2015, NSDI.

[8]  Dawson R. Engler,et al.  Exokernel: an operating system architecture for application-level resource management , 1995, SOSP.

[9]  Pablo Prieto,et al.  The impact of Docker containers on the performance of genomic pipelines , 2015, PeerJ.

[10]  Andreas Polze,et al.  A Performance Evaluation of Lightweight Approaches to Virtualization , 2017 .

[11]  Gorka Irazoqui Apecechea,et al.  Wait a Minute! A fast, Cross-VM Attack on AES , 2014, RAID.

[12]  Edward David Moreno,et al.  Performance Analysis of LXC for HPC Environments , 2015, 2015 Ninth International Conference on Complex, Intelligent, and Software Intensive Systems.

[13]  Ramakrishnan Rajamony,et al.  An updated performance comparison of virtual machines and Linux containers , 2015, 2015 IEEE International Symposium on Performance Analysis of Systems and Software (ISPASS).

[14]  Roberto Bifulco,et al.  ClickOS and the Art of Network Function Virtualization , 2014, NSDI.

[15]  Nathan Regola,et al.  Recommendations for Virtualization Technologies in High Performance Computing , 2010, 2010 IEEE Second International Conference on Cloud Computing Technology and Science.

[16]  Jon Crowcroft,et al.  Unikernels: library operating systems for the cloud , 2013, ASPLOS '13.

[17]  Bryan Veal,et al.  Performance scalability of a multi-core web server , 2007, ANCS '07.

[18]  David J. Scott,et al.  Unikernels: the rise of the virtual library operating system , 2013, CACM.

[19]  Ming Mao,et al.  A Performance Study on the VM Startup Time in the Cloud , 2012, 2012 IEEE Fifth International Conference on Cloud Computing.