Persistent storage tailored for containers

Docker, Inc.
Docker, Inc.Docker, Inc.
Persistent storage tailored for containers
Quentin “mefyl” Hocquet
mefyl@infinit.sh
CTO @ Infinit
Version 1.2-26-gbcb3c69
Plan
Containers and persistent storage
Infinit storage platform
Dive-in
Demo
Q&A
Containers and persistent storage
Containers are fast, scalable and flexible.
Containers and persistent storage
Containers are fast, scalable and flexible.
• Fast and easy to start and stop.
Containers and persistent storage
Containers are fast, scalable and flexible.
• Fast and easy to start and stop.
• Fast and easy to scale.
Containers and persistent storage
Containers are fast, scalable and flexible.
• Fast and easy to start and stop.
• Fast and easy to scale.
• Unified from development to production.
Containers and persistent storage
Containers are fast, scalable and flexible.
• Fast and easy to start and stop.
• Fast and easy to scale.
• Unified from development to production.
• Yet customizable for every situation.
Containers and persistent storage
Containers are fast, scalable and flexible.
• Fast and easy to start and stop.
• Fast and easy to scale.
• Unified from development to production.
• Yet customizable for every situation.
However containers tend to be stateless, which can be quite limiting. We need persistent storage for containers.
Containers and persistent storage
Containers are fast, scalable and flexible.
• Fast and easy to start and stop.
• Fast and easy to scale.
• Unified from development to production.
• Yet customizable for every situation.
However containers tend to be stateless, which can be quite limiting. We need persistent storage for containers.
• It should be created and started as easily as a container.
Containers and persistent storage
Containers are fast, scalable and flexible.
• Fast and easy to start and stop.
• Fast and easy to scale.
• Unified from development to production.
• Yet customizable for every situation.
However containers tend to be stateless, which can be quite limiting. We need persistent storage for containers.
• It should be created and started as easily as a container.
• It should be able to scale with your container pool.
Containers and persistent storage
Containers are fast, scalable and flexible.
• Fast and easy to start and stop.
• Fast and easy to scale.
• Unified from development to production.
• Yet customizable for every situation.
However containers tend to be stateless, which can be quite limiting. We need persistent storage for containers.
• It should be created and started as easily as a container.
• It should be able to scale with your container pool.
• It should work the same way for development, tests, production, …
Containers and persistent storage
Containers are fast, scalable and flexible.
• Fast and easy to start and stop.
• Fast and easy to scale.
• Unified from development to production.
• Yet customizable for every situation.
However containers tend to be stateless, which can be quite limiting. We need persistent storage for containers.
• It should be created and started as easily as a container.
• It should be able to scale with your container pool.
• It should work the same way for development, tests, production, …
• It should adapt to all situations.
Infinit storage platform
Infinit is a storage platform designed with containers in mind providing several APIs: POSIX filesystem, object,
block. It aggregates local nodes storage into a single virtual pool.
Infinit storage platform
The Infinit platform is truly distributed. There are no leader or followers, all nodes are equal.
Infinit storage platform
The Infinit platform is truly distributed. There are no leader or followers, all nodes are equal.
• Works the same with 1 or 10k nodes.
Infinit storage platform
The Infinit platform is truly distributed. There are no leader or followers, all nodes are equal.
• Works the same with 1 or 10k nodes.
• No node is a point of failure, no bottleneck.
Infinit storage platform
The Infinit platform is truly distributed. There are no leader or followers, all nodes are equal.
• Works the same with 1 or 10k nodes.
• No node is a point of failure, no bottleneck.
• Nodes can come and go: scaling in and out is easy, both capacity and throughput.
Infinit storage platform
The Infinit platform is truly distributed. There are no leader or followers, all nodes are equal.
• Works the same with 1 or 10k nodes.
• No node is a point of failure, no bottleneck.
• Nodes can come and go: scaling in and out is easy, both capacity and throughput.
• Uniform API from development to production.
Infinit storage platform
The Infinit platform is truly distributed. There are no leader or followers, all nodes are equal.
• Works the same with 1 or 10k nodes.
• No node is a point of failure, no bottleneck.
• Nodes can come and go: scaling in and out is easy, both capacity and throughput.
• Uniform API from development to production.
• Customizable for every setup.
Infinit storage platform
The Infinit platform is truly distributed. There are no leader or followers, all nodes are equal.
• Works the same with 1 or 10k nodes.
• No node is a point of failure, no bottleneck.
• Nodes can come and go: scaling in and out is easy, both capacity and throughput.
• Uniform API from development to production.
• Customizable for every setup.
Thus, Infinit:
• Can be created and run as seamlessly as a container.
Infinit storage platform
The Infinit platform is truly distributed. There are no leader or followers, all nodes are equal.
• Works the same with 1 or 10k nodes.
• No node is a point of failure, no bottleneck.
• Nodes can come and go: scaling in and out is easy, both capacity and throughput.
• Uniform API from development to production.
• Customizable for every setup.
Thus, Infinit:
• Can be created and run as seamlessly as a container.
• Can scale with you container pool.
Infinit storage platform
The Infinit platform is truly distributed. There are no leader or followers, all nodes are equal.
• Works the same with 1 or 10k nodes.
• No node is a point of failure, no bottleneck.
• Nodes can come and go: scaling in and out is easy, both capacity and throughput.
• Uniform API from development to production.
• Customizable for every setup.
Thus, Infinit:
• Can be created and run as seamlessly as a container.
• Can scale with you container pool.
• Is the same in all situations: development, unit tests, production …
Infinit storage platform
The Infinit platform is truly distributed. There are no leader or followers, all nodes are equal.
• Works the same with 1 or 10k nodes.
• No node is a point of failure, no bottleneck.
• Nodes can come and go: scaling in and out is easy, both capacity and throughput.
• Uniform API from development to production.
• Customizable for every setup.
Thus, Infinit:
• Can be created and run as seamlessly as a container.
• Can scale with you container pool.
• Is the same in all situations: development, unit tests, production …
• Can be configured for each situation: encryption, redundancy, compression, …
How to achieve this
Infinit fundamental principles:
How to achieve this
Infinit fundamental principles:
• Federate all nodes in an overlay network for lookup and routing.
How to achieve this
Infinit fundamental principles:
• Federate all nodes in an overlay network for lookup and routing.
• Store data as blocks in a distributed hashtable (key-value store) with a per-block consensus.
How to achieve this
Infinit fundamental principles:
• Federate all nodes in an overlay network for lookup and routing.
• Store data as blocks in a distributed hashtable (key-value store) with a per-block consensus.
• Use cryptographic access control to dispense from any leader.
How to achieve this
Infinit fundamental principles:
• Federate all nodes in an overlay network for lookup and routing.
• Store data as blocks in a distributed hashtable (key-value store) with a per-block consensus.
• Use cryptographic access control to dispense from any leader.
• Use symmetrical operations to ensure resilience and flexibility.
Persistent storage tailored for containers
Dive-in: DHT blocks
Because we are symetric and use cryptographic access control, all blocks must be self-certified and ciphered.
Dive-in: DHT blocks
Because we are symetric and use cryptographic access control, all blocks must be self-certified and ciphered.
• Mutable blocks
◦ Subject to conflicts.
◦ Subject to invalidation.
◦ Hard to certify and cipher.
Dive-in: DHT blocks
Because we are symetric and use cryptographic access control, all blocks must be self-certified and ciphered.
• Mutable blocks
◦ Subject to conflicts.
◦ Subject to invalidation.
◦ Hard to certify and cipher.
• Immutable blocks
◦ No conflicts.
◦ No invalidation: cachable forever.
◦ Easy to certify since content addressable: address = hash(contents).
Dive-in: DHT blocks
Because we are symetric and use cryptographic access control, all blocks must be self-certified and ciphered.
• Mutable blocks
◦ Subject to conflicts.
◦ Subject to invalidation.
◦ Hard to certify and cipher.
• Immutable blocks
◦ No conflicts.
◦ No invalidation: cachable forever.
◦ Easy to certify since content addressable: address = hash(contents).
Immutable block are fetchable from any source with permanent on-disk LRU cache.
A file is mostly a mutable block with
metadata and a FAT of immutable
block.
Dive-in: filesystem layer
A file is mostly a mutable block with
metadata and a FAT of immutable
block.
Dive-in: filesystem layer
File contents is cachable at will, cheap
and atomic writes.
Dive-in: filesystem layer
The POSIX API is inherently sequential. We are highly parallel.
Dive-in: filesystem layer
Directories prefetching and files look-ahead enables batching and pipelining.
Dive-in: consensus
Each block is managed by a specific quorum of node with a variable composition, running multipaxos.
Dive-in: consensus
Each block is managed by a specific quorum of node with a variable composition, running multipaxos.
No failure point or bottleneck, strong read after write consistency.
Dive-in: overlay
The overlay layer is one major customization point of the platform.
Dive-in: overlay
The overlay layer is one major customization point of the platform.
Algorithm choice:
• Several thousands machines: kelips, kademlia, chord.
• Few hundreds machines and dozen of terabytes: global knowledge.
Dive-in: overlay
The overlay layer is one major customization point of the platform.
Algorithm choice:
• Several thousands machines: kelips, kademlia, chord.
• Few hundreds machines and dozen of terabytes: global knowledge.
Data placement: rack-aware, zone-aware, reliability-aware, ensure local copies, ...
Demo!
Let's persist that storage!
1 of 43

