Evaluating Docker storage performance: from workloads to graph drivers

Containers are a widely successful technology today popularized by Docker. They improve system utilization by increasing workload density and enable seamless deployment of workloads across development, test, and production environments. Docker’s unique approach to data management, which involves frequent snapshot creation and removal, presents a new set of exciting challenges for storage systems. At the same time, storage management for Docker containers has remained largely unexplored with a dizzying array of solution choices and configuration options. In this paper we unravel the multi-faceted nature of Docker storage and demonstrate its impact on system and workload performance. As we uncover new properties of the popular Docker storage drivers, this is a sobering reminder that widespread use of new technologies can often precede their careful evaluation.

[1]  Richard P. Spillane,et al.  Exo-clones: Better Container Runtime Image Management across the Clouds , 2016, HotStorage.

[2]  Michael A. Bender,et al.  BetrFS: Write-Optimization in a Kernel File System , 2015, ACM Trans. Storage.

[3]  Mark Lamourine Storage Options for Software Containers , 2015, login Usenix Mag..

[4]  Lucas Chaufournier,et al.  Containers and Virtual Machines at Scale: A Comparative Study , 2016, Middleware.

[5]  Val Henson,et al.  The Zettabyte File System , 2003 .

[6]  Tridib Mukherjee,et al.  SCoPe: A Decision System for Large Scale Container Provisioning Management , 2016, 2016 IEEE 9th International Conference on Cloud Computing (CLOUD).

[7]  Michael A. Bender,et al.  BetrFS: A Right-Optimized Write-Optimized File System , 2015, FAST.

[8]  Tridib Mukherjee,et al.  CoMICon: A Co-Operative Management System for Docker Container Images , 2017, 2017 IEEE International Conference on Cloud Engineering (IC2E).

[9]  Erez Zadok,et al.  Filebench: A Flexible Framework for File System Benchmarking , 2016, login Usenix Mag..

[10]  Song Jiang,et al.  TotalCOW: Unleash the Power of Copy-On-Write for Thin-provisioned Containers , 2015, APSys.

[11]  Josef Bacik,et al.  BTRFS: The Linux B-Tree Filesystem , 2013, TOS.

[12]  Eric W. Biederman,et al.  Multiple Instances of the Global Linux Namespaces , 2010 .

[13]  Vasily Tarasov,et al.  A fast and slippery slope for file systems , 2015, INFLOW '15.

[14]  Lisa Gerhardt,et al.  Shifter: Containers for HPC , 2017 .

[15]  Andrea C. Arpaci-Dusseau,et al.  Slacker: Fast Distribution with Lazy Docker Containers , 2016, FAST.

[16]  Raju Rangaswami,et al.  Non-blocking Writes to Files , 2015, FAST.