Backup strategies for StatefulContainers in OpenShiftUsing Gluster based Container-Native StorageNiels de VosSenior Software EngineerRed Hat Storage
Self-Service
Multi-language
Automation
Collaboration
Seamless
Standards-based
Web-scale
Open Source
Enterprise Grade
Secure
Critical features for both Dev and Ops
10,000 foot overview
INFRA
JBOSS EAPJBOSS DATA GRID
JBOSS DATA VIRTUALIZATION
JBOSS AM-QJBOSS BRMSJBOSS BPMJBOSS FUSE
RED HAT MOBILE3 Scale
Container
BusinessAutomation
Container
Integration
Container
Data &Storage
Container
Web &Mobile
Traditional, Stateful, and Microservices-based Apps
OpenShift Application Lifecycle Management(CI/CD)
Build Automation Deployment Automation
Service Catalog(Language Runtimes, Middleware, Databases)
Self-Service
Infrastructure Automation & Cockpit
Networking Storage Registry Logs & Metrics Security
Container Orchestration & Cluster Management(kubernetes)
Container Runtime & Packaging(Docker)
Enterprise Container Host
Red Hat Enterprise LinuxAtomic Host
CONTAINER
MODERN APPLICATIONS DRIVE A MODERN DATA ARCHITECTURE
CONTAINER PLATFORM
CONTAINER CONTAINER CONTAINER CONTAINER CONTAINER CONTAINER
µSVC µSVC µSVC µSVC µSVC µSVCµSVC
Container ReadyData and Storage
STORAGE INNOVATION FORCONTAINERIZED APPLICATIONS
AUTOMATED CONFIGURATION
SINGLE CONTROL PANEL
CHOICE OF PERSISTENT STORAGE
Ceph RBD
Amazon EBS
Azure Disk
GCE Disk
iSCSI
NFS
GlusterFS
MySQL Container
CONTAINER READY STORAGE
CONTAINER NODE 1
CONTAINER NODE 2
CONTAINER NODE 1
CONTAINER NODE 3
NGINX Container
NGINX Container
NGINX Container
OPENSHIFT NODE 2
CONTAINER-NATIVE STORAGE
Co-Locate Storage and Apps
Dynamic Provisioning
Managed by OpenShift
Infrastructure-Agnostic
OPENSHIFT NODE 3
OPENSHIFT NODE 1
RHGS Container RHGS Container
OPENSHIFT NODE 4
MASTERAPP Container APP Container
APP CONTAINER
RHGS Container
CONTAINER-NATIVE STORAGE ON OPENSHIFT
INFRA
CONTAINER-NATIVE STORAGE ON OPENSHIFT
POD
CONTAINERIZED RED HAT GLUSTER STORAGE
RHEL HOST OS
RED HATGLUSTER POD
GLUSTER VOLUMES
PHYSICAL DISKHOST NETWORK
CONTAINER-NATIVE STORAGE ON OPENSHIFT
POD
RHGS POD
RHGS POD
RHGS POD RHGS POD
INFRAPOD
INFRA
HEKETIRESTFUL GLUSTERFS
MANAGEMENT
RED HATHEKETI POD
REST API
GLUSTERFS PODS
CONTAINER-NATIVE STORAGE ON OPENSHIFT
POD
RHGS POD
RHGS POD
RHGS POD RHGS POD
INFRAPOD
INFRAPERSISTENT
VOLUME CLAIM
1.)
CONTAINER-NATIVE STORAGE ON OPENSHIFT
POD
RHGS POD
RHGS POD
RHGS POD RHGS POD
INFRAPOD
INFRAPERSISTENT
VOLUME CLAIM2.)
1.)
CONTAINER-NATIVE STORAGE ON OPENSHIFT
POD
RHGS POD
RHGS POD
RHGS POD RHGS POD
INFRAPOD
INFRA
GLUSTER VOLUME
PERSISTENT VOLUME CLAIM
2.)
3.)
1.)
CONTAINER-NATIVE STORAGE ON OPENSHIFT
POD
RHGS POD
RHGS POD
RHGS POD RHGS POD
INFRAPOD
INFRA
GLUSTER VOLUME
PERSISTENT VOLUME CLAIM
PERSISTENT VOLUME
PERSISTENT VOLUME
4.)
2.)
3.)
4.)
1.)
Current available Backup Strategies
❖ Not integrated in the admin or user view of OpenShift
❖ Runs separately (most often) outside of OpenShift
❖ Might need special precautions for maintaining application data consistency
❖ Configuration and interactions directly on the storage environment
GLUSTER SNAPSHOTS AND GEO-REPLICATION
Site A Site B
Asynchronous ReplicationGLUSTER VOLUME
read-writeGLUSTER VOLUME
read-only
CURRENT FILE SYSTEM
CURRENT FILE SYSTEM
CURRENT FILE SYSTEMSNAPSHOTSNAPSHOT
A B C D A B C D A B C D B D+ E1 E2
BEFORE SNAPSHOT AFTER SNAPSHOT AFTER MODIFICATIONS
DeletedData
ModifiedData New Data
Potential future backup enhancements
❖ Snapshots of Persistent Volumes through Kubernetes
❖ Promotion of snapshots to new Persistent Volumes
❖ Container with backup application binds the Persistent Volume
❖ Opens the road for User-Self-Service to do backup and restores
❖ Can run completely inside OpenShift
PERSISTENT VOLUME SNAPSHOTS
Site A
Create Snapshot Snapshot Details
Site A
Promote Snapshot to PVPersistent Volume Persistent Volume
Perform Backup
Site B
PERSISTENT STORAGEread-write
THANK YOU
plus.google.com/+RedHat
linkedin.com/company/red-hat
youtube.com/user/RedHatVideos
facebook.com/redhatinc
twitter.com/RedHatNews