SlideShare a Scribd company logo
1 of 37
Download to read offline
Atin Mukherjee
GlusterFS Hacker
GlusterFS – Architecture & Roadmap
GlusterFS Meetup
Feb 2015
07/02/2015 GlusterFS Meetup
Agenda
● Introduction in the Gluster community
● Current stable releases
● What is GlusterFS?
● Architecture
● GlusterFS 3.6 Features
● GlusterFS 3.7 Features planned
● GlusterFS 4.0 and beyond
● Q&A
07/02/2015 GlusterFS Meetup
Introduction in Gluster community
● Different roles
● Users, testers, supporters, developers, editors, ...
● Different organizations
● Products based on / containing GlusterFS
● Service, consulting and support
● Integration in other (Open Source) projects
07/02/2015 GlusterFS Meetup
Introduction in Gluster community
● Regular IRC meetings
● Discussions and support over mailinglists and on IRC
● Providing packages (RPMs, DEBs)
● Work with different Linux and BSD distributions to
improve portability and availability
● Infrastructure hosting for Gluster related projects
● Gerrit and Jenkins for code review and testing
● Gluster Forge for git/wiki hosting of projects
07/02/2015 GlusterFS Meetup
Introduction in Gluster community
● Some numbers from 2014
● Approx. 175 IRC participants
● Two main mailinglists reach ~600 emails/month
● 100/60 active users/devs posting to the lists
● Around 2200 patches merged in the master branch
● Patches of ~90 developers got included
07/02/2015 GlusterFS Meetup
Current stable releases
● Maintenance of three minor releases
● 3.6, 3.5 and 3.4
● Bugfixes only, non-intrusive features on high demand
● Patches get backported to fix reported bugs
07/02/2015 GlusterFS Meetup
Integration with glusterfs
● More projects built and enhanced around the
GlusterFS ecosystem – dockit, gluster-deploy,
gluster-nagios, glusterfsiostat, puppet-gluster to
name a few.
● Improved integration with broader ecosystem
projects like Ambari, NFS-Ganesha,
OpenStack, oVirt and Samba.
07/02/2015 GlusterFS Meetup
What is GlusterFS?
●
A general purpose scale-out distributed file system.
●
Aggregates storage exports over network interconnect to
provide a single unified namespace.
●
Filesystem is stackable and completely in userspace.
●
Layered on disk file systems that support extended
attributes.
07/02/2015 GlusterFS Meetup
Typical GlusterFS Deployment
Global namespace
Scale-out storage
building blocks
Supports
thousands of clients
Access using
GlusterFS native,
NFS, SMB and HTTP
protocols
Linear performance
scaling
07/02/2015 GlusterFS Meetup
GlusterFS Architecture – Foundations
● Software only, runs on commodity hardware
● No external metadata servers
● Scale-out with Elasticity
● Extensible and modular
● Deployment agnostic
● Unified access
● Largely POSIX compliant
07/02/2015 GlusterFS Meetup
Concepts & Algorithms
07/02/2015 GlusterFS Meetup
GlusterFS concepts – Trusted Storage Pool
●
Trusted Storage Pool (cluster) is a collection of storage servers.
●
Trusted Storage Pool is formed by invitation – “probe” a new
member from the cluster and not vice versa.
●
Logical partition for all data and management operations.
●
Membership information used for determining quorum.
●
Members can be dynamically added and removed from the
pool.
07/02/2015 GlusterFS Meetup
GlusterFS concepts – Trusted Storage Pool
Node2
Probe
Probe
accepted
Node 1 and Node 2 are peers in a trusted storage pool
Node2Node1
Node1
07/02/2015 GlusterFS Meetup
GlusterFS concepts – Trusted Storage Pool
Node1 Node2 Node3Node2Node1 Trusted Storage Pool
Node3Node2Node1
Detach
07/02/2015 GlusterFS Meetup

A brick is the combination of a node and an export directory – for e.g.
hostname:/dir

Each brick inherits limits of the underlying filesystem

No limit on the number bricks per node

