Download - Introducing gluster filesystem by aditya
Gluster File System
Introducing Gluster Filesystem
GlusterFS is an open source, clustered file system capable of scaling to several petabytes and handling thousands of clients. GlusterFS clusters together storage building blocks over Infiniband RDMA or TCP/IP interconnect, aggregating disk and memory resources and managing data in a single global namespace. GlusterFS is based on a stackable user space design and can deliver exceptional performance for diverse workloads.
Virtualized Cloud Environments
GlusterFS Architecture Design Goals
● Elasticity ● Flexibility adapt to growth/reduction
● Add, delete volumes & users
● Without disruption
● Scale linearly ● Multiple dimensions
● Performance
● Capacity
● Aggregated resources
● Innovation ● Eliminate metadata
● Dramatically improve performance
● Unify files and objects
Capacity
Advantages to GlusterFS • Innovation – It eliminates the metadata and can dramtically
improve the performance which will help us to unify data and objects.
• Elasticity – Adapted to growth and reduction of size of the data.
• Scale Linearly – It has availability to petabytes and beyond.
• Simplicity – It is easy to manage and independent from kernel while running in user space.
What makes Gluster outstanding among other distributed file systems?
• Scalable – Absence of a metadata server provides a faster file system.
• Affordable – It deploys on commodity hardware.
• Flexible – As I said earlier, GlusterFS is a software only file system. Here data is stored on native file systems like ext4, xfs etc.
• Open Source – Currently GlusterFS is maintained by Red Hat Inc, a billion dollar open source company, as part of Red Hat Storage.
GlusterFS concepts – Trusted Storage Pool Trusted Storage Pool (cluster) is a collection of storage
servers.
Trusted Storage Pool is formed by invitation – you “probe” a new member from the cluster and not vice-versa.
Logical partition for all data and management operations.
Members can be dynamically added and removed from the pool.
GlusterFS concepts – Trusted Storage Pool
GlusterFS concepts – Trusted Storage Pool
Trusted Storage Pool
• 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
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
GlusterFS concepts - Volumes
/export/brick1
/export/brick2
/export/brick1
/export/brick2
/export/brick1
/export/brick2
music
Videos
Node1 Node3 Node2
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:
• Distribute • Stripe • Replication • Distributed Replicate • Striped Replicate
Access Mechanisms
Gluster volumes can be accessed via the following
mechanisms:
• FUSE
• NFS
• SMB
• libgfapi
• ReST
• HDFS