Recommended

Why docker | OSCON 2013 by
Why docker | OSCON 2013Why docker | OSCON 2013
Why docker | OSCON 2013dotCloud
35.5K views37 slides
Hypervisor "versus" Linux Containers with Docker ! by
Hypervisor "versus" Linux Containers with Docker !Hypervisor "versus" Linux Containers with Docker !
Hypervisor "versus" Linux Containers with Docker !Francisco Gonçalves
8.6K views37 slides
Sharding Containers: Make Go Apps Computer-Friendly Again by Andrey Sibiryov by
Sharding Containers: Make Go Apps Computer-Friendly Again by Andrey Sibiryov Sharding Containers: Make Go Apps Computer-Friendly Again by Andrey Sibiryov
Sharding Containers: Make Go Apps Computer-Friendly Again by Andrey Sibiryov Docker, Inc.
12.9K views22 slides
Docker, a new LINUX container technology based light weight virtualization by
Docker, a new LINUX container technology based light weight virtualizationDocker, a new LINUX container technology based light weight virtualization
Docker, a new LINUX container technology based light weight virtualizationSuresh Balla
4.9K views24 slides
Building a smarter application Stack by Tomas Doran from Yelp by
Building a smarter application Stack by Tomas Doran from YelpBuilding a smarter application Stack by Tomas Doran from Yelp
Building a smarter application Stack by Tomas Doran from YelpdotCloud
166K views42 slides
Why Docker by
Why DockerWhy Docker
Why DockerdotCloud
310.6K views37 slides

More Related Content

What's hot

Deploying containers and managing them on multiple Docker hosts, Docker Meetu... by
Deploying containers and managing them on multiple Docker hosts, Docker Meetu...Deploying containers and managing them on multiple Docker hosts, Docker Meetu...
Deploying containers and managing them on multiple Docker hosts, Docker Meetu...dotCloud
17.3K views35 slides
Docker and Containers overview - Docker Workshop by
Docker and Containers overview - Docker WorkshopDocker and Containers overview - Docker Workshop
Docker and Containers overview - Docker WorkshopJonas Rosland
2K views31 slides
Innovating faster with SBT, Continuous Delivery, and LXC by
Innovating faster with SBT, Continuous Delivery, and LXCInnovating faster with SBT, Continuous Delivery, and LXC
Innovating faster with SBT, Continuous Delivery, and LXCkscaldef
10K views44 slides
DockerCon Keynote Ben Golub by
DockerCon Keynote Ben GolubDockerCon Keynote Ben Golub
DockerCon Keynote Ben GolubdotCloud
21.4K views43 slides
Docker Networking in Production at Visa - Sasi Kannappan, Visa and Mark Churc... by
Docker Networking in Production at Visa - Sasi Kannappan, Visa and Mark Churc...Docker Networking in Production at Visa - Sasi Kannappan, Visa and Mark Churc...
Docker Networking in Production at Visa - Sasi Kannappan, Visa and Mark Churc...Docker, Inc.
2.7K views21 slides
Introduction to containers running dockers using kubernetes - הרצאה לכנס מיק... by
Introduction to containers  running dockers using kubernetes - הרצאה לכנס מיק...Introduction to containers  running dockers using kubernetes - הרצאה לכנס מיק...
Introduction to containers running dockers using kubernetes - הרצאה לכנס מיק...Zohar Stolar
2.5K views16 slides