Ideally, each brick in a cluster should be of the same size
/export3 /export3 /export3
Storage Node
/export1
Storage Node
/export2
/export1
/export2
/export4
/export5
Storage Node
/export1
/export2
3 bricks 5 bricks 3 bricks
GlusterFS concepts - Bricks
07/02/2015 GlusterFS Meetup
GlusterFS concepts - Volumes
● A volume is a logical collection of bricks.
● Volume is identified by an administrator provided name.
● Volume is a mountable entity and the volume name is
provided at the time of mounting.
– mount -t glusterfs server1:/<volname> /my/mnt/point
● Bricks from the same node can be part of different
volumes
07/02/2015 GlusterFS Meetup
GlusterFS concepts - Volumes
Node2Node1 Node3
/export/brick1
/export/brick2
/export/brick1
/export/brick2
/export/brick1
/export/brick2
music
Videos
07/02/2015 GlusterFS Meetup
Volume Types
➢
Type of a volume is specified at the time of volume
creation
➢
Volume type determines how and where data is placed
➢
Following volume types are supported in glusterfs:
a) Distribute
b) Stripe
c) Replication
d) Distributed Replicate
e) Striped Replicate
➢
f) Distributed Striped Replicate
➢
g) Dispersed
➢
h) Distributed dispersed
07/02/2015 GlusterFS Meetup
Distributed Replicated Volume
07/02/2015 GlusterFS Meetup
GlusterFS 3.6
● Better SSL support
● Heterogenous bricks
● Erasure coding
● Meta translator
● Volume snapshots and user-servicability
07/02/2015 GlusterFS Meetup
GlusterFS 3.6 contd.
● AFRv2
● RDMA transport for GlusterFS volumes
07/02/2015 GlusterFS Meetup
Better SSL support
● SSL support for management plane
● SSL for authorizing and authenticating access
to volumes.
● Paves way for fine-grained access to volumes
in the storage pool*.
● Makes self-service style management at a
volume-level possible*.
* - Not implemented yet; technically possible
07/02/2015 GlusterFS Meetup
Heterogenous bricks
● Allows distribution of data to account for bricks
of different sizes
● Uniform distribution can potentially penalise
smaller bricks with more allocations
● Changes were made to the DHT (distribute)
translator
07/02/2015 GlusterFS Meetup
Erasure Coding
● Provides resilience to brick failures using erasure
codes
● Configurable redundancy and fault tolerance
● Reduces disk space consumption in comparison to
replicated volumes
07/02/2015 GlusterFS Meetup
Meta xlator
● Provides a /proc like interface to GlusterFS
runtime
● Allows users to inspect internals of translators
present in GlusterFS runtime 'stack'.
● For e.g, cat /mnt/glusterfs/.meta/version
to fetch the version of glusterfs mount process
● tree /mnt/glusterfs/.meta/graphs/active
07/02/2015 GlusterFS Meetup
AFRv2
● Refactored AFR implementation
● Improvements in healing process' performance
● Paves way for better introspection into
thehealing process. More on 3.7
07/02/2015 GlusterFS Meetup
RDMA Support
● Minor fixes that made RDMA transport more
usable for GlusterFS volumes
07/02/2015 GlusterFS Meetup
GlusterFS 3.7
● Small file performance
● Data classification
● Bit­rot detection
● Better OpenStack integration – for e.g Manila
07/02/2015 GlusterFS Meetup
Small file performance
● Multi­threaded epoll – Transport layer
● Caching stat and xattr calls on small files –
Storage layer
● Migrate .glusterfs to SSDs – Physical layer
● Batching of RPCs per file access
07/02/2015 GlusterFS Meetup
Data Classification
● Mapping file characteristics to subvolume
characteristics
● File characteristics – size, age, access rate,
type (extension)
● Subvolume characteristics – physical location,
storage type (SSD, disk), encoding method
(deduplicated, erasure coded)
● User provided mappings via 'tags'
● Implementation using 'DHT over DHT' pattern
07/02/2015 GlusterFS Meetup
Bit­Rot detection
● Silent disk corruption
● Useful for archival or WORM workloads
● Lazy, policy­based and incremental checksum
computation
07/02/2015 GlusterFS Meetup
Better Openstack integration
● Manila – File share as a service
● Cinder – Block storage as a service
● Swift – Object storage as a service
● Sahara – Hadoop as a service
● For Kilo release
07/02/2015 GlusterFS Meetup
GlusterFS 4.0 Vision
● To be the best in class distributed commodity
storage with unified access of data
07/02/2015 GlusterFS Meetup
GlusterFS 4.0 Vision
● Community scaling – design by community
● Node scaling
● Technology scaling
● Development process scaling
07/02/2015 GlusterFS Meetup
GlusterFS 4.0 Vision
● 'Thousand node glusterd'
● DHT scalability
● NSR – Log based, chain replication
● Better brick management
● Split Network
● ... and many more. See
http://www.gluster.org/community/documentation/index.php/Planning40
07/02/2015 GlusterFS Meetup
Q&A
07/02/2015 GlusterFS Meetup
Resources
Mailing lists:
Gluster-users@gluster.org
Gluster-devel@gluster.org
IRC:
#gluster and #gluster-dev on freenode
Links:
http://www.gluster.org
http://hekafs.org
http://forge.gluster.org
http://www.gluster.org/community/documentation/index.php/Arch

More Related Content

What's hot

20160401 guster-roadmap
20160401 guster-roadmap20160401 guster-roadmap
20160401 guster-roadmapGluster.org
 
Red Hat Gluster Storage - Direction, Roadmap and Use-Cases
Red Hat Gluster Storage - Direction, Roadmap and Use-CasesRed Hat Gluster Storage - Direction, Roadmap and Use-Cases
Red Hat Gluster Storage - Direction, Roadmap and Use-CasesRed_Hat_Storage
 
Tiering barcelona
Tiering barcelonaTiering barcelona
Tiering barcelonaGluster.org
 
Gluster intro-tdose
Gluster intro-tdoseGluster intro-tdose
Gluster intro-tdoseGluster.org
 
20160130 Gluster-roadmap
20160130 Gluster-roadmap20160130 Gluster-roadmap
20160130 Gluster-roadmapGluster.org
 
Integrating gluster fs,_qemu_and_ovirt-vijay_bellur-linuxcon_eu_2013
Integrating gluster fs,_qemu_and_ovirt-vijay_bellur-linuxcon_eu_2013Integrating gluster fs,_qemu_and_ovirt-vijay_bellur-linuxcon_eu_2013
Integrating gluster fs,_qemu_and_ovirt-vijay_bellur-linuxcon_eu_2013Gluster.org
 
GlusterFS Containers
GlusterFS ContainersGlusterFS Containers
GlusterFS ContainersMohamed Ashiq
 
OSBConf 2015 | Scale out backups with bareos and gluster by niels de vos
OSBConf 2015 | Scale out backups with bareos and gluster by niels de vosOSBConf 2015 | Scale out backups with bareos and gluster by niels de vos
OSBConf 2015 | Scale out backups with bareos and gluster by niels de vosNETWAYS
 
Scale out backups-with_bareos_and_gluster
Scale out backups-with_bareos_and_glusterScale out backups-with_bareos_and_gluster
Scale out backups-with_bareos_and_glusterGluster.org
 
Gluster technical overview
Gluster technical overviewGluster technical overview
Gluster technical overviewGluster.org
 
Smb gluster devmar2013
Smb gluster devmar2013Smb gluster devmar2013
Smb gluster devmar2013Gluster.org
 
Integrating gluster fs,_qemu_and_ovirt-vijay_bellur-linuxcon_eu_2013
Integrating gluster fs,_qemu_and_ovirt-vijay_bellur-linuxcon_eu_2013Integrating gluster fs,_qemu_and_ovirt-vijay_bellur-linuxcon_eu_2013
Integrating gluster fs,_qemu_and_ovirt-vijay_bellur-linuxcon_eu_2013Gluster.org
 
