際際滷

際際滷Share a Scribd company logo
The	evolution	of	Kubernetes	
persistent	storage	C what¨s	next.
Bassam	Tabbara	(@bassamtabbara)
CTO @	Quantum	Corp.
Kubernetes	Consumes External	Storage
Node	0 Node	1 Node	2
master(s)
Storage	Provider
Volume	Provisioning	C Prior	to	1.2	release
Dynamic	Volume	Provisioning	C 1.2+	release
Container	Storage	Interface	(CSI)
? To	define	an	industry	standard	^Container	Storage	Interface ̄	(CSI)	that	will	
enable	storage	vendors	(SP)	to	develop	a	plugin	once	and	have	it	work	
across	a	number	of	container	orchestration	(CO)	systems.
? CSI	will	support:
? Dynamic	provisioning	and	deprovisioning of	a	volume.
? Attaching	or	detaching	a	volume	from	a	node.
? Mounting/unmounting	a	volume	from	a	node.
? Consumption	of	both	block	and	mountable	volumes.
? Local	storage	providers	(e.g.,	device	mapper,	lvm).
? Design	Stage.	Expected	in	Kubernetes	1.9+
? https://github.com/container-storage-interface/spec
Kubernetes Meetup - Seattle 2017-06-01
...we	need	to	focus	on	the	
Storage	Provider
Kubernetes	on	Bare	Metal
Node	0 Node	1 Node	2
master(s)
Software
Defined
Storage
Storage
Appliances
others
Kubernetes	in	Public	Clouds
Node	0 Node	1 Node	2
master(s)
Availability	Zone	A
Pod	failover	within	an	Availability	Zones
Node	0 Node	1 Node	2
master(s)
EBS
Pod	failover	within	an	Availability	Zones
Node	0 Node	1 Node	2
master(s)
EBS
crash
failover
Pod	failover	within	an	Availability	Zones
Node	0 Node	1 Node	2
master(s)
EBS
crash
failover
Eventually!
How	eventually?	
Up	to	an	hour	!!
Pod	failover	across Availability	Zones
Node	0	C AZ1 Node	1	C AZ2 Node	2	C AZ3
master(s)
EBS
Pod	failover	across Availability	Zones
Node	0	C AZ1 Node	1	C AZ2 Node	2	C AZ3
master(s)
EBS
crash
failover
Pod	failover	across Availability	Zones
Node	0	C AZ1 Node	1	C AZ2 Node	2	C AZ3
master(s)
EBS
crash
failover
EBS
Amazon	
S3
manual
snapshot
manual
restore
´and	then	there¨s	multi-cloud	
and	federation
Kubernetes Meetup - Seattle 2017-06-01
Run	the	Storage	Provider	on	Kubernetes
? Unified	Management
? Storage	scales	with	the	
applications
? Improved	Portability
? Improved	Failover
? Deeper	integration
? Enables	Federation	and	
Multi-Cloud	
Node	0 Node	1
storage	
provider
Node	2
master(s)
storage	
provider
storage	
provider
Pod	failover	across Availability	Zones
Node	0	C AZ1 Node	1	C AZ2 Node	2	C AZ3
master(s)
storage	
provider
storage	
provider
storage	
provider
Pod	failover	across Availability	Zones
Node	0	C AZ1 Node	1	C AZ2 Node	2	C AZ3
master(s)
storage	
provider
storage	
provider
storage	
provider
crash
failover
Volume	Attach/Detach	Time
EBS	volume
Attach	Times
Rook	Volume
Attach	Times
Open	Source	Storage-as-a-Service	
for	your	cloud-native	environment
We	need	your	help!
? Follow	us	on	Twitter	@rook_io and	star	us	on	github
? Try	out	Rook	https://rook.io
? Send	us	feedback
? Gitter:	https://gitter.im/rook/rook
? Email:	https://groups.google.com/forum/#!forum/rook-dev
? Contribute:	https://github.com/rook/rook
? Join	us

More Related Content

Kubernetes Meetup - Seattle 2017-06-01