persistent data storage for docker containers by andre moruga

14
Virtuozzo Persistent Storage for Docker Andre Moruga Director of Program Management, Virtuozzo @VirtuozzoInc

Upload: docker-inc

Post on 15-Apr-2017

386 views

Category:

Technology


2 download

TRANSCRIPT

Page 1: Persistent Data Storage for Docker Containers by Andre Moruga

Virtuozzo Persistent Storage for Docker

Andre MorugaDirector of Program Management, Virtuozzo@VirtuozzoInc

Page 2: Persistent Data Storage for Docker Containers by Andre Moruga

Docker and persistent storage

• Why go persistentfrom test toproduction?

• Available options

Agenda

State-of-the-art and future development

• Developing for Docker• Storage in Kubernetes

Virtuozzo Storage for Docker

• Solution overview and benefits

• Performance

Page 3: Persistent Data Storage for Docker Containers by Andre Moruga

Persistent Storage in Docker: Why and How?

Page 4: Persistent Data Storage for Docker Containers by Andre Moruga

Persistent Storage in Docker

• “Cattle” vs “Pets”• Persistent data for “Cattle”

containers• Storing persistent data in

Docker

Copyright © 2016 Virtuozzo. All Rights Reserved. 4

Page 5: Persistent Data Storage for Docker Containers by Andre Moruga

5Copyright © 2016 Virtuozzo. All Right Reserved.

What You Need to Know About Docker Volume

Docker Volume: a directory with persistent data in an ephemeral container

• Long lived

• Attaches to a container on start

• Can be initialized with initial content

And why you should care

/

/etc

Container

Volume

/bin

/usr

/var

/data

Page 6: Persistent Data Storage for Docker Containers by Andre Moruga

6Copyright © 2016 Virtuozzo. All Right Reserved.

Docker Volumes in Production

Native Docker volumes:•Coupled with physical servers•Hard to manage•Mostly for testing and

development•Better options are available via

plugin extensions

Basics won’t do the job

Page 7: Persistent Data Storage for Docker Containers by Andre Moruga

Docker Volume Plugins 101

Docker Volume plugin:externally stored and managed Docker volumes

• Available since Docker 1.8• Simple to leverage• Simple to implement• Many plugins are available

Copyright © 2016 Virtuozzo. All Rights Reserved. 7

Page 8: Persistent Data Storage for Docker Containers by Andre Moruga

8Copyright © 2016 Virtuozzo. All Right Reserved.

Developing Docker Volume Plugin

Things change rapidly• Changes of APIs/semantics during Q1 of 2016• From 9 plugins in January to 18 in June of 2016

Room for improvement• “Globally available” volumes are not (yet) recognized by Swarm• Very little storage management exposed via Docker, Swarm or UCP

(no resize, snapshot, clone, QoS)• No way to define volume availability boundaries in Compose

Our experience

Page 9: Persistent Data Storage for Docker Containers by Andre Moruga

Persistent Storage in Kubernetes

Kubernetes storage driver implementation

• Unique plugin system• Shares pod’s lifetime• About a dozen of plugins available• Standard storages supported• Native Virtuozzo storage/Kubernetes plugin is in

development

Copyright © 2016 Virtuozzo. All Rights Reserved. 9

Page 10: Persistent Data Storage for Docker Containers by Andre Moruga

10Copyright © 2016 Virtuozzo. All Right Reserved.

Virtuozzo Storage for Docker

• Originally built for system containers

• Software-defined storage

• Combines compute and storage

• Focus on multi-tenant performance

• Scalable to hundredsof nodes and PBs of data

The prefect match

Page 11: Persistent Data Storage for Docker Containers by Andre Moruga

11Copyright © 2016 Virtuozzo. All Right Reserved.

Features and Benefits

Features• Redundant and highly available• SSD cache• Hot/Cold data tiered• Flexible redundancy • Auto-balancing

Benefits• Works on commodity hardware• Converged platform: increase both storage and compute

capacity simultaneously• Block, File, Object (S3) storage• Put idle drives at work • Fast replication/self-healing times

of Virtuozzo Storage

Page 12: Persistent Data Storage for Docker Containers by Andre Moruga

Virtuozzo Storage Performance

Optimized for a multi-tenant, multi-user environment

• Great performance for random IO• Up to 15x faster than alternatives• Scales linearly as clusters grows• Automatically (re)-balances data

Copyright © 2016 Virtuozzo. All Rights Reserved. 12

Page 13: Persistent Data Storage for Docker Containers by Andre Moruga

• Visit Virtuozzo at booth S28• Download Virtuozzo Storage for Docker at

https://virtuozzo.com/docker-storage/• Check out our performance comparison

https://goo.gl/IozPSW• Developer? Our Docker Volume plugin is at

https://github.com/virtuozzo/docker-volume-ploop

Sound interesting?

Page 14: Persistent Data Storage for Docker Containers by Andre Moruga

Thank you.Virtuozzo Booth S28