Gluster d thread_synchronization_using_urcu_lca2016
Gluster d thread_synchronization_using_urcu_lca2016Gluster d thread_synchronization_using_urcu_lca2016
Gluster d thread_synchronization_using_urcu_lca2016Gluster.org
 
GlusterFs Architecture & Roadmap - LinuxCon EU 2013
GlusterFs Architecture & Roadmap - LinuxCon EU 2013GlusterFs Architecture & Roadmap - LinuxCon EU 2013
GlusterFs Architecture & Roadmap - LinuxCon EU 2013Gluster.org
 
State of the_gluster_-_lceu
State of the_gluster_-_lceuState of the_gluster_-_lceu
State of the_gluster_-_lceuGluster.org
 
Gluster fs current_features_and_roadmap
Gluster fs current_features_and_roadmapGluster fs current_features_and_roadmap
Gluster fs current_features_and_roadmapGluster.org
 

What's hot (20)

20160401 guster-roadmap
20160401 guster-roadmap20160401 guster-roadmap
20160401 guster-roadmap
 
Red Hat Gluster Storage - Direction, Roadmap and Use-Cases
Red Hat Gluster Storage - Direction, Roadmap and Use-CasesRed Hat Gluster Storage - Direction, Roadmap and Use-Cases
Red Hat Gluster Storage - Direction, Roadmap and Use-Cases
 
Tiering barcelona
Tiering barcelonaTiering barcelona
Tiering barcelona
 
Gluster intro-tdose
Gluster intro-tdoseGluster intro-tdose
Gluster intro-tdose
 
20160130 Gluster-roadmap
20160130 Gluster-roadmap20160130 Gluster-roadmap
20160130 Gluster-roadmap
 
Integrating gluster fs,_qemu_and_ovirt-vijay_bellur-linuxcon_eu_2013
Integrating gluster fs,_qemu_and_ovirt-vijay_bellur-linuxcon_eu_2013Integrating gluster fs,_qemu_and_ovirt-vijay_bellur-linuxcon_eu_2013
Integrating gluster fs,_qemu_and_ovirt-vijay_bellur-linuxcon_eu_2013
 
GlusterFS Containers
GlusterFS ContainersGlusterFS Containers
GlusterFS Containers
 
Gluster d2
Gluster d2Gluster d2
Gluster d2
 
OSBConf 2015 | Scale out backups with bareos and gluster by niels de vos
OSBConf 2015 | Scale out backups with bareos and gluster by niels de vosOSBConf 2015 | Scale out backups with bareos and gluster by niels de vos
OSBConf 2015 | Scale out backups with bareos and gluster by niels de vos
 
Scale out backups-with_bareos_and_gluster
Scale out backups-with_bareos_and_glusterScale out backups-with_bareos_and_gluster
Scale out backups-with_bareos_and_gluster
 
Dedupe nmamit
Dedupe nmamitDedupe nmamit
Dedupe nmamit
 
Gluster technical overview
Gluster technical overviewGluster technical overview
Gluster technical overview
 
Gdeploy 2.0
Gdeploy 2.0Gdeploy 2.0
Gdeploy 2.0
 
Qemu gluster fs
Qemu gluster fsQemu gluster fs
Qemu gluster fs
 
Smb gluster devmar2013
Smb gluster devmar2013Smb gluster devmar2013
Smb gluster devmar2013
 
Integrating gluster fs,_qemu_and_ovirt-vijay_bellur-linuxcon_eu_2013
Integrating gluster fs,_qemu_and_ovirt-vijay_bellur-linuxcon_eu_2013Integrating gluster fs,_qemu_and_ovirt-vijay_bellur-linuxcon_eu_2013
Integrating gluster fs,_qemu_and_ovirt-vijay_bellur-linuxcon_eu_2013
 
Gluster d thread_synchronization_using_urcu_lca2016
Gluster d thread_synchronization_using_urcu_lca2016Gluster d thread_synchronization_using_urcu_lca2016
Gluster d thread_synchronization_using_urcu_lca2016
 
GlusterFs Architecture & Roadmap - LinuxCon EU 2013
GlusterFs Architecture & Roadmap - LinuxCon EU 2013GlusterFs Architecture & Roadmap - LinuxCon EU 2013
GlusterFs Architecture & Roadmap - LinuxCon EU 2013
 
State of the_gluster_-_lceu
State of the_gluster_-_lceuState of the_gluster_-_lceu
State of the_gluster_-_lceu
 
Gluster fs current_features_and_roadmap
Gluster fs current_features_and_roadmapGluster fs current_features_and_roadmap
Gluster fs current_features_and_roadmap
 

Similar to Gluster fs architecture_&_roadmap_atin_punemeetup_2015

Gluster fs current_features_and_roadmap
Gluster fs current_features_and_roadmapGluster fs current_features_and_roadmap
Gluster fs current_features_and_roadmapGluster.org
 
Gluster fs architecture_future_directions_tlv
Gluster fs architecture_future_directions_tlvGluster fs architecture_future_directions_tlv
Gluster fs architecture_future_directions_tlvSahina Bose
 
Gluster fs architecture_future_directions_tlv
Gluster fs architecture_future_directions_tlvGluster fs architecture_future_directions_tlv
Gluster fs architecture_future_directions_tlvSahina Bose
 
Gluster fs architecture_&amp;_roadmap-vijay_bellur-linuxcon_eu_2013
Gluster fs architecture_&amp;_roadmap-vijay_bellur-linuxcon_eu_2013Gluster fs architecture_&amp;_roadmap-vijay_bellur-linuxcon_eu_2013
Gluster fs architecture_&amp;_roadmap-vijay_bellur-linuxcon_eu_2013Gluster.org
 
GlusterFS and Openstack Storage
GlusterFS and Openstack StorageGlusterFS and Openstack Storage
GlusterFS and Openstack StorageDeepak Shetty
 
