Install and Configure GlusterFS Scalable Distributed File System

No comments

GlusterFS is a distributed file system that can manage disk storage resources from multiple servers into a single global namespace. It is a type of distributed replicated network file-system, fully POSIX compliant and supports storage paradigms such as Block Storage and Object Storage.

GlusterFs stores the data on stable Linux file-systems like ext4, xfs. So it doesn’t need an additional metadata server for keeping metadata.

It is possible to build 3 types of volumes: distributed, replicated and striped. I strongly recommend to read GlusterFS architecture documentation from that link. GlusterFS has a well-documented architecture.

Some Advantages from GlusterFS architecture documentation:

  • Can use any ondisk filesystem that supports extended attributes
  • Accessible using industry standard protocols like NFS and SMB
  • Provides replication, quotas, geo-replication, snapshots and bitRot detection
  • Open Source

 

I added some basic terms that we will use throughout this post. Also recommended to check this link for much more detail.

Distributed File System — A file system that allows multiple client to access data which is spread across cluster peer. The servers allow the client to share and store data just like they are working on locally.

Cluster — a group of peer computer that works together.

Trusted Storage Pool — A storage pool is a trusted network of storage servers.

Fuse — File system in User space (FUSE) is a loadable kernel module that lets non-privileged users create files without editing kernel codes. FUSE module only provides a bridge to access to actual kernel interface.

Glusterd — The GlusterFS daemon/service process that need to be run all members of trusted storage pool to manage volumes and cluster membership.

Brick — basic unit of storage in GlusterFS . Represented by an export directory on a server in trusted storage pool.

Volume — logical collection of bricks.

Requirement to install and test GlusterFS:

We will perform install and configure GlusterFS volume with three replicas on this post. Before start installation steps, check this requirements.

 

Step 1: Configure and Install Binaries

a) DNS configuration

You should define “hostname” and “ip” information to dns server or hosts files. I will prefer to add information to “/etc/hosts” file.

b) Define GlusterFS repository on both client and storage server

Define GlusterFS repositories for all servers in trusted pool and also for client.I added Centos base repository for GlusterFS. You should check GlusterFS repository which belongs to your Linux distribution.

c) Install Glusterfs-Server on Storage Nodes

d) Configure firewall rules

I always prefer to disable firewalld daemon on my test platform.But if you have any obligation to enable firewalld , you may define firewall rules for all Server and clients.

Disable firewallD:

Or define rules:

 

Step 2: Create local file system on storage nodes

a) Add disk to storage servers

You need to perform these steps at all trusted storage pool servers. You need to add your storage server an additional disk. And mount point should be separated from root file system.

b) Add Storage nodes to trusted storage pool

c) Create GlusterFS volume group

You need to create a brick directory called “gvol0” on all storage  nodes.

You may want to check this  link to supported  architecture on glusterFS. I will perform to setup process for  “Replicated Glusterfs Volume” architecture with 3 replicas.  The  number  of replicas can be  defined while create  volume.

 

d) Get Information about volume

 

Step 3: Test GlusterFS file system

You should install glusterFS client package on client server which needs to access file.

Follow me

Abdurrahim

I'm a System Engineer with extensive experience and administration skills and works for Interbank Card Center Of Turkey.I provide hardware and software support for the following Unix/Linux and Windows platforms.(Oracle Solaris,HP-UX, Linux, IBM-AIX, Windows Servers)
Follow me

Latest posts by Abdurrahim (see all)

facebooktwittergoogle_pluslinkedinby feather

No comments yet.

You must be logged in to post a comment.