The document discusses containerizing MPI workloads using Docker and QNIBTerminal. It provides an overview of Docker, describes the QNIBTerminal testbed which runs an HPCG benchmark on multiple Linux distributions within Docker containers, and presents results showing a low performance overhead for containerized workloads compared to bare metal. Future work is discussed around optimizing containers for HPC and benchmarking real-world applications.
5. Docker in a Nutshell
• Builds on-top LinuX Containers (LXC)
• Kernel namespaces (isolation)
• cgroups (resource mgmt)
5
• (chroot on steroids)2
6. Docker in a Nutshell
• intuitive build system
6
• (chroot on steroids)2
• Builds on-top LinuX Containers (LXC)
• Kernel namespaces (isolation)
• cgroups (resource mgmt)
7. Docker in a Nutshell
• intuitive build system
• public repositories
• RedHat backing
7
• (chroot on steroids)2
• Builds on-top LinuX Containers (LXC)
• Kernel namespaces (isolation)
• cgroups (resource mgmt)
8. Traditional vs. Lightweight
Layers
8
SERVICE SERVICE
Userland (OS) Userland (OS) Userland (OS)
KERNEL KERNEL
HYPERVISOR
HOST KERNEL
SERVER
SERVICE
KERNEL
Userland (OS)
SERVICE SERVICE
Userland (OS) Userland (OS) Userland (OS)
HOST KERNEL
SERVER
SERVICE
Userland (OS)
Traditional Virtualisation Containerisation
IB
IB
9. Rocket ‚Docker‘
• 2013-01-18 First commit
• 2013-02-01 First online demo
• 2013-03-21 Demo at PyCon US
• 2013-03-23 Version 0.1
• 2013-03-26 Repository on github.com created
• 2013-04-23 Version 0.2
• 2013-05-06 Version 0.3
• 2013-06-03 Version 0.4
• 2013-06-25 Joining Linux Foundation
• 2013-07-18 Version 0.5 (top, mount)
• 2013-08-23 Version 0.6 (-privileged, LXC conf)
• 2013-09-09 Collaboration with Red Hat
• 2013-10-29 Foundation of Docker Inc.
• 2013-11-26 Version 0.7
9
• 2014-01-21 Docker Inc. raised $15M
• 2014-02-04 Version 0.8 (MacOSX, btrfs exp., ONBUILD)
• 2014-03-10 Version 0.9 (exec driver, libcontainer)
• 2014-06-09 Version 1.0 (PROD, pause, XFS, COPY)
• 2014-06-09 official repos, public repository
• 2014-06-09 enterprise support, training, consulting
• 2014-07-03 Version 1.1 (.dockerignore, mount „/“)
• 2014-08-22 Version 1.2 (-restart, caps , rw /etc/hosts)
• 2014-09-16 Docker Inc. raised $40M
• 2014-09-16 Microsoft teams up with Docker Inc.
• 2014-10-16 Version 1.3 (signed img, proc injection, …)