20160401 guster-roadmap
20160401 guster-roadmap20160401 guster-roadmap
20160401 guster-roadmapGluster.org
 
GlusterFS Talk for CentOS Dojo Bangalore
GlusterFS Talk for CentOS Dojo BangaloreGlusterFS Talk for CentOS Dojo Bangalore
GlusterFS Talk for CentOS Dojo BangaloreRaghavendra Talur
 
Introducing gluster filesystem by aditya
Introducing gluster filesystem by adityaIntroducing gluster filesystem by aditya
Introducing gluster filesystem by adityaAditya Chhikara
 
Gluster.next feb-2016
Gluster.next feb-2016Gluster.next feb-2016
Gluster.next feb-2016Vijay Bellur
 
Gluster fs hadoop_fifth-elephant
Gluster fs hadoop_fifth-elephantGluster fs hadoop_fifth-elephant
Gluster fs hadoop_fifth-elephantGluster.org
 
Glusterfs and openstack
Glusterfs  and openstackGlusterfs  and openstack
Glusterfs and openstackopenstackindia
 
The Future of GlusterFS and Gluster.org
The Future of GlusterFS and Gluster.orgThe Future of GlusterFS and Gluster.org
The Future of GlusterFS and Gluster.orgJohn Mark Walker
 
Scale out backups-with_bareos_and_gluster
Scale out backups-with_bareos_and_glusterScale out backups-with_bareos_and_gluster
Scale out backups-with_bareos_and_glusterGluster.org
 
Gluster ovirt integration_gluster_meetup_pune_2015
Gluster ovirt integration_gluster_meetup_pune_2015Gluster ovirt integration_gluster_meetup_pune_2015
Gluster ovirt integration_gluster_meetup_pune_2015Ramesh Nachimuthu
 
Gluster.community.day.2013
Gluster.community.day.2013Gluster.community.day.2013
Gluster.community.day.2013Udo Seidel
 
Gluster fs for_storage_admins_glusterfs_meetup_07_feb
Gluster fs for_storage_admins_glusterfs_meetup_07_febGluster fs for_storage_admins_glusterfs_meetup_07_feb
Gluster fs for_storage_admins_glusterfs_meetup_07_febbipin kunal
 
On demand file-caching_-_gustavo_brand
On demand file-caching_-_gustavo_brandOn demand file-caching_-_gustavo_brand
On demand file-caching_-_gustavo_brandGluster.org
 

Similar to Gluster fs architecture_&_roadmap_atin_punemeetup_2015 (20)

Gluster fs current_features_and_roadmap
Gluster fs current_features_and_roadmapGluster fs current_features_and_roadmap
Gluster fs current_features_and_roadmap
 
Gluster fs architecture_future_directions_tlv
Gluster fs architecture_future_directions_tlvGluster fs architecture_future_directions_tlv
Gluster fs architecture_future_directions_tlv
 
Gluster fs architecture_future_directions_tlv
Gluster fs architecture_future_directions_tlvGluster fs architecture_future_directions_tlv
Gluster fs architecture_future_directions_tlv
 
Gluster fs architecture_&amp;_roadmap-vijay_bellur-linuxcon_eu_2013
Gluster fs architecture_&amp;_roadmap-vijay_bellur-linuxcon_eu_2013Gluster fs architecture_&amp;_roadmap-vijay_bellur-linuxcon_eu_2013
Gluster fs architecture_&amp;_roadmap-vijay_bellur-linuxcon_eu_2013
 
GlusterFS And Big Data
GlusterFS And Big DataGlusterFS And Big Data
GlusterFS And Big Data
 
GlusterFS and Openstack Storage
GlusterFS and Openstack StorageGlusterFS and Openstack Storage
GlusterFS and Openstack Storage
 
20160401 guster-roadmap
20160401 guster-roadmap20160401 guster-roadmap
20160401 guster-roadmap
 
vBACD - Distributed Petabyte-Scale Cloud Storage with GlusterFS - 2/28
vBACD - Distributed Petabyte-Scale Cloud Storage with GlusterFS - 2/28vBACD - Distributed Petabyte-Scale Cloud Storage with GlusterFS - 2/28
vBACD - Distributed Petabyte-Scale Cloud Storage with GlusterFS - 2/28
 
GlusterFS Talk for CentOS Dojo Bangalore
GlusterFS Talk for CentOS Dojo BangaloreGlusterFS Talk for CentOS Dojo Bangalore
GlusterFS Talk for CentOS Dojo Bangalore
 
Introducing gluster filesystem by aditya
Introducing gluster filesystem by adityaIntroducing gluster filesystem by aditya
Introducing gluster filesystem by aditya
 
Gluster.next feb-2016
Gluster.next feb-2016Gluster.next feb-2016
Gluster.next feb-2016
 
Gluster fs hadoop_fifth-elephant
Gluster fs hadoop_fifth-elephantGluster fs hadoop_fifth-elephant
Gluster fs hadoop_fifth-elephant
 
Glusterfs and openstack
Glusterfs  and openstackGlusterfs  and openstack
Glusterfs and openstack
 
Gluster containers!
Gluster containers!Gluster containers!
Gluster containers!
 
The Future of GlusterFS and Gluster.org
The Future of GlusterFS and Gluster.orgThe Future of GlusterFS and Gluster.org
The Future of GlusterFS and Gluster.org
 
Scale out backups-with_bareos_and_gluster
Scale out backups-with_bareos_and_glusterScale out backups-with_bareos_and_gluster
Scale out backups-with_bareos_and_gluster
 
Gluster ovirt integration_gluster_meetup_pune_2015
Gluster ovirt integration_gluster_meetup_pune_2015Gluster ovirt integration_gluster_meetup_pune_2015
Gluster ovirt integration_gluster_meetup_pune_2015
 
Gluster.community.day.2013
Gluster.community.day.2013Gluster.community.day.2013
Gluster.community.day.2013
 
