Configure Storage Clustering with GlusterFS.
For example, Create a Replication volume with 3 Nodes.
It’s possible to create Replication volume with 2 Nodes but it’s not recommended because split-brain syndrome maybe happens on [replica 2 volume]. As a countermeasure for split-brain, it is recommended to create volume with more than 3 Nodes or set [arbiter volume].
+----------------------+ | +----------------------+
| [GlusterFS Server#1] |10.0.0.51 | 10.0.0.52| [GlusterFS Server#2] |
| glus01.srv.local +----------+----------+ glus02.srv.local |
| | | | |
+----------------------+ | +----------------------+
⇑ | ⇑
file1, file3 ... | file2, file4 ...
|
+----------------------+ |
| [GlusterFS Server#3] |10.0.0.53 |
| glus03.srv.local +----------+
| |
+----------------------+
It is strongly recommended to use partitions for GlusterFS volumes that are different from the / partition.
On this example, it shows settings on the environment that all nodes has [sdb1] and mount it to [/glusterfs].
Mục Lục
[1] Install GlusterFS Server on All Nodes, refer to here.
[2] Create a Directory for GlusterFS Volume on all Nodes.
root@glus01:~# mkdir -p /glusterfs/replica
[3] Configure Clustering like follows on a node. (it’s OK on any node)
# probe nodes
root@glus01:~# gluster peer probe glus02
peer probe: success.
root@glus01:~# gluster peer probe glus03
peer probe: success.
# confirm status
root@glus01:~# gluster peer status
Number of Peers: 2
Hostname: glus02
Uuid: f2fce535-c10e-41cb-8c9f-c6636ae38eff
State: Peer in Cluster (Connected)
Hostname: glus03
Uuid: 014a1e8f-967d-4709-bac4-ea1de8ef96cb
State: Peer in Cluster (Connected)
# create volume
root@glus01:~# gluster volume create vol_replica replica 3 transport tcp \
glus01:/glusterfs/replica \
glus02:/glusterfs/replica \
glus03:/glusterfs/replica
volume create: vol_replica: success: please start the volume to access data
# start volume
root@glus01:~# gluster volume start vol_replica
volume start: vol_replica: success
# confirm volume info
root@glus01:~# gluster volume info
Volume Name: vol_replica
Type: Replicate
Volume ID: fd07334b-8303-4e09-aa38-66c2061933bd
Status: Started
Snapshot Count: 0
Number of Bricks: 1 x 3 = 3
Transport-type: tcp
Bricks:
Brick1: glus01:/glusterfs/replica
Brick2: glus02:/glusterfs/replica
Brick3: glus03:/glusterfs/replica
Options Reconfigured:
transport.address-family: inet
storage.fips-mode-rchecksum: on
nfs.disable: on
performance.client-io-threads: off
[4] To mount GlusterFS volume on Client Hosts, refer to here.