Top Banner
What drives Docker in Non-HPC? ISC2016 - Linux Container Workshop
27

What drives Docker in Non-HPC? - QNIBqnib.org/data/isc2016/2_docker_drivers.pdf · 1. Docker SWARM Simple to grasp extends and builds on Docker API 2. Datacenter Orchestration Derived

May 20, 2020

Download

Documents

dariahiddleston
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: What drives Docker in Non-HPC? - QNIBqnib.org/data/isc2016/2_docker_drivers.pdf · 1. Docker SWARM Simple to grasp extends and builds on Docker API 2. Datacenter Orchestration Derived

What drives Dockerin Non-HPC?

ISC2016 - Linux Container Workshop

Page 2: What drives Docker in Non-HPC? - QNIBqnib.org/data/isc2016/2_docker_drivers.pdf · 1. Docker SWARM Simple to grasp extends and builds on Docker API 2. Datacenter Orchestration Derived

2

Docker Momentum

Software DevD

atac

ente

r Ops

IT Tinkering (Hello World)

Continuous Dev/Int/Dep

Microservices, hyper scale

Big Data

High Performance Computing

HPC

Disclaimer: subjective exaggeration

Page 3: What drives Docker in Non-HPC? - QNIBqnib.org/data/isc2016/2_docker_drivers.pdf · 1. Docker SWARM Simple to grasp extends and builds on Docker API 2. Datacenter Orchestration Derived

Spinning up production-like environment is great MongoDB, PostreSQL, memcached as separate containers

python2.7, python3.4

3

Docker in Software Development

Like python’s virtualenv on steroids, iteration speedup through reproducibility

Page 4: What drives Docker in Non-HPC? - QNIBqnib.org/data/isc2016/2_docker_drivers.pdf · 1. Docker SWARM Simple to grasp extends and builds on Docker API 2. Datacenter Orchestration Derived

Spinning up production-like environment is… …not that easy

focus more on engineer/scientist, not the software-developer

1. For development it might work close to non-HPC software dev

2. But is that the iteration-focus? rather job settings / input data?

4

Docker in HPC development

Page 5: What drives Docker in Non-HPC? - QNIBqnib.org/data/isc2016/2_docker_drivers.pdf · 1. Docker SWARM Simple to grasp extends and builds on Docker API 2. Datacenter Orchestration Derived

Split input iteration / development from operation non-distributed stays vanilla

transition to HPC cluster using tech to foster operation

5

Separation of Concerns?

Input/Dev

Page 6: What drives Docker in Non-HPC? - QNIBqnib.org/data/isc2016/2_docker_drivers.pdf · 1. Docker SWARM Simple to grasp extends and builds on Docker API 2. Datacenter Orchestration Derived

Orchestration

Page 7: What drives Docker in Non-HPC? - QNIBqnib.org/data/isc2016/2_docker_drivers.pdf · 1. Docker SWARM Simple to grasp extends and builds on Docker API 2. Datacenter Orchestration Derived

… not Workloads BigData crunching (batch processing) is more in HPC camp

where Stream-Processing (Spark, Storm, Kafka Stream) is service again

1. High Performance Big Data Hardware vendor supply performance, but does the stack change?

2. Bio-science (other fast iterating disciplines) repeatability by packaging via Container

7

Non-HPC is about Services

Page 8: What drives Docker in Non-HPC? - QNIBqnib.org/data/isc2016/2_docker_drivers.pdf · 1. Docker SWARM Simple to grasp extends and builds on Docker API 2. Datacenter Orchestration Derived

1. Workload Scheduler single host SLURM jobs are low-hanging fruit

complex for distributed workloads (how to spawn remote tasks?)

2. Simple Queue-System RabbitMQ, ZeroMQ, Redis

3. Data-Driven Computational Pipelines E.g.

8

Batch Systems

Page 9: What drives Docker in Non-HPC? - QNIBqnib.org/data/isc2016/2_docker_drivers.pdf · 1. Docker SWARM Simple to grasp extends and builds on Docker API 2. Datacenter Orchestration Derived

1. Docker SWARM Simple to grasp

extends and builds on Docker API

2. Datacenter Orchestration Derived from DC operational need of Google (Kubernetes)

…academic project from Berkeley. (Mesos)

9

Service Orchestration

Page 10: What drives Docker in Non-HPC? - QNIBqnib.org/data/isc2016/2_docker_drivers.pdf · 1. Docker SWARM Simple to grasp extends and builds on Docker API 2. Datacenter Orchestration Derived

Integration

Page 11: What drives Docker in Non-HPC? - QNIBqnib.org/data/isc2016/2_docker_drivers.pdf · 1. Docker SWARM Simple to grasp extends and builds on Docker API 2. Datacenter Orchestration Derived

1. When disrupting a piece everyone throws in his wish-list

describes the current state as desired state

some resist change

2. With Container in particular VMs were easy to align with physical machine world

Containers break this model

11

The Social/Shrink Part

Page 12: What drives Docker in Non-HPC? - QNIBqnib.org/data/isc2016/2_docker_drivers.pdf · 1. Docker SWARM Simple to grasp extends and builds on Docker API 2. Datacenter Orchestration Derived

1. With AWS EC2… IT departments waved with the CreditCard as a threat

it was easy to try something at scale

2. With Containers no-one is going to tolerate complex setup procedures

‘works on my laptop’ is going to be extinct

3. With Unikernels/AWS Lambda ms spin-up redefines state-less… (but that’s for next time)

12

The Social/Shrink Part #2