Gluster fs for_storage_admins_glusterfs_meetup_07_feb
Gluster fs for_storage_admins_glusterfs_meetup_07_febGluster fs for_storage_admins_glusterfs_meetup_07_feb
Gluster fs for_storage_admins_glusterfs_meetup_07_feb
 
On demand file-caching_-_gustavo_brand
On demand file-caching_-_gustavo_brandOn demand file-caching_-_gustavo_brand
On demand file-caching_-_gustavo_brand
 

More from Atin Mukherjee

Glusterd_thread_synchronization_using_urcu_lca2016
Glusterd_thread_synchronization_using_urcu_lca2016Glusterd_thread_synchronization_using_urcu_lca2016
Glusterd_thread_synchronization_using_urcu_lca2016Atin Mukherjee
 
Thread synchronization in GlusterD using URCU
Thread synchronization in GlusterD using URCUThread synchronization in GlusterD using URCU
Thread synchronization in GlusterD using URCUAtin Mukherjee
 
Manging scalability of distributed system
Manging scalability of distributed systemManging scalability of distributed system
Manging scalability of distributed systemAtin Mukherjee
 
Consensus algo with_distributed_key_value_store_in_distributed_system
Consensus algo with_distributed_key_value_store_in_distributed_systemConsensus algo with_distributed_key_value_store_in_distributed_system
Consensus algo with_distributed_key_value_store_in_distributed_systemAtin Mukherjee
 

More from Atin Mukherjee (6)

Ready to go
Ready to goReady to go
Ready to go
 
Glusterd_thread_synchronization_using_urcu_lca2016
Glusterd_thread_synchronization_using_urcu_lca2016Glusterd_thread_synchronization_using_urcu_lca2016
Glusterd_thread_synchronization_using_urcu_lca2016
 
Gluster d2.0
Gluster d2.0Gluster d2.0
Gluster d2.0
 
Thread synchronization in GlusterD using URCU
Thread synchronization in GlusterD using URCUThread synchronization in GlusterD using URCU
Thread synchronization in GlusterD using URCU
 
Manging scalability of distributed system
Manging scalability of distributed systemManging scalability of distributed system
Manging scalability of distributed system
 
Consensus algo with_distributed_key_value_store_in_distributed_system
Consensus algo with_distributed_key_value_store_in_distributed_systemConsensus algo with_distributed_key_value_store_in_distributed_system
Consensus algo with_distributed_key_value_store_in_distributed_system
 

Recently uploaded

miladyskindiseases-200705210221 2.!!pptx
miladyskindiseases-200705210221 2.!!pptxmiladyskindiseases-200705210221 2.!!pptx
miladyskindiseases-200705210221 2.!!pptxCarrieButtitta
 
Open Source Camp Kubernetes 2024 | Monitoring Kubernetes With Icinga by Eric ...
Open Source Camp Kubernetes 2024 | Monitoring Kubernetes With Icinga by Eric ...Open Source Camp Kubernetes 2024 | Monitoring Kubernetes With Icinga by Eric ...
Open Source Camp Kubernetes 2024 | Monitoring Kubernetes With Icinga by Eric ...NETWAYS
 
Philippine History cavite Mutiny Report.ppt
Philippine History cavite Mutiny Report.pptPhilippine History cavite Mutiny Report.ppt
Philippine History cavite Mutiny Report.pptssuser319dad
 
Presentation for the Strategic Dialogue on the Future of Agriculture, Brussel...
Presentation for the Strategic Dialogue on the Future of Agriculture, Brussel...Presentation for the Strategic Dialogue on the Future of Agriculture, Brussel...
Presentation for the Strategic Dialogue on the Future of Agriculture, Brussel...Krijn Poppe
 
Event 4 Introduction to Open Source.pptx
Event 4 Introduction to Open Source.pptxEvent 4 Introduction to Open Source.pptx
Event 4 Introduction to Open Source.pptxaryanv1753
 
Gaps, Issues and Challenges in the Implementation of Mother Tongue Based-Mult...
Gaps, Issues and Challenges in the Implementation of Mother Tongue Based-Mult...Gaps, Issues and Challenges in the Implementation of Mother Tongue Based-Mult...
Gaps, Issues and Challenges in the Implementation of Mother Tongue Based-Mult...marjmae69
 
Genesis part 2 Isaiah Scudder 04-24-2024.pptx
Genesis part 2 Isaiah Scudder 04-24-2024.pptxGenesis part 2 Isaiah Scudder 04-24-2024.pptx
Genesis part 2 Isaiah Scudder 04-24-2024.pptxFamilyWorshipCenterD
 
NATIONAL ANTHEMS OF AFRICA (National Anthems of Africa)
NATIONAL ANTHEMS OF AFRICA (National Anthems of Africa)NATIONAL ANTHEMS OF AFRICA (National Anthems of Africa)
NATIONAL ANTHEMS OF AFRICA (National Anthems of Africa)Basil Achie
 
Dutch Power - 26 maart 2024 - Henk Kras - Circular Plastics
Dutch Power - 26 maart 2024 - Henk Kras - Circular PlasticsDutch Power - 26 maart 2024 - Henk Kras - Circular Plastics
Dutch Power - 26 maart 2024 - Henk Kras - Circular PlasticsDutch Power
 
call girls in delhi malviya nagar @9811711561@
call girls in delhi malviya nagar @9811711561@call girls in delhi malviya nagar @9811711561@
call girls in delhi malviya nagar @9811711561@vikas rana
 
The Ten Facts About People With Autism Presentation
The Ten Facts About People With Autism PresentationThe Ten Facts About People With Autism Presentation
The Ten Facts About People With Autism PresentationNathan Young
 
Call Girls In Aerocity 🤳 Call Us +919599264170
Call Girls In Aerocity 🤳 Call Us +919599264170Call Girls In Aerocity 🤳 Call Us +919599264170
Call Girls In Aerocity 🤳 Call Us +919599264170Escort Service
 