What's hot(20)

Deploying containers and managing them on multiple Docker hosts, Docker Meetu... by dotCloud
Deploying containers and managing them on multiple Docker hosts, Docker Meetu...Deploying containers and managing them on multiple Docker hosts, Docker Meetu...
Deploying containers and managing them on multiple Docker hosts, Docker Meetu...
dotCloud17.3K views
Docker and Containers overview - Docker Workshop by Jonas Rosland
Docker and Containers overview - Docker WorkshopDocker and Containers overview - Docker Workshop
Docker and Containers overview - Docker Workshop
Jonas Rosland2K views
Innovating faster with SBT, Continuous Delivery, and LXC by kscaldef
Innovating faster with SBT, Continuous Delivery, and LXCInnovating faster with SBT, Continuous Delivery, and LXC
Innovating faster with SBT, Continuous Delivery, and LXC
kscaldef10K views
DockerCon Keynote Ben Golub by dotCloud
DockerCon Keynote Ben GolubDockerCon Keynote Ben Golub
DockerCon Keynote Ben Golub
dotCloud21.4K views
Docker Networking in Production at Visa - Sasi Kannappan, Visa and Mark Churc... by Docker, Inc.
Docker Networking in Production at Visa - Sasi Kannappan, Visa and Mark Churc...Docker Networking in Production at Visa - Sasi Kannappan, Visa and Mark Churc...
Docker Networking in Production at Visa - Sasi Kannappan, Visa and Mark Churc...
Docker, Inc.2.7K views
Introduction to containers running dockers using kubernetes - הרצאה לכנס מיק... by Zohar Stolar
Introduction to containers  running dockers using kubernetes - הרצאה לכנס מיק...Introduction to containers  running dockers using kubernetes - הרצאה לכנס מיק...
Introduction to containers running dockers using kubernetes - הרצאה לכנס מיק...
Zohar Stolar2.5K views
Docker open stack boston by dotCloud
Docker open stack bostonDocker open stack boston
Docker open stack boston
dotCloud4.7K views
Docker in pratice -chenyifei by dotCloud
Docker in pratice -chenyifeiDocker in pratice -chenyifei
Docker in pratice -chenyifei
dotCloud19.6K views
Microservices using relocatable Docker containers by Mauricio Garavaglia
Microservices using relocatable Docker containersMicroservices using relocatable Docker containers
Microservices using relocatable Docker containers
Mauricio Garavaglia3.4K views
2016 10-26 docker meetup - kubernetes on open stack by Amrita Prasad
2016 10-26 docker meetup - kubernetes on open stack2016 10-26 docker meetup - kubernetes on open stack
2016 10-26 docker meetup - kubernetes on open stack
Amrita Prasad494 views
Docker at Spotify - Dockercon14 by dotCloud
Docker at Spotify - Dockercon14Docker at Spotify - Dockercon14
Docker at Spotify - Dockercon14
dotCloud56.7K views
Docker Registry V2 by Docker, Inc.
Docker Registry V2Docker Registry V2
Docker Registry V2
Docker, Inc.25.2K views
Intro to Docker at the 2016 Evans Developer relations conference by Mano Marks
Intro to Docker at the 2016 Evans Developer relations conferenceIntro to Docker at the 2016 Evans Developer relations conference
Intro to Docker at the 2016 Evans Developer relations conference
Mano Marks1.3K views
Are VM Passé? by dotCloud
Are VM Passé? Are VM Passé?
Are VM Passé?
dotCloud7.3K views
Docker Overview - Rise of the Containers by Ryan Hodgin
Docker Overview - Rise of the ContainersDocker Overview - Rise of the Containers
Docker Overview - Rise of the Containers
Ryan Hodgin5.1K views
Immutable Awesomeness by John Willis and Josh Corman by Docker, Inc.
Immutable Awesomeness by John Willis and Josh CormanImmutable Awesomeness by John Willis and Josh Corman
Immutable Awesomeness by John Willis and Josh Corman
Docker, Inc.5.2K views

Viewers also liked

containerd and CRI by
containerd and CRIcontainerd and CRI
containerd and CRIDocker, Inc.
8.7K views14 slides
Prometheus design and philosophy by
Prometheus design and philosophy   Prometheus design and philosophy
Prometheus design and philosophy Docker, Inc.
2.7K views32 slides
Docker Networking: Control plane and Data plane by
Docker Networking: Control plane and Data planeDocker Networking: Control plane and Data plane
Docker Networking: Control plane and Data planeDocker, Inc.
7.7K views22 slides
Unikernels: the rise of the library hypervisor in MirageOS by
Unikernels: the rise of the library hypervisor in MirageOSUnikernels: the rise of the library hypervisor in MirageOS
Unikernels: the rise of the library hypervisor in MirageOSDocker, Inc.
2.3K views42 slides
Docker Online Meetup: Announcing Docker CE + EE by
Docker Online Meetup: Announcing Docker CE + EEDocker Online Meetup: Announcing Docker CE + EE
Docker Online Meetup: Announcing Docker CE + EEDocker, Inc.
24.2K views16 slides
Driving containerd operations with gRPC by
Driving containerd operations with gRPCDriving containerd operations with gRPC
Driving containerd operations with gRPCDocker, Inc.
10.7K views20 slides

Viewers also liked(20)

