GlusterFS is a clustered file-system capable of scaling to several peta-bytes. It aggregates various storage bricks over Infiniband RDMA or TCP/IP interconnect into one large parallel network file system. Storage bricks can be made of any commodity hardware such as x86-64 server with SATA-II RAID and Infiniband HBA.
Pre-requisite
bash$ sudo aptitude install sshfs build-essential flex bison byacc vim wget
Now we need to install fuse from source:
bash$ wget http://europe.gluster.org/glusterfs/fuse/fuse-2.7.4glfs11.tar.gz
bash$ tar -zxvf fuse-2.7.4glfs11.tar.gz
bash$ cd fuse-2.7.4glfs11
Next we compile fuse:
bash$ ./configure
bash$ make
bash$ sudo make install
Next we will install GlusterFS:
Get the same exact version, otherwise there is good chances it wont work. I tried with 2.0.0rc1 and 1.3.12 and there was some issues (1.4.0rc7 works fine).
bash$ wget http://ftp.gluster.com/pub/gluster/glusterfs/2.0/LATEST/glusterfs-2.0.0rc4.tar.gz
bash$ tar -zxvf glusterfs-2.0.0rc4.tar.gz
bash$ cd glusterfs-2.0.0rc4
Take a minute break and compile:
bash$ ./configure
bash$ make
bash$ sudo make install
For some reasons, libraries are going in the wrong directory so we need to (if someone has a clean fix to this please post it!):
bash$ sudo cp /usr/local/lib/* -R /usr/lib/
Next we create some folders that will be used later on:
bash$ sudo mkdir /mnt/glusterfs
bash$ sudo mkdir /data/
bash$ sudo mkdir /data/export
bash$ sudo mkdir /data/export-ns
bash$ sudo mkdir /etc/glusterfs
bash$ sudo mkdir /var/log/glusterfs