Open Source Strategy in Logistics 2015_Henrik Hankedvz-d-nl-log-conference.pdf
Open Source Strategy in Logistics 2015_Henrik Hankedvz-d-nl-log-conference.pdfOpen Source Strategy in Logistics 2015_Henrik Hankedvz-d-nl-log-conference.pdf
Open Source Strategy in Logistics 2015_Henrik Hankedvz-d-nl-log-conference.pdfhenrik385807
 
Genshin Impact PPT Template by EaTemp.pptx
Genshin Impact PPT Template by EaTemp.pptxGenshin Impact PPT Template by EaTemp.pptx
Genshin Impact PPT Template by EaTemp.pptxJohnree4
 
SBFT Tool Competition 2024 -- Python Test Case Generation Track
SBFT Tool Competition 2024 -- Python Test Case Generation TrackSBFT Tool Competition 2024 -- Python Test Case Generation Track
SBFT Tool Competition 2024 -- Python Test Case Generation TrackSebastiano Panichella
 
Exploring protein-protein interactions by Weak Affinity Chromatography (WAC) ...
Exploring protein-protein interactions by Weak Affinity Chromatography (WAC) ...Exploring protein-protein interactions by Weak Affinity Chromatography (WAC) ...
Exploring protein-protein interactions by Weak Affinity Chromatography (WAC) ...Salam Al-Karadaghi
 
OSCamp Kubernetes 2024 | Zero-Touch OS-Infrastruktur für Container und Kubern...
OSCamp Kubernetes 2024 | Zero-Touch OS-Infrastruktur für Container und Kubern...OSCamp Kubernetes 2024 | Zero-Touch OS-Infrastruktur für Container und Kubern...
OSCamp Kubernetes 2024 | Zero-Touch OS-Infrastruktur für Container und Kubern...NETWAYS
 
Call Girls in Rohini Delhi 💯Call Us 🔝8264348440🔝
Call Girls in Rohini Delhi 💯Call Us 🔝8264348440🔝Call Girls in Rohini Delhi 💯Call Us 🔝8264348440🔝
Call Girls in Rohini Delhi 💯Call Us 🔝8264348440🔝soniya singh
 
PHYSICS PROJECT BY MSC - NANOTECHNOLOGY
PHYSICS PROJECT BY MSC  - NANOTECHNOLOGYPHYSICS PROJECT BY MSC  - NANOTECHNOLOGY
PHYSICS PROJECT BY MSC - NANOTECHNOLOGYpruthirajnayak525
 
The 3rd Intl. Workshop on NL-based Software Engineering
The 3rd Intl. Workshop on NL-based Software EngineeringThe 3rd Intl. Workshop on NL-based Software Engineering
The 3rd Intl. Workshop on NL-based Software EngineeringSebastiano Panichella
 

Recently uploaded (20)

miladyskindiseases-200705210221 2.!!pptx
miladyskindiseases-200705210221 2.!!pptxmiladyskindiseases-200705210221 2.!!pptx
miladyskindiseases-200705210221 2.!!pptx
 
Open Source Camp Kubernetes 2024 | Monitoring Kubernetes With Icinga by Eric ...
Open Source Camp Kubernetes 2024 | Monitoring Kubernetes With Icinga by Eric ...Open Source Camp Kubernetes 2024 | Monitoring Kubernetes With Icinga by Eric ...
Open Source Camp Kubernetes 2024 | Monitoring Kubernetes With Icinga by Eric ...
 
Philippine History cavite Mutiny Report.ppt
Philippine History cavite Mutiny Report.pptPhilippine History cavite Mutiny Report.ppt
Philippine History cavite Mutiny Report.ppt
 
Presentation for the Strategic Dialogue on the Future of Agriculture, Brussel...
Presentation for the Strategic Dialogue on the Future of Agriculture, Brussel...Presentation for the Strategic Dialogue on the Future of Agriculture, Brussel...
Presentation for the Strategic Dialogue on the Future of Agriculture, Brussel...
 
Event 4 Introduction to Open Source.pptx
Event 4 Introduction to Open Source.pptxEvent 4 Introduction to Open Source.pptx
Event 4 Introduction to Open Source.pptx
 
Gaps, Issues and Challenges in the Implementation of Mother Tongue Based-Mult...
Gaps, Issues and Challenges in the Implementation of Mother Tongue Based-Mult...Gaps, Issues and Challenges in the Implementation of Mother Tongue Based-Mult...
Gaps, Issues and Challenges in the Implementation of Mother Tongue Based-Mult...
 
Genesis part 2 Isaiah Scudder 04-24-2024.pptx
Genesis part 2 Isaiah Scudder 04-24-2024.pptxGenesis part 2 Isaiah Scudder 04-24-2024.pptx
Genesis part 2 Isaiah Scudder 04-24-2024.pptx
 
NATIONAL ANTHEMS OF AFRICA (National Anthems of Africa)
NATIONAL ANTHEMS OF AFRICA (National Anthems of Africa)NATIONAL ANTHEMS OF AFRICA (National Anthems of Africa)
NATIONAL ANTHEMS OF AFRICA (National Anthems of Africa)
 
Dutch Power - 26 maart 2024 - Henk Kras - Circular Plastics
Dutch Power - 26 maart 2024 - Henk Kras - Circular PlasticsDutch Power - 26 maart 2024 - Henk Kras - Circular Plastics
Dutch Power - 26 maart 2024 - Henk Kras - Circular Plastics
 
call girls in delhi malviya nagar @9811711561@
call girls in delhi malviya nagar @9811711561@call girls in delhi malviya nagar @9811711561@
call girls in delhi malviya nagar @9811711561@
 
The Ten Facts About People With Autism Presentation
The Ten Facts About People With Autism PresentationThe Ten Facts About People With Autism Presentation
The Ten Facts About People With Autism Presentation
 
Call Girls In Aerocity 🤳 Call Us +919599264170
Call Girls In Aerocity 🤳 Call Us +919599264170Call Girls In Aerocity 🤳 Call Us +919599264170
Call Girls In Aerocity 🤳 Call Us +919599264170
 
