Data Focused Docker Clustering. Docker Hamburg

19
Docker Hamburg The upcoming talk will be presented in English

description

Handling persistent data with Docker using Flocker

Transcript of Data Focused Docker Clustering. Docker Hamburg

Page 1: Data Focused Docker Clustering. Docker Hamburg

Docker HamburgThe upcoming talk will be presented in English

Page 2: Data Focused Docker Clustering. Docker Hamburg

Data focused DockerclusteringMarcus Hughes

Page 3: Data Focused Docker Clustering. Docker Hamburg

What was HybridCluster?

• Full stack LAMP platform

• FreeBSD Chroot containers

• ZFS

• Auto scaling

• Failover

• “AwesomeProxy”

Page 4: Data Focused Docker Clustering. Docker Hamburg

Docker

• Containers!

• Application level containerisation

• Data in “volumes”

• Lack of data portability

Page 5: Data Focused Docker Clustering. Docker Hamburg

Docker containers are portable

Page 6: Data Focused Docker Clustering. Docker Hamburg

Introduction to Flocker

• Open source volume manager

• Multi-node “cluster”

• 0.1 Released on 13th August (0.2 due on 2nd)

Page 7: Data Focused Docker Clustering. Docker Hamburg

Flocker

Page 8: Data Focused Docker Clustering. Docker Hamburg

Proxy layer

• Moving an application can be disruptive

• Application port responds on any node

• Routes reconfigured on migration

Page 9: Data Focused Docker Clustering. Docker Hamburg

ZFS

• Similarities to Docker containers

• ZFS on Linux

• Resilient

• Continuous replication

Page 10: Data Focused Docker Clustering. Docker Hamburg

Migration

• Container stops

• Volumes (ZFS dataset) is sent

• Routes altered

• Container re-started on new host

0.2

• Incremental send

Page 11: Data Focused Docker Clustering. Docker Hamburg
Page 12: Data Focused Docker Clustering. Docker Hamburg

Application configuration

"version": 1

"applications":

"mongodb-volume-example":

"image": "clusterhq/mongodb"

"ports":

- "internal": 27017

"external": 27017

"volume":

"mountpoint": "/data/db"

Page 13: Data Focused Docker Clustering. Docker Hamburg

Deployment configuration

"version": 1

"nodes":

"172.16.255.250": ["mongodb-volume-example"]

"172.16.255.251": []

Page 14: Data Focused Docker Clustering. Docker Hamburg

Deployment configuration

flocker-deploy deployment.yml application.yml

Page 15: Data Focused Docker Clustering. Docker Hamburg

DemoLets see what these configuration files do!

Page 16: Data Focused Docker Clustering. Docker Hamburg

Real world uses

• Moving applications to production

• Replacing servers

• Scalability

Future

• Clone datasets

Page 17: Data Focused Docker Clustering. Docker Hamburg

The FutureIdeas from our past and possible directions

Page 18: Data Focused Docker Clustering. Docker Hamburg

Contribute!

• GitHub https://github.com/ClusterHQ/flocker

• Email [email protected]

Page 19: Data Focused Docker Clustering. Docker Hamburg

Questions?