Page 13: What drives Docker in Non-HPC? - QNIBqnib.org/data/isc2016/2_docker_drivers.pdf · 1. Docker SWARM Simple to grasp extends and builds on Docker API 2. Datacenter Orchestration Derived

Downscaling

Page 14: What drives Docker in Non-HPC? - QNIBqnib.org/data/isc2016/2_docker_drivers.pdf · 1. Docker SWARM Simple to grasp extends and builds on Docker API 2. Datacenter Orchestration Derived

1. Work on ProjectX Spin up (minimalistic) dependency stack

should reside within ProjectX

only change the code of ProjectX

2. Possible in HPC? Are HPC stacks reducible to laptop-consumable size?

14

‘Bottom up’-Stack

Page 15: What drives Docker in Non-HPC? - QNIBqnib.org/data/isc2016/2_docker_drivers.pdf · 1. Docker SWARM Simple to grasp extends and builds on Docker API 2. Datacenter Orchestration Derived

Docker 1.12

Page 16: What drives Docker in Non-HPC? - QNIBqnib.org/data/isc2016/2_docker_drivers.pdf · 1. Docker SWARM Simple to grasp extends and builds on Docker API 2. Datacenter Orchestration Derived

16

Docker-Engine 1.12 [SWARM]

SWARM now included docker-engines are either manager/worker

they form a SWARM cluster

no external Key/Value store needed anymore

Page 17: What drives Docker in Non-HPC? - QNIBqnib.org/data/isc2016/2_docker_drivers.pdf · 1. Docker SWARM Simple to grasp extends and builds on Docker API 2. Datacenter Orchestration Derived

docker service stacks are bundled as services

health-checks (!), self-healing, rolling-update, canary deployment

17

Docker-Engine 1.12 [Services]

Page 18: What drives Docker in Non-HPC? - QNIBqnib.org/data/isc2016/2_docker_drivers.pdf · 1. Docker SWARM Simple to grasp extends and builds on Docker API 2. Datacenter Orchestration Derived

build-in (but swappable) TLS all traffic encrypted

18

Docker-Engine 1.12 [TLS]

Page 19: What drives Docker in Non-HPC? - QNIBqnib.org/data/isc2016/2_docker_drivers.pdf · 1. Docker SWARM Simple to grasp extends and builds on Docker API 2. Datacenter Orchestration Derived

Build in Load-Balancer services are load-balanced by default

19

Docker-Engine 1.12 [MeshNet]

Page 20: What drives Docker in Non-HPC? - QNIBqnib.org/data/isc2016/2_docker_drivers.pdf · 1. Docker SWARM Simple to grasp extends and builds on Docker API 2. Datacenter Orchestration Derived

1. You guys don’t scream loud enough Feature-wise they target us cloud guys. :)

2. OK, not true… HP-Big Data could employ the service model for their workloads

it’s more service deployment then distributed workload-deployment (MPI)

20

Docker-Engine 1.12 [HPC]

Page 21: What drives Docker in Non-HPC? - QNIBqnib.org/data/isc2016/2_docker_drivers.pdf · 1. Docker SWARM Simple to grasp extends and builds on Docker API 2. Datacenter Orchestration Derived

Chunk Systems Up

Page 22: What drives Docker in Non-HPC? - QNIBqnib.org/data/isc2016/2_docker_drivers.pdf · 1. Docker SWARM Simple to grasp extends and builds on Docker API 2. Datacenter Orchestration Derived

22

Reminder VMs / System Containers

supervisordsyslog

mail

collectd

<payload>

Userland(OS)

supervisordsyslog

mail

collectd

<payload>

supervisordsyslog

mail

collectd

<payload>

Page 23: What drives Docker in Non-HPC? - QNIBqnib.org/data/isc2016/2_docker_drivers.pdf · 1. Docker SWARM Simple to grasp extends and builds on Docker API 2. Datacenter Orchestration Derived

Ideally the container runs one process ENTRYPOINT might be something to set up the inner working

no init-system needed

23

One Layer at a time

base

rsyslog monitoring

service (postgres)

backupbackup

Page 24: What drives Docker in Non-HPC? - QNIBqnib.org/data/isc2016/2_docker_drivers.pdf · 1. Docker SWARM Simple to grasp extends and builds on Docker API 2. Datacenter Orchestration Derived

User-Land Optimisation

Page 25: What drives Docker in Non-HPC? - QNIBqnib.org/data/isc2016/2_docker_drivers.pdf · 1. Docker SWARM Simple to grasp extends and builds on Docker API 2. Datacenter Orchestration Derived

Running OpenFOAM on small scale is cumbersome manually install OpenFOAM on a workstation

be confident that the installation works correctly

A containerised OpenFOAM installation tackles both

25

Reproducibility / Downscaling

http://qnib.org/immutablehttp://qnib.org/immutable-paper

Page 26: What drives Docker in Non-HPC? - QNIBqnib.org/data/isc2016/2_docker_drivers.pdf · 1. Docker SWARM Simple to grasp extends and builds on Docker API 2. Datacenter Orchestration Derived

26

OpenFOAM Benchmark

http://qnib.org/immutable

http://qnib.org/immutable-paper

Page 27: What drives Docker in Non-HPC? - QNIBqnib.org/data/isc2016/2_docker_drivers.pdf · 1. Docker SWARM Simple to grasp extends and builds on Docker API 2. Datacenter Orchestration Derived

27

MPI Benchmark

http://qnib.org/mpi

http://qnib.org/mpi-paper