containerd and CRI by Docker, Inc.
containerd and CRIcontainerd and CRI
containerd and CRI
Docker, Inc.8.7K views
Prometheus design and philosophy by Docker, Inc.
Prometheus design and philosophy   Prometheus design and philosophy
Prometheus design and philosophy
Docker, Inc.2.7K views
Docker Networking: Control plane and Data plane by Docker, Inc.
Docker Networking: Control plane and Data planeDocker Networking: Control plane and Data plane
Docker Networking: Control plane and Data plane
Docker, Inc.7.7K views
Unikernels: the rise of the library hypervisor in MirageOS by Docker, Inc.
Unikernels: the rise of the library hypervisor in MirageOSUnikernels: the rise of the library hypervisor in MirageOS
Unikernels: the rise of the library hypervisor in MirageOS
Docker, Inc.2.3K views
Docker Online Meetup: Announcing Docker CE + EE by Docker, Inc.
Docker Online Meetup: Announcing Docker CE + EEDocker Online Meetup: Announcing Docker CE + EE
Docker Online Meetup: Announcing Docker CE + EE
Docker, Inc.24.2K views
Driving containerd operations with gRPC by Docker, Inc.
Driving containerd operations with gRPCDriving containerd operations with gRPC
Driving containerd operations with gRPC
Docker, Inc.10.7K views
Online Meetup: What's new in docker 1.13.0 by Docker, Inc.
Online Meetup: What's new in docker 1.13.0 Online Meetup: What's new in docker 1.13.0
Online Meetup: What's new in docker 1.13.0
Docker, Inc.11.6K views
Containerd - core container runtime component by Docker, Inc.
Containerd - core container runtime component Containerd - core container runtime component
Containerd - core container runtime component
Docker, Inc.7.3K views
Docker and Microsoft - Windows Server 2016 Technical Deep Dive by Docker, Inc.
Docker and Microsoft - Windows Server 2016 Technical Deep DiveDocker and Microsoft - Windows Server 2016 Technical Deep Dive
Docker and Microsoft - Windows Server 2016 Technical Deep Dive
Docker, Inc.9.3K views
containerd summit - Deep Dive into containerd by Docker, Inc.
containerd summit - Deep Dive into containerdcontainerd summit - Deep Dive into containerd
containerd summit - Deep Dive into containerd
Docker, Inc.9.8K views
Talking TUF: Securing Software Distribution by Docker, Inc.
Talking TUF: Securing Software DistributionTalking TUF: Securing Software Distribution
Talking TUF: Securing Software Distribution
Docker, Inc.2.3K views
Orchestrating Least Privilege by Diogo Monica by Docker, Inc.
Orchestrating Least Privilege by Diogo Monica Orchestrating Least Privilege by Diogo Monica
Orchestrating Least Privilege by Diogo Monica
Docker, Inc.1.5K views
Infinit: Modern Storage Platform for Container Environments by Docker, Inc.
Infinit: Modern Storage Platform for Container EnvironmentsInfinit: Modern Storage Platform for Container Environments
Infinit: Modern Storage Platform for Container Environments
Docker, Inc.25.5K views
Docker Online Meetup: Infrakit update and Q&A by Docker, Inc.
Docker Online Meetup: Infrakit update and Q&ADocker Online Meetup: Infrakit update and Q&A
Docker Online Meetup: Infrakit update and Q&A
Docker, Inc.6.7K views
Using Docker Swarm Mode to Deploy Service Without Loss by Dongluo Chen & Nish... by Docker, Inc.
Using Docker Swarm Mode to Deploy Service Without Loss by Dongluo Chen & Nish...Using Docker Swarm Mode to Deploy Service Without Loss by Dongluo Chen & Nish...
Using Docker Swarm Mode to Deploy Service Without Loss by Dongluo Chen & Nish...
Docker, Inc.8.1K views
Docker Roadshow 2016 by Docker, Inc.
Docker Roadshow 2016Docker Roadshow 2016
Docker Roadshow 2016
Docker, Inc.2.2K views
'The History of Metrics According to me' by Stephen Day by Docker, Inc.
'The History of Metrics According to me' by Stephen Day'The History of Metrics According to me' by Stephen Day
'The History of Metrics According to me' by Stephen Day
Docker, Inc.6.5K views
Docker 101 - Nov 2016 by Docker, Inc.
Docker 101 - Nov 2016Docker 101 - Nov 2016
Docker 101 - Nov 2016
Docker, Inc.7.2K views
Cilium - BPF & XDP for containers by Docker, Inc.
 Cilium - BPF & XDP for containers Cilium - BPF & XDP for containers
Cilium - BPF & XDP for containers
Docker, Inc.5.7K views
Heart of the SwarmKit: Store, Topology & Object Model by Docker, Inc.
Heart of the SwarmKit: Store, Topology & Object ModelHeart of the SwarmKit: Store, Topology & Object Model
Heart of the SwarmKit: Store, Topology & Object Model
Docker, Inc.3.9K views

Similar to Persistent storage tailored for containers

Persistent storage tailored for containers #dockersummit by
Persistent storage tailored for containers #dockersummitPersistent storage tailored for containers #dockersummit
Persistent storage tailored for containers #dockersummitInfinit
1.5K views40 slides
Integration by
IntegrationIntegration
IntegrationStevoC
144 views43 slides
Message:Passing - lpw 2012 by
Message:Passing - lpw 2012Message:Passing - lpw 2012
Message:Passing - lpw 2012Tomas Doran
1.5K views150 slides
Deploying your SaaS stack OnPrem by
Deploying your SaaS stack OnPremDeploying your SaaS stack OnPrem
Deploying your SaaS stack OnPremKris Buytaert
681 views38 slides
The business case for contributing code by
The business case for contributing codeThe business case for contributing code
The business case for contributing codeZivtech, LLC
428 views96 slides
Docker volume plugins and Infinit – Mini-conf Docker Paris #1 by
Docker volume plugins and Infinit – Mini-conf Docker Paris #1Docker volume plugins and Infinit – Mini-conf Docker Paris #1
Docker volume plugins and Infinit – Mini-conf Docker Paris #1Infinit
650 views23 slides

Similar to Persistent storage tailored for containers(20)

