No matter where an application is running, it will most likely need some form of storage. When running application in container environment, persistent storage is needed. There are plenty of storage plugins available which can provide persistent storage for application containers. With plenty of persistent storage available, it becomes evident to understand the different persistent storage options, their access modes and how it works so that applications can make better use of persistent storage. Join us and be able to choose right persistent for your applications. We will take you through : what all various persistent storage options and access method we have, how access mode suites your workload.
Selecting the right persistent storage options for apps in containers Open Source Summit Europe 2017
1. Selecting the Right Persistent Storage Options for Apps in
Containers
Bipin Kunal & Niels de Vos, Red Hat
2. Who are Bipin and Niels?
Bipin:
Product lead for Gluster Support and Maintenance
Engineer.
Niels:
Developer and Maintainer at the Gluster community
and involved in related projects.
3. Agenda
• What is persistent storage
• Why do we need persistent storage
• Type of persistent volumes
• Access modes for your PVs
• Performance details between different Access Modes
4. What is Persistent Storage?
● Persistent storage is any data storage device
that retains data after power to that device is
shut off.
5. Why do we need persistent storage?
• Containers are mostly stateless, but produce or
gather data for later consumption.
• Containers may not always be running or
available, the data should be kept so that a next
run can continue where it left off.
7. NFS
iSCSI
Azure Disk
GCE Disk
Ceph RBD
GlusterFS
AUTOMATED CONFIGURATION
SINGLE CONTROL PANEL
CHOICE OF PERSISTENT STORAGE
Amazon EBS
Storage Options for OpenShift
8. NFS WELL UNDERSTOOD, EASY TO DEMO
PROVIDES RWX STORAGE
NO HA, NOT AVAILABLE IN THE CLOUD
REQUIRES PRE-PROVISIONING
Storage Options for OpenShift: NFS
9. WELL UNDERSTOOD IN THE DC
BLOCK STORAGE, NO RWX SUPPORT
NOT AVAILABLE IN THE CLOUD
REQUIRES PRE-PROVISIONING
iSCSI
NFS
Storage Options for OpenShift: iSCSI
10. AVAILABLE IN THE CLOUD ;)
NOT AVAILABLE ACROSS AZs
PERFORMANCE DEPENDS ON SIZE
BLOCK STORAGE, NO RWX SUPPORT
Amazon EBS
Azure Disk
GCE Disk
iSCSI
NFS
Storage Options for OpenShift: Cloud Provider Storage
11. BLOCK STORAGE, NO RWX SUPPORT
SCALABLE, HA
CINDER PREFERRED FOR OCP on OSP
Ceph RBD
Amazon EBS
Azure Disk
GCE Disk
iSCSI
NFS
Storage Options for OpenShift: Ceph
12. GlusterFS
RUNS ON TOP OF OPENSHIFT
AVAILABLE OUT OF THE BOX
SCALABLE FILE STORAGE, RWX SUPPORT
AVAILABLE EVERYWHERE
GEO-REPLICATION, SNAPSHOTS
Ceph RBD
Amazon EBS
Azure Disk
GCE Disk
iSCSI
NFS
Storage Options for OpenShift: Gluster
13. Access modes for your PV’s
• ReadWriteOnce (RWO)
– Single node is allowed to read/write
• ReadOnlyMany (ROX)
– Multiple nodes can read at the same time
• ReadWriteMany (RWX)
– Multiple nodes can read and write at the same time
14. ReadWriteOnce (RWO)
• Applications that do not need to share a
filesystem among instances
• Optimizations possible, block-storage mounted
in the container
• Fewer filesystem operations, only read/write
data
15. ReadOnlyMany (ROX)
• Static content that was generated
• Snapshot of RWO/X promoted to ROX
• Read-only mounted NFS-export
16. ReadWriteMany (RWX)
• Dropbox like applications, Wordpress with
uploading images, Jenkins Artifacts
• Performs best with limited create/write, many
read
• Mounted NFS-export
17. Example: ReadWriteMany (RWX)
• Mounted NFS-export
• 'git clone /srv/glusterfs.git' into the mountpoint
• Repository after clone ~80 MB
50 seconds, 17133 NFSv4 operations
18. Example: ReadWriteOnce (RWO)
• Disk-image stored on NFS-export
• Mounted NFS-export on the host
• Mounted (loopback) disk-image on the host
< 1 second, ~1 NFSv4 operation
8 seconds, 195 NFSv4 operations (+ sync)
19. Thank you!
● Red Hat is still
not in shipping
business!
● Visit the Red
Hat stand
register for a
workshop
● Visit for cool
pictures