= Gluster ------------------------ | | 192.168.0.11 192.168.0.12 |Gluster Server1| |Gluster Server2| |Gluster Client1| |Gluster Client2| == Install packege Gluster > aptitude install libfuse-dev flex bison byacc libdb4.6-dev > wget http://ftp.gluster.com/pub/gluster/glusterfs/2.0/LATEST/glusterfs-2.0.6.tar.gz > tar zxvf glusterfs-2.0.6.tar.gz > cd glusterfs-2.0.6 > make > make install > ldconfig > glusterfs --version = Configure Gluster Server > mkdir /etc/glusterfs > vi /etc/glusterfs/glusterfsd.vol volume posix type storage/posix option directory /data/export end-volume volume locks type features/locks subvolumes posix end-volume volume brick type performance/io-threads option thread-count 8 subvolumes locks end-volume volume server type protocol/server option transport-type tcp option auth.addr.brick.allow * subvolumes brick end-volume > mkdir -p /data/export > /etc/init.d/glusterfsd start = Configure Gluster client > vi /etc/glusterfs/glusterfs-client.vol volume remote1 type protocol/client option transport-type tcp option remote-host 192.168.0.11 option remote-subvolume brick end-volume volume remote2 type protocol/client option transport-type tcp option remote-host 192.168.0.12 option remote-subvolume brick end-volume volume replicate type cluster/replicate subvolumes remote1 remote2 end-volume volume writebehind type performance/write-behind option window-size 1MB subvolumes replicate end-volume volume cache type performance/io-cache option cache-size 512MB subvolumes writebehind end-volume > modprobe fuse > mount -t glusterfs /etc/glusterfs/glusterfs-client.vol /mnt > echo "jun" > /mnt/test.txt = check on both gluster server > ls -al /data/export/ = Split brain the file won't sync. Once the file be edited, the file edited as newest will be sync to other server.