Persistent storage tailored for containers #dockersummit by Infinit
Persistent storage tailored for containers #dockersummitPersistent storage tailored for containers #dockersummit
Persistent storage tailored for containers #dockersummit
Infinit1.5K views
Integration by StevoC
IntegrationIntegration
Integration
StevoC144 views
Message:Passing - lpw 2012 by Tomas Doran
Message:Passing - lpw 2012Message:Passing - lpw 2012
Message:Passing - lpw 2012
Tomas Doran1.5K views
Deploying your SaaS stack OnPrem by Kris Buytaert
Deploying your SaaS stack OnPremDeploying your SaaS stack OnPrem
Deploying your SaaS stack OnPrem
Kris Buytaert681 views
The business case for contributing code by Zivtech, LLC
The business case for contributing codeThe business case for contributing code
The business case for contributing code
Zivtech, LLC428 views
Docker volume plugins and Infinit – Mini-conf Docker Paris #1 by Infinit
Docker volume plugins and Infinit – Mini-conf Docker Paris #1Docker volume plugins and Infinit – Mini-conf Docker Paris #1
Docker volume plugins and Infinit – Mini-conf Docker Paris #1
Infinit650 views
The Highs and Lows of Stateful Containers by C4Media
The Highs and Lows of Stateful ContainersThe Highs and Lows of Stateful Containers
The Highs and Lows of Stateful Containers
C4Media382 views
JUC Europe 2015: Continuous Integration and Distribution in the Cloud with DE... by CloudBees
JUC Europe 2015: Continuous Integration and Distribution in the Cloud with DE...JUC Europe 2015: Continuous Integration and Distribution in the Cloud with DE...
JUC Europe 2015: Continuous Integration and Distribution in the Cloud with DE...
CloudBees293 views
Test driven infrastructure development (2 - puppetconf 2013 edition) by Tomas Doran
Test driven infrastructure development (2 - puppetconf 2013 edition)Test driven infrastructure development (2 - puppetconf 2013 edition)
Test driven infrastructure development (2 - puppetconf 2013 edition)
Tomas Doran1.6K views
Locks, Blocks, and Snapshots: Maximizing Database Concurrency (New England SQ... by Bob Pusateri
Locks, Blocks, and Snapshots: Maximizing Database Concurrency (New England SQ...Locks, Blocks, and Snapshots: Maximizing Database Concurrency (New England SQ...
Locks, Blocks, and Snapshots: Maximizing Database Concurrency (New England SQ...
Bob Pusateri86 views
Locks, Blocks, and Snapshots: Maximizing Database Concurrency (PASSDC User Gr... by Bob Pusateri
Locks, Blocks, and Snapshots: Maximizing Database Concurrency (PASSDC User Gr...Locks, Blocks, and Snapshots: Maximizing Database Concurrency (PASSDC User Gr...
Locks, Blocks, and Snapshots: Maximizing Database Concurrency (PASSDC User Gr...
Bob Pusateri70 views
Continous Delivery of your Infrastructure by Kris Buytaert
Continous Delivery of your InfrastructureContinous Delivery of your Infrastructure
Continous Delivery of your Infrastructure
Kris Buytaert857 views
What is Reactive programming? by Kevin Webber
What is Reactive programming?What is Reactive programming?
What is Reactive programming?
Kevin Webber2K views
kafka simplicity and complexity by Paolo Platter
kafka simplicity and complexitykafka simplicity and complexity
kafka simplicity and complexity
Paolo Platter86 views
Dockercon USA 2016 - Immutable Awesomeness by John Willis
Dockercon USA 2016 - Immutable Awesomeness Dockercon USA 2016 - Immutable Awesomeness
Dockercon USA 2016 - Immutable Awesomeness
John Willis412 views
Inside Wordnik's Architecture by Tony Tam
Inside Wordnik's ArchitectureInside Wordnik's Architecture
Inside Wordnik's Architecture
Tony Tam2.8K views

More from Docker, Inc.

Containerize Your Game Server for the Best Multiplayer Experience by
Containerize Your Game Server for the Best Multiplayer Experience Containerize Your Game Server for the Best Multiplayer Experience
Containerize Your Game Server for the Best Multiplayer Experience Docker, Inc.
5.4K views20 slides
How to Improve Your Image Builds Using Advance Docker Build by
How to Improve Your Image Builds Using Advance Docker BuildHow to Improve Your Image Builds Using Advance Docker Build
How to Improve Your Image Builds Using Advance Docker BuildDocker, Inc.
1.2K views29 slides
Build & Deploy Multi-Container Applications to AWS by
Build & Deploy Multi-Container Applications to AWSBuild & Deploy Multi-Container Applications to AWS
Build & Deploy Multi-Container Applications to AWSDocker, Inc.
800 views13 slides
Securing Your Containerized Applications with NGINX by
Securing Your Containerized Applications with NGINXSecuring Your Containerized Applications with NGINX
Securing Your Containerized Applications with NGINXDocker, Inc.
673 views79 slides
How To Build and Run Node Apps with Docker and Compose by
How To Build and Run Node Apps with Docker and ComposeHow To Build and Run Node Apps with Docker and Compose
How To Build and Run Node Apps with Docker and ComposeDocker, Inc.
707 views55 slides
Hands-on Helm by
Hands-on Helm Hands-on Helm
Hands-on Helm Docker, Inc.
592 views26 slides

More from Docker, Inc.(20)

Containerize Your Game Server for the Best Multiplayer Experience by Docker, Inc.
Containerize Your Game Server for the Best Multiplayer Experience Containerize Your Game Server for the Best Multiplayer Experience
Containerize Your Game Server for the Best Multiplayer Experience
Docker, Inc.5.4K views
How to Improve Your Image Builds Using Advance Docker Build by Docker, Inc.
How to Improve Your Image Builds Using Advance Docker BuildHow to Improve Your Image Builds Using Advance Docker Build
How to Improve Your Image Builds Using Advance Docker Build
Docker, Inc.1.2K views
Build & Deploy Multi-Container Applications to AWS by Docker, Inc.
Build & Deploy Multi-Container Applications to AWSBuild & Deploy Multi-Container Applications to AWS
Build & Deploy Multi-Container Applications to AWS
Docker, Inc.800 views
Securing Your Containerized Applications with NGINX by Docker, Inc.
Securing Your Containerized Applications with NGINXSecuring Your Containerized Applications with NGINX
Securing Your Containerized Applications with NGINX
Docker, Inc.673 views
How To Build and Run Node Apps with Docker and Compose by Docker, Inc.
How To Build and Run Node Apps with Docker and ComposeHow To Build and Run Node Apps with Docker and Compose
How To Build and Run Node Apps with Docker and Compose
Docker, Inc.707 views
Distributed Deep Learning with Docker at Salesforce by Docker, Inc.
Distributed Deep Learning with Docker at SalesforceDistributed Deep Learning with Docker at Salesforce
Distributed Deep Learning with Docker at Salesforce
Docker, Inc.466 views
The First 10M Pulls: Building The Official Curl Image for Docker Hub by Docker, Inc.
The First 10M Pulls: Building The Official Curl Image for Docker HubThe First 10M Pulls: Building The Official Curl Image for Docker Hub
The First 10M Pulls: Building The Official Curl Image for Docker Hub
Docker, Inc.611 views
Monitoring in a Microservices World by Docker, Inc.
Monitoring in a Microservices WorldMonitoring in a Microservices World
Monitoring in a Microservices World
Docker, Inc.405 views
COVID-19 in Italy: How Docker is Helping the Biggest Italian IT Company Conti... by Docker, Inc.
COVID-19 in Italy: How Docker is Helping the Biggest Italian IT Company Conti...COVID-19 in Italy: How Docker is Helping the Biggest Italian IT Company Conti...
COVID-19 in Italy: How Docker is Helping the Biggest Italian IT Company Conti...
Docker, Inc.315 views
Predicting Space Weather with Docker by Docker, Inc.
Predicting Space Weather with DockerPredicting Space Weather with Docker
Predicting Space Weather with Docker
Docker, Inc.238 views
Become a Docker Power User With Microsoft Visual Studio Code by Docker, Inc.
Become a Docker Power User With Microsoft Visual Studio CodeBecome a Docker Power User With Microsoft Visual Studio Code
Become a Docker Power User With Microsoft Visual Studio Code
Docker, Inc.353 views
How to Use Mirroring and Caching to Optimize your Container Registry by Docker, Inc.
How to Use Mirroring and Caching to Optimize your Container RegistryHow to Use Mirroring and Caching to Optimize your Container Registry
How to Use Mirroring and Caching to Optimize your Container Registry
Docker, Inc.362 views
Monolithic to Microservices + Docker = SDLC on Steroids! by Docker, Inc.
Monolithic to Microservices + Docker = SDLC on Steroids!Monolithic to Microservices + Docker = SDLC on Steroids!
Monolithic to Microservices + Docker = SDLC on Steroids!
Docker, Inc.325 views
Kubernetes at Datadog Scale by Docker, Inc.
Kubernetes at Datadog ScaleKubernetes at Datadog Scale
Kubernetes at Datadog Scale
Docker, Inc.327 views
Labels, Labels, Labels by Docker, Inc.
Labels, Labels, Labels Labels, Labels, Labels
Labels, Labels, Labels
Docker, Inc.223 views
Using Docker Hub at Scale to Support Micro Focus' Delivery and Deployment Model by Docker, Inc.
Using Docker Hub at Scale to Support Micro Focus' Delivery and Deployment ModelUsing Docker Hub at Scale to Support Micro Focus' Delivery and Deployment Model
Using Docker Hub at Scale to Support Micro Focus' Delivery and Deployment Model
Docker, Inc.206 views
Build & Deploy Multi-Container Applications to AWS by Docker, Inc.
Build & Deploy Multi-Container Applications to AWSBuild & Deploy Multi-Container Applications to AWS
Build & Deploy Multi-Container Applications to AWS
Docker, Inc.430 views
From Fortran on the Desktop to Kubernetes in the Cloud: A Windows Migration S... by Docker, Inc.
From Fortran on the Desktop to Kubernetes in the Cloud: A Windows Migration S...From Fortran on the Desktop to Kubernetes in the Cloud: A Windows Migration S...
From Fortran on the Desktop to Kubernetes in the Cloud: A Windows Migration S...
Docker, Inc.351 views
Developing with Docker for the Arm Architecture by Docker, Inc.
Developing with Docker for the Arm ArchitectureDeveloping with Docker for the Arm Architecture
Developing with Docker for the Arm Architecture
Docker, Inc.2.2K views

Recently uploaded

How to reduce cold starts for Java Serverless applications in AWS at JCON Wor... by
How to reduce cold starts for Java Serverless applications in AWS at JCON Wor...How to reduce cold starts for Java Serverless applications in AWS at JCON Wor...
How to reduce cold starts for Java Serverless applications in AWS at JCON Wor...Vadym Kazulkin
70 views64 slides
Attacking IoT Devices from a Web Perspective - Linux Day by
Attacking IoT Devices from a Web Perspective - Linux Day Attacking IoT Devices from a Web Perspective - Linux Day
Attacking IoT Devices from a Web Perspective - Linux Day Simone Onofri
15 views68 slides
Understanding GenAI/LLM and What is Google Offering - Felix Goh by
Understanding GenAI/LLM and What is Google Offering - Felix GohUnderstanding GenAI/LLM and What is Google Offering - Felix Goh
Understanding GenAI/LLM and What is Google Offering - Felix GohNUS-ISS
39 views33 slides
Roadmap to Become Experts.pptx by
Roadmap to Become Experts.pptxRoadmap to Become Experts.pptx
Roadmap to Become Experts.pptxdscwidyatamanew
11 views45 slides
STPI OctaNE CoE Brochure.pdf by
STPI OctaNE CoE Brochure.pdfSTPI OctaNE CoE Brochure.pdf
STPI OctaNE CoE Brochure.pdfmadhurjyapb
12 views1 slide

Recently uploaded(20)

How to reduce cold starts for Java Serverless applications in AWS at JCON Wor... by Vadym Kazulkin
How to reduce cold starts for Java Serverless applications in AWS at JCON Wor...How to reduce cold starts for Java Serverless applications in AWS at JCON Wor...
How to reduce cold starts for Java Serverless applications in AWS at JCON Wor...
Vadym Kazulkin70 views
Attacking IoT Devices from a Web Perspective - Linux Day by Simone Onofri
Attacking IoT Devices from a Web Perspective - Linux Day Attacking IoT Devices from a Web Perspective - Linux Day
Attacking IoT Devices from a Web Perspective - Linux Day
Simone Onofri15 views
Understanding GenAI/LLM and What is Google Offering - Felix Goh by NUS-ISS
Understanding GenAI/LLM and What is Google Offering - Felix GohUnderstanding GenAI/LLM and What is Google Offering - Felix Goh
Understanding GenAI/LLM and What is Google Offering - Felix Goh
NUS-ISS39 views
STPI OctaNE CoE Brochure.pdf by madhurjyapb
STPI OctaNE CoE Brochure.pdfSTPI OctaNE CoE Brochure.pdf
STPI OctaNE CoE Brochure.pdf
madhurjyapb12 views
PharoJS - Zürich Smalltalk Group Meetup November 2023 by Noury Bouraqadi
PharoJS - Zürich Smalltalk Group Meetup November 2023PharoJS - Zürich Smalltalk Group Meetup November 2023
PharoJS - Zürich Smalltalk Group Meetup November 2023
Noury Bouraqadi113 views
Igniting Next Level Productivity with AI-Infused Data Integration Workflows by Safe Software
Igniting Next Level Productivity with AI-Infused Data Integration Workflows Igniting Next Level Productivity with AI-Infused Data Integration Workflows
Igniting Next Level Productivity with AI-Infused Data Integration Workflows
Safe Software91 views
Black and White Modern Science Presentation.pptx by maryamkhalid2916
Black and White Modern Science Presentation.pptxBlack and White Modern Science Presentation.pptx
Black and White Modern Science Presentation.pptx
maryamkhalid291614 views
AI: mind, matter, meaning, metaphors, being, becoming, life values by Twain Liu 刘秋艳
AI: mind, matter, meaning, metaphors, being, becoming, life valuesAI: mind, matter, meaning, metaphors, being, becoming, life values
AI: mind, matter, meaning, metaphors, being, becoming, life values
Data-centric AI and the convergence of data and model engineering: opportunit... by Paolo Missier
Data-centric AI and the convergence of data and model engineering:opportunit...Data-centric AI and the convergence of data and model engineering:opportunit...
Data-centric AI and the convergence of data and model engineering: opportunit...
Paolo Missier29 views
RADIUS-Omnichannel Interaction System by RADIUS
RADIUS-Omnichannel Interaction SystemRADIUS-Omnichannel Interaction System
RADIUS-Omnichannel Interaction System
RADIUS14 views
Empathic Computing: Delivering the Potential of the Metaverse by Mark Billinghurst
Empathic Computing: Delivering  the Potential of the MetaverseEmpathic Computing: Delivering  the Potential of the Metaverse
Empathic Computing: Delivering the Potential of the Metaverse
Mark Billinghurst449 views
SAP Automation Using Bar Code and FIORI.pdf by Virendra Rai, PMP
SAP Automation Using Bar Code and FIORI.pdfSAP Automation Using Bar Code and FIORI.pdf
SAP Automation Using Bar Code and FIORI.pdf
Emerging & Future Technology - How to Prepare for the Next 10 Years of Radica... by NUS-ISS
Emerging & Future Technology - How to Prepare for the Next 10 Years of Radica...Emerging & Future Technology - How to Prepare for the Next 10 Years of Radica...
Emerging & Future Technology - How to Prepare for the Next 10 Years of Radica...
NUS-ISS15 views
How the World's Leading Independent Automotive Distributor is Reinventing Its... by NUS-ISS
How the World's Leading Independent Automotive Distributor is Reinventing Its...How the World's Leading Independent Automotive Distributor is Reinventing Its...
How the World's Leading Independent Automotive Distributor is Reinventing Its...
NUS-ISS15 views
Beyond the Hype: What Generative AI Means for the Future of Work - Damien Cum... by NUS-ISS
Beyond the Hype: What Generative AI Means for the Future of Work - Damien Cum...Beyond the Hype: What Generative AI Means for the Future of Work - Damien Cum...
Beyond the Hype: What Generative AI Means for the Future of Work - Damien Cum...
NUS-ISS28 views

Persistent storage tailored for containers

  • 1. Persistent storage tailored for containers Quentin “mefyl” Hocquet mefyl@infinit.sh CTO @ Infinit Version 1.2-26-gbcb3c69
  • 2. Plan Containers and persistent storage Infinit storage platform Dive-in Demo Q&A
  • 3. Containers and persistent storage Containers are fast, scalable and flexible.
  • 4. Containers and persistent storage Containers are fast, scalable and flexible. • Fast and easy to start and stop.
  • 5. Containers and persistent storage Containers are fast, scalable and flexible. • Fast and easy to start and stop. • Fast and easy to scale.
  • 6. Containers and persistent storage Containers are fast, scalable and flexible. • Fast and easy to start and stop. • Fast and easy to scale. • Unified from development to production.
  • 7. Containers and persistent storage Containers are fast, scalable and flexible. • Fast and easy to start and stop. • Fast and easy to scale. • Unified from development to production. • Yet customizable for every situation.
  • 8. Containers and persistent storage Containers are fast, scalable and flexible. • Fast and easy to start and stop. • Fast and easy to scale. • Unified from development to production. • Yet customizable for every situation. However containers tend to be stateless, which can be quite limiting. We need persistent storage for containers.
  • 9. Containers and persistent storage Containers are fast, scalable and flexible. • Fast and easy to start and stop. • Fast and easy to scale. • Unified from development to production. • Yet customizable for every situation. However containers tend to be stateless, which can be quite limiting. We need persistent storage for containers. • It should be created and started as easily as a container.
  • 10. Containers and persistent storage Containers are fast, scalable and flexible. • Fast and easy to start and stop. • Fast and easy to scale. • Unified from development to production. • Yet customizable for every situation. However containers tend to be stateless, which can be quite limiting. We need persistent storage for containers. • It should be created and started as easily as a container. • It should be able to scale with your container pool.
  • 11. Containers and persistent storage Containers are fast, scalable and flexible. • Fast and easy to start and stop. • Fast and easy to scale. • Unified from development to production. • Yet customizable for every situation. However containers tend to be stateless, which can be quite limiting. We need persistent storage for containers. • It should be created and started as easily as a container. • It should be able to scale with your container pool. • It should work the same way for development, tests, production, …
  • 12. Containers and persistent storage Containers are fast, scalable and flexible. • Fast and easy to start and stop. • Fast and easy to scale. • Unified from development to production. • Yet customizable for every situation. However containers tend to be stateless, which can be quite limiting. We need persistent storage for containers. • It should be created and started as easily as a container. • It should be able to scale with your container pool. • It should work the same way for development, tests, production, … • It should adapt to all situations.
  • 13. Infinit storage platform Infinit is a storage platform designed with containers in mind providing several APIs: POSIX filesystem, object, block. It aggregates local nodes storage into a single virtual pool.
  • 14. Infinit storage platform The Infinit platform is truly distributed. There are no leader or followers, all nodes are equal.
  • 15. Infinit storage platform The Infinit platform is truly distributed. There are no leader or followers, all nodes are equal. • Works the same with 1 or 10k nodes.
  • 16. Infinit storage platform The Infinit platform is truly distributed. There are no leader or followers, all nodes are equal. • Works the same with 1 or 10k nodes. • No node is a point of failure, no bottleneck.
  • 17. Infinit storage platform The Infinit platform is truly distributed. There are no leader or followers, all nodes are equal. • Works the same with 1 or 10k nodes. • No node is a point of failure, no bottleneck. • Nodes can come and go: scaling in and out is easy, both capacity and throughput.
  • 18. Infinit storage platform The Infinit platform is truly distributed. There are no leader or followers, all nodes are equal. • Works the same with 1 or 10k nodes. • No node is a point of failure, no bottleneck. • Nodes can come and go: scaling in and out is easy, both capacity and throughput. • Uniform API from development to production.
  • 19. Infinit storage platform The Infinit platform is truly distributed. There are no leader or followers, all nodes are equal. • Works the same with 1 or 10k nodes. • No node is a point of failure, no bottleneck. • Nodes can come and go: scaling in and out is easy, both capacity and throughput. • Uniform API from development to production. • Customizable for every setup.
  • 20. Infinit storage platform The Infinit platform is truly distributed. There are no leader or followers, all nodes are equal. • Works the same with 1 or 10k nodes. • No node is a point of failure, no bottleneck. • Nodes can come and go: scaling in and out is easy, both capacity and throughput. • Uniform API from development to production. • Customizable for every setup. Thus, Infinit: • Can be created and run as seamlessly as a container.
  • 21. Infinit storage platform The Infinit platform is truly distributed. There are no leader or followers, all nodes are equal. • Works the same with 1 or 10k nodes. • No node is a point of failure, no bottleneck. • Nodes can come and go: scaling in and out is easy, both capacity and throughput. • Uniform API from development to production. • Customizable for every setup. Thus, Infinit: • Can be created and run as seamlessly as a container. • Can scale with you container pool.
  • 22. Infinit storage platform The Infinit platform is truly distributed. There are no leader or followers, all nodes are equal. • Works the same with 1 or 10k nodes. • No node is a point of failure, no bottleneck. • Nodes can come and go: scaling in and out is easy, both capacity and throughput. • Uniform API from development to production. • Customizable for every setup. Thus, Infinit: • Can be created and run as seamlessly as a container. • Can scale with you container pool. • Is the same in all situations: development, unit tests, production …
  • 23. Infinit storage platform The Infinit platform is truly distributed. There are no leader or followers, all nodes are equal. • Works the same with 1 or 10k nodes. • No node is a point of failure, no bottleneck. • Nodes can come and go: scaling in and out is easy, both capacity and throughput. • Uniform API from development to production. • Customizable for every setup. Thus, Infinit: • Can be created and run as seamlessly as a container. • Can scale with you container pool. • Is the same in all situations: development, unit tests, production … • Can be configured for each situation: encryption, redundancy, compression, …
  • 24. How to achieve this Infinit fundamental principles:
  • 25. How to achieve this Infinit fundamental principles: • Federate all nodes in an overlay network for lookup and routing.
  • 26. How to achieve this Infinit fundamental principles: • Federate all nodes in an overlay network for lookup and routing. • Store data as blocks in a distributed hashtable (key-value store) with a per-block consensus.
  • 27. How to achieve this Infinit fundamental principles: • Federate all nodes in an overlay network for lookup and routing. • Store data as blocks in a distributed hashtable (key-value store) with a per-block consensus. • Use cryptographic access control to dispense from any leader.
  • 28. How to achieve this Infinit fundamental principles: • Federate all nodes in an overlay network for lookup and routing. • Store data as blocks in a distributed hashtable (key-value store) with a per-block consensus. • Use cryptographic access control to dispense from any leader. • Use symmetrical operations to ensure resilience and flexibility.
  • 30. Dive-in: DHT blocks Because we are symetric and use cryptographic access control, all blocks must be self-certified and ciphered.
  • 31. Dive-in: DHT blocks Because we are symetric and use cryptographic access control, all blocks must be self-certified and ciphered. • Mutable blocks ◦ Subject to conflicts. ◦ Subject to invalidation. ◦ Hard to certify and cipher.
  • 32. Dive-in: DHT blocks Because we are symetric and use cryptographic access control, all blocks must be self-certified and ciphered. • Mutable blocks ◦ Subject to conflicts. ◦ Subject to invalidation. ◦ Hard to certify and cipher. • Immutable blocks ◦ No conflicts. ◦ No invalidation: cachable forever. ◦ Easy to certify since content addressable: address = hash(contents).
  • 33. Dive-in: DHT blocks Because we are symetric and use cryptographic access control, all blocks must be self-certified and ciphered. • Mutable blocks ◦ Subject to conflicts. ◦ Subject to invalidation. ◦ Hard to certify and cipher. • Immutable blocks ◦ No conflicts. ◦ No invalidation: cachable forever. ◦ Easy to certify since content addressable: address = hash(contents). Immutable block are fetchable from any source with permanent on-disk LRU cache.
  • 34. A file is mostly a mutable block with metadata and a FAT of immutable block. Dive-in: filesystem layer
  • 35. A file is mostly a mutable block with metadata and a FAT of immutable block. Dive-in: filesystem layer File contents is cachable at will, cheap and atomic writes.
  • 36. Dive-in: filesystem layer The POSIX API is inherently sequential. We are highly parallel.
  • 37. Dive-in: filesystem layer Directories prefetching and files look-ahead enables batching and pipelining.
  • 38. Dive-in: consensus Each block is managed by a specific quorum of node with a variable composition, running multipaxos.
  • 39. Dive-in: consensus Each block is managed by a specific quorum of node with a variable composition, running multipaxos. No failure point or bottleneck, strong read after write consistency.
  • 40. Dive-in: overlay The overlay layer is one major customization point of the platform.
  • 41. Dive-in: overlay The overlay layer is one major customization point of the platform. Algorithm choice: • Several thousands machines: kelips, kademlia, chord. • Few hundreds machines and dozen of terabytes: global knowledge.
  • 42. Dive-in: overlay The overlay layer is one major customization point of the platform. Algorithm choice: • Several thousands machines: kelips, kademlia, chord. • Few hundreds machines and dozen of terabytes: global knowledge. Data placement: rack-aware, zone-aware, reliability-aware, ensure local copies, ...