Open Source Strategy in Logistics 2015_Henrik Hankedvz-d-nl-log-conference.pdf
Open Source Strategy in Logistics 2015_Henrik Hankedvz-d-nl-log-conference.pdfOpen Source Strategy in Logistics 2015_Henrik Hankedvz-d-nl-log-conference.pdf
Open Source Strategy in Logistics 2015_Henrik Hankedvz-d-nl-log-conference.pdf
 
Genshin Impact PPT Template by EaTemp.pptx
Genshin Impact PPT Template by EaTemp.pptxGenshin Impact PPT Template by EaTemp.pptx
Genshin Impact PPT Template by EaTemp.pptx
 
SBFT Tool Competition 2024 -- Python Test Case Generation Track
SBFT Tool Competition 2024 -- Python Test Case Generation TrackSBFT Tool Competition 2024 -- Python Test Case Generation Track
SBFT Tool Competition 2024 -- Python Test Case Generation Track
 
Exploring protein-protein interactions by Weak Affinity Chromatography (WAC) ...
Exploring protein-protein interactions by Weak Affinity Chromatography (WAC) ...Exploring protein-protein interactions by Weak Affinity Chromatography (WAC) ...
Exploring protein-protein interactions by Weak Affinity Chromatography (WAC) ...
 
OSCamp Kubernetes 2024 | Zero-Touch OS-Infrastruktur für Container und Kubern...
OSCamp Kubernetes 2024 | Zero-Touch OS-Infrastruktur für Container und Kubern...OSCamp Kubernetes 2024 | Zero-Touch OS-Infrastruktur für Container und Kubern...
OSCamp Kubernetes 2024 | Zero-Touch OS-Infrastruktur für Container und Kubern...
 
Call Girls in Rohini Delhi 💯Call Us 🔝8264348440🔝
Call Girls in Rohini Delhi 💯Call Us 🔝8264348440🔝Call Girls in Rohini Delhi 💯Call Us 🔝8264348440🔝
Call Girls in Rohini Delhi 💯Call Us 🔝8264348440🔝
 
PHYSICS PROJECT BY MSC - NANOTECHNOLOGY
PHYSICS PROJECT BY MSC  - NANOTECHNOLOGYPHYSICS PROJECT BY MSC  - NANOTECHNOLOGY
PHYSICS PROJECT BY MSC - NANOTECHNOLOGY
 
The 3rd Intl. Workshop on NL-based Software Engineering
The 3rd Intl. Workshop on NL-based Software EngineeringThe 3rd Intl. Workshop on NL-based Software Engineering
The 3rd Intl. Workshop on NL-based Software Engineering
 

