![Page 1: Using Gluster for your Storage Workloads€¦ · 21 April 2018 Linux Open Admin Days Gluster Basics Software Defined Storage Scale-out, distributed and high-available Designed as](https://reader035.vdocument.in/reader035/viewer/2022071218/60520f910f49897f76457323/html5/thumbnails/1.jpg)
Using Gluster for your Storage Workloads
Niels de VosSoftware Engineer at Red Hat
Gluster Developer and Maintainer
![Page 2: Using Gluster for your Storage Workloads€¦ · 21 April 2018 Linux Open Admin Days Gluster Basics Software Defined Storage Scale-out, distributed and high-available Designed as](https://reader035.vdocument.in/reader035/viewer/2022071218/60520f910f49897f76457323/html5/thumbnails/2.jpg)
21 April 2018 Linux Open Admin Days
Agenda
● Gluster Introduction● Traditional Workload● Containers, Kubernetes, DevOps!!
![Page 3: Using Gluster for your Storage Workloads€¦ · 21 April 2018 Linux Open Admin Days Gluster Basics Software Defined Storage Scale-out, distributed and high-available Designed as](https://reader035.vdocument.in/reader035/viewer/2022071218/60520f910f49897f76457323/html5/thumbnails/3.jpg)
21 April 2018 Linux Open Admin Days
Gluster Basics
● Software Defined Storage● Scale-out, distributed and high-available● Designed as a filesystem
– Block Storage as an add-on– Object Storage as an add-on
● Easy to install, configure and maintain– Packages available for several Linux distributions
![Page 4: Using Gluster for your Storage Workloads€¦ · 21 April 2018 Linux Open Admin Days Gluster Basics Software Defined Storage Scale-out, distributed and high-available Designed as](https://reader035.vdocument.in/reader035/viewer/2022071218/60520f910f49897f76457323/html5/thumbnails/4.jpg)
21 April 2018 Linux Open Admin Days
Commonly Used Stable Features
● Meta-data caching● Geo-replication● Volume snapshots● Policy based split-brain resolution● Brick multiplexing
![Page 5: Using Gluster for your Storage Workloads€¦ · 21 April 2018 Linux Open Admin Days Gluster Basics Software Defined Storage Scale-out, distributed and high-available Designed as](https://reader035.vdocument.in/reader035/viewer/2022071218/60520f910f49897f76457323/html5/thumbnails/5.jpg)
21 April 2018 Linux Open Admin Days
Gluster Basics
● Scalable Storage– Distributed Volumes
● High-Availability– 3-way Replication– 2-way Replication + Arbiter– Dispersed Volumes
● Flexible Storage– Distributed + HA
![Page 6: Using Gluster for your Storage Workloads€¦ · 21 April 2018 Linux Open Admin Days Gluster Basics Software Defined Storage Scale-out, distributed and high-available Designed as](https://reader035.vdocument.in/reader035/viewer/2022071218/60520f910f49897f76457323/html5/thumbnails/6.jpg)
21 April 2018 Linux Open Admin Days
Distributed Volumes
![Page 7: Using Gluster for your Storage Workloads€¦ · 21 April 2018 Linux Open Admin Days Gluster Basics Software Defined Storage Scale-out, distributed and high-available Designed as](https://reader035.vdocument.in/reader035/viewer/2022071218/60520f910f49897f76457323/html5/thumbnails/7.jpg)
21 April 2018 Linux Open Admin Days
3-way Replication
![Page 8: Using Gluster for your Storage Workloads€¦ · 21 April 2018 Linux Open Admin Days Gluster Basics Software Defined Storage Scale-out, distributed and high-available Designed as](https://reader035.vdocument.in/reader035/viewer/2022071218/60520f910f49897f76457323/html5/thumbnails/8.jpg)
21 April 2018 Linux Open Admin Days
2-way Replication + Arbiter
![Page 9: Using Gluster for your Storage Workloads€¦ · 21 April 2018 Linux Open Admin Days Gluster Basics Software Defined Storage Scale-out, distributed and high-available Designed as](https://reader035.vdocument.in/reader035/viewer/2022071218/60520f910f49897f76457323/html5/thumbnails/9.jpg)
21 April 2018 Linux Open Admin Days
Dispersed (Erasure Coded) Volumes
![Page 10: Using Gluster for your Storage Workloads€¦ · 21 April 2018 Linux Open Admin Days Gluster Basics Software Defined Storage Scale-out, distributed and high-available Designed as](https://reader035.vdocument.in/reader035/viewer/2022071218/60520f910f49897f76457323/html5/thumbnails/10.jpg)
21 April 2018 Linux Open Admin Days
NAS use-case
● NFS access with NFS-Ganesha● Windows and Mac support through Samba
● Direct Attached Guster to file services– HA configured for the file service
● Disk-image file mounted inside HA-VM– HA taken care of by the hypervisors
![Page 11: Using Gluster for your Storage Workloads€¦ · 21 April 2018 Linux Open Admin Days Gluster Basics Software Defined Storage Scale-out, distributed and high-available Designed as](https://reader035.vdocument.in/reader035/viewer/2022071218/60520f910f49897f76457323/html5/thumbnails/11.jpg)
21 April 2018 Linux Open Admin Days
NAS Examples
● Home directories, Windows Profiles● Backup target● Media archives● Websites● Image/video processing● … well, just like most network filesystems
![Page 12: Using Gluster for your Storage Workloads€¦ · 21 April 2018 Linux Open Admin Days Gluster Basics Software Defined Storage Scale-out, distributed and high-available Designed as](https://reader035.vdocument.in/reader035/viewer/2022071218/60520f910f49897f76457323/html5/thumbnails/12.jpg)
21 April 2018 Linux Open Admin Days
Block Storage
● Native QEMU integration with libgfapi● iSCSI through gluster-block and tcmu-runner
● Large performance advantage for single-system access
● Little network overhead compared to filesystem operations
![Page 13: Using Gluster for your Storage Workloads€¦ · 21 April 2018 Linux Open Admin Days Gluster Basics Software Defined Storage Scale-out, distributed and high-available Designed as](https://reader035.vdocument.in/reader035/viewer/2022071218/60520f910f49897f76457323/html5/thumbnails/13.jpg)
21 April 2018 Linux Open Admin Days
Block Storage Examples
● Virtual machines, available with oVirt● Loopback mounted disk-images
– Mount the Gluster Volume over FUSE/NFS/…– Loopback mount the disk-image
● Multipath-iSCSI– Out-of-the-box support for many Operating Systems
![Page 14: Using Gluster for your Storage Workloads€¦ · 21 April 2018 Linux Open Admin Days Gluster Basics Software Defined Storage Scale-out, distributed and high-available Designed as](https://reader035.vdocument.in/reader035/viewer/2022071218/60520f910f49897f76457323/html5/thumbnails/14.jpg)
21 April 2018 Linux Open Admin Days
Block Storage use-cases
● Small file workloads, ‘git clone’ like Jenkins● Applications with their own replication and
clustering– ElasticSearch– Cassandra– MySQL
![Page 15: Using Gluster for your Storage Workloads€¦ · 21 April 2018 Linux Open Admin Days Gluster Basics Software Defined Storage Scale-out, distributed and high-available Designed as](https://reader035.vdocument.in/reader035/viewer/2022071218/60520f910f49897f76457323/html5/thumbnails/15.jpg)
21 April 2018 Linux Open Admin Days
Containers with Kubernetes
● Pre-provisioned PersistentVolumes● Dynamic provisioned PersistentVolumeClaims
● Standardized Gluster Volume creation by defining a StorageClass, or more than one
![Page 16: Using Gluster for your Storage Workloads€¦ · 21 April 2018 Linux Open Admin Days Gluster Basics Software Defined Storage Scale-out, distributed and high-available Designed as](https://reader035.vdocument.in/reader035/viewer/2022071218/60520f910f49897f76457323/html5/thumbnails/16.jpg)
21 April 2018 Linux Open Admin Days
Dynamic PVC workflow
1.Create a PersistentVolumeClaim
2.K8s passes the PVC request to the provisioner
3.The Gluster provisioner requests Heketi to create a new Gluster Volume
4.Heketi decides where to create bricks
5.Heketi creates the Gluster Volume with the standard `gluster` command
![Page 17: Using Gluster for your Storage Workloads€¦ · 21 April 2018 Linux Open Admin Days Gluster Basics Software Defined Storage Scale-out, distributed and high-available Designed as](https://reader035.vdocument.in/reader035/viewer/2022071218/60520f910f49897f76457323/html5/thumbnails/17.jpg)
21 April 2018 Linux Open Admin Days
StorageClassapiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
name: replica-3-on-ssd-for-big-files
provisioner: kubernetes.io/glusterfs
parameters:
resturl: "http://127.0.0.1:8081"
restuser: "admin"
secretNamespace: "default"
secretName: "heketi-secret"
volumetype: "replicate:3"
volumeoptions: "features.shard on"
![Page 18: Using Gluster for your Storage Workloads€¦ · 21 April 2018 Linux Open Admin Days Gluster Basics Software Defined Storage Scale-out, distributed and high-available Designed as](https://reader035.vdocument.in/reader035/viewer/2022071218/60520f910f49897f76457323/html5/thumbnails/18.jpg)
21 April 2018 Linux Open Admin Days
PersistentVolumeClaimkind: PersistentVolumeClaim
apiVersion: v1
metadata:
name: iso-images
spec:
storageClassName: replica-3-on-ssd-for-big-files
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 100Gi
![Page 19: Using Gluster for your Storage Workloads€¦ · 21 April 2018 Linux Open Admin Days Gluster Basics Software Defined Storage Scale-out, distributed and high-available Designed as](https://reader035.vdocument.in/reader035/viewer/2022071218/60520f910f49897f76457323/html5/thumbnails/19.jpg)
21 April 2018 Linux Open Admin Days
Podkind: PodapiVersion: v1metadata: name: task-pv-podspec: volumes: - name: public-iso-images persistentVolumeClaim: claimName: iso-images containers: - name: public-downloads image: nginx ports: - containerPort: 80 name: "http-server" volumeMounts: - mountPath: "/usr/share/nginx/html" name: public-iso-images
![Page 20: Using Gluster for your Storage Workloads€¦ · 21 April 2018 Linux Open Admin Days Gluster Basics Software Defined Storage Scale-out, distributed and high-available Designed as](https://reader035.vdocument.in/reader035/viewer/2022071218/60520f910f49897f76457323/html5/thumbnails/20.jpg)
21 April 2018 Linux Open Admin Days
Upcoming Kubernetes Features
● Cloning of PVCs● Reduced storage requirements with arbiter● Snapshot functionality● ...
![Page 21: Using Gluster for your Storage Workloads€¦ · 21 April 2018 Linux Open Admin Days Gluster Basics Software Defined Storage Scale-out, distributed and high-available Designed as](https://reader035.vdocument.in/reader035/viewer/2022071218/60520f910f49897f76457323/html5/thumbnails/21.jpg)
Thank you for your attention!
References:● Gluster Homepage (https://gluster.org)● Red Hat Gluster Storage 3.3 Administration Guide (http://red.ht/2tqOaqB)● Gluster Docs (http://docs.gluster.org)● Gluster Community (https://www.gluster.org/community/)
This presentation can be found at https://people.redhat.com/ndevos/talks/2018-04-LOADays