Gluster fs architecture_&_roadmap_atin_punemeetup_2015

  • 1. Atin Mukherjee GlusterFS Hacker GlusterFS – Architecture & Roadmap GlusterFS Meetup Feb 2015
  • 2. 07/02/2015 GlusterFS Meetup Agenda ● Introduction in the Gluster community ● Current stable releases ● What is GlusterFS? ● Architecture ● GlusterFS 3.6 Features ● GlusterFS 3.7 Features planned ● GlusterFS 4.0 and beyond ● Q&A
  • 3. 07/02/2015 GlusterFS Meetup Introduction in Gluster community ● Different roles ● Users, testers, supporters, developers, editors, ... ● Different organizations ● Products based on / containing GlusterFS ● Service, consulting and support ● Integration in other (Open Source) projects
  • 4. 07/02/2015 GlusterFS Meetup Introduction in Gluster community ● Regular IRC meetings ● Discussions and support over mailinglists and on IRC ● Providing packages (RPMs, DEBs) ● Work with different Linux and BSD distributions to improve portability and availability ● Infrastructure hosting for Gluster related projects ● Gerrit and Jenkins for code review and testing ● Gluster Forge for git/wiki hosting of projects
  • 5. 07/02/2015 GlusterFS Meetup Introduction in Gluster community ● Some numbers from 2014 ● Approx. 175 IRC participants ● Two main mailinglists reach ~600 emails/month ● 100/60 active users/devs posting to the lists ● Around 2200 patches merged in the master branch ● Patches of ~90 developers got included
  • 6. 07/02/2015 GlusterFS Meetup Current stable releases ● Maintenance of three minor releases ● 3.6, 3.5 and 3.4 ● Bugfixes only, non-intrusive features on high demand ● Patches get backported to fix reported bugs
  • 7. 07/02/2015 GlusterFS Meetup Integration with glusterfs ● More projects built and enhanced around the GlusterFS ecosystem – dockit, gluster-deploy, gluster-nagios, glusterfsiostat, puppet-gluster to name a few. ● Improved integration with broader ecosystem projects like Ambari, NFS-Ganesha, OpenStack, oVirt and Samba.
  • 8. 07/02/2015 GlusterFS Meetup What is GlusterFS? ● A general purpose scale-out distributed file system. ● Aggregates storage exports over network interconnect to provide a single unified namespace. ● Filesystem is stackable and completely in userspace. ● Layered on disk file systems that support extended attributes.
  • 9. 07/02/2015 GlusterFS Meetup Typical GlusterFS Deployment Global namespace Scale-out storage building blocks Supports thousands of clients Access using GlusterFS native, NFS, SMB and HTTP protocols Linear performance scaling
  • 10. 07/02/2015 GlusterFS Meetup GlusterFS Architecture – Foundations ● Software only, runs on commodity hardware ● No external metadata servers ● Scale-out with Elasticity ● Extensible and modular ● Deployment agnostic ● Unified access ● Largely POSIX compliant
  • 12. 07/02/2015 GlusterFS Meetup GlusterFS concepts – Trusted Storage Pool ● Trusted Storage Pool (cluster) is a collection of storage servers. ● Trusted Storage Pool is formed by invitation – “probe” a new member from the cluster and not vice versa. ● Logical partition for all data and management operations. ● Membership information used for determining quorum. ● Members can be dynamically added and removed from the pool.
  • 13. 07/02/2015 GlusterFS Meetup GlusterFS concepts – Trusted Storage Pool Node2 Probe Probe accepted Node 1 and Node 2 are peers in a trusted storage pool Node2Node1 Node1
  • 14. 07/02/2015 GlusterFS Meetup GlusterFS concepts – Trusted Storage Pool Node1 Node2 Node3Node2Node1 Trusted Storage Pool Node3Node2Node1 Detach
  • 15. 07/02/2015 GlusterFS Meetup  A brick is the combination of a node and an export directory – for e.g. hostname:/dir  Each brick inherits limits of the underlying filesystem  No limit on the number bricks per node  Ideally, each brick in a cluster should be of the same size /export3 /export3 /export3 Storage Node /export1 Storage Node /export2 /export1 /export2 /export4 /export5 Storage Node /export1 /export2 3 bricks 5 bricks 3 bricks GlusterFS concepts - Bricks
  • 16. 07/02/2015 GlusterFS Meetup GlusterFS concepts - Volumes ● A volume is a logical collection of bricks. ● Volume is identified by an administrator provided name. ● Volume is a mountable entity and the volume name is provided at the time of mounting. – mount -t glusterfs server1:/<volname> /my/mnt/point ● Bricks from the same node can be part of different volumes
  • 17. 07/02/2015 GlusterFS Meetup GlusterFS concepts - Volumes Node2Node1 Node3 /export/brick1 /export/brick2 /export/brick1 /export/brick2 /export/brick1 /export/brick2 music Videos
  • 18. 07/02/2015 GlusterFS Meetup Volume Types ➢ Type of a volume is specified at the time of volume creation ➢ Volume type determines how and where data is placed ➢ Following volume types are supported in glusterfs: a) Distribute b) Stripe c) Replication d) Distributed Replicate e) Striped Replicate ➢ f) Distributed Striped Replicate ➢ g) Dispersed ➢ h) Distributed dispersed
  • 20. 07/02/2015 GlusterFS Meetup GlusterFS 3.6 ● Better SSL support ● Heterogenous bricks ● Erasure coding ● Meta translator ● Volume snapshots and user-servicability
  • 21. 07/02/2015 GlusterFS Meetup GlusterFS 3.6 contd. ● AFRv2 ● RDMA transport for GlusterFS volumes
  • 22. 07/02/2015 GlusterFS Meetup Better SSL support ● SSL support for management plane ● SSL for authorizing and authenticating access to volumes. ● Paves way for fine-grained access to volumes in the storage pool*. ● Makes self-service style management at a volume-level possible*. * - Not implemented yet; technically possible
  • 23. 07/02/2015 GlusterFS Meetup Heterogenous bricks ● Allows distribution of data to account for bricks of different sizes ● Uniform distribution can potentially penalise smaller bricks with more allocations ● Changes were made to the DHT (distribute) translator
  • 24. 07/02/2015 GlusterFS Meetup Erasure Coding ● Provides resilience to brick failures using erasure codes ● Configurable redundancy and fault tolerance ● Reduces disk space consumption in comparison to replicated volumes
  • 25. 07/02/2015 GlusterFS Meetup Meta xlator ● Provides a /proc like interface to GlusterFS runtime ● Allows users to inspect internals of translators present in GlusterFS runtime 'stack'. ● For e.g, cat /mnt/glusterfs/.meta/version to fetch the version of glusterfs mount process ● tree /mnt/glusterfs/.meta/graphs/active
  • 26. 07/02/2015 GlusterFS Meetup AFRv2 ● Refactored AFR implementation ● Improvements in healing process' performance ● Paves way for better introspection into thehealing process. More on 3.7
  • 27. 07/02/2015 GlusterFS Meetup RDMA Support ● Minor fixes that made RDMA transport more usable for GlusterFS volumes
  • 28. 07/02/2015 GlusterFS Meetup GlusterFS 3.7 ● Small file performance ● Data classification ● Bit­rot detection ● Better OpenStack integration – for e.g Manila
  • 29. 07/02/2015 GlusterFS Meetup Small file performance ● Multi­threaded epoll – Transport layer ● Caching stat and xattr calls on small files – Storage layer ● Migrate .glusterfs to SSDs – Physical layer ● Batching of RPCs per file access
  • 30. 07/02/2015 GlusterFS Meetup Data Classification ● Mapping file characteristics to subvolume characteristics ● File characteristics – size, age, access rate, type (extension) ● Subvolume characteristics – physical location, storage type (SSD, disk), encoding method (deduplicated, erasure coded) ● User provided mappings via 'tags' ● Implementation using 'DHT over DHT' pattern
  • 31. 07/02/2015 GlusterFS Meetup Bit­Rot detection ● Silent disk corruption ● Useful for archival or WORM workloads ● Lazy, policy­based and incremental checksum computation
  • 32. 07/02/2015 GlusterFS Meetup Better Openstack integration ● Manila – File share as a service ● Cinder – Block storage as a service ● Swift – Object storage as a service ● Sahara – Hadoop as a service ● For Kilo release
  • 33. 07/02/2015 GlusterFS Meetup GlusterFS 4.0 Vision ● To be the best in class distributed commodity storage with unified access of data
  • 34. 07/02/2015 GlusterFS Meetup GlusterFS 4.0 Vision ● Community scaling – design by community ● Node scaling ● Technology scaling ● Development process scaling
  • 35. 07/02/2015 GlusterFS Meetup GlusterFS 4.0 Vision ● 'Thousand node glusterd' ● DHT scalability ● NSR – Log based, chain replication ● Better brick management ● Split Network ● ... and many more. See http://www.gluster.org/community/documentation/index.php/Planning40
  • 37. 07/02/2015 GlusterFS Meetup Resources Mailing lists: Gluster-users@gluster.org Gluster-devel@gluster.org IRC: #gluster and #gluster-dev on freenode Links: http://www.gluster.org http://hekafs.org http://forge.gluster.org http://www.gluster.org/community/documentation/index.php/Arch