環境說明:
4台機器安裝 GlusterFS 組成一個 Distributed Replicated Volumes叢集
伺服器:
10.64.42.96
10.64.42.113
10.64.42.115
10.64.42.117
用戶端:
10.64.42.98
1.準備工作
關閉iptables和selinux
2.安裝glusterFS伺服器
4台伺服器安裝glusterFS
yum install centos-release-glusteryum install -y glusterfs glusterfs-server glusterfs-fuse glusterfs-rdma
3.啟動
systemctl start glusterd
設定開機啟動
systemctl enable glusterd
4.加入 trusted storage pool
在任意節點執行 gluster peer probe,本文在10.64.42.113執行
gluster peer probe 10.64.42.115gluster peer probe 10.64.42.117gluster peer probe 10.64.42.96
查看節點資訊
gluster peer status
5.建立資料存放區目錄
所有節點建立目錄
mkdir -p /gluster/data
6.建立Distributed Replicated Volumes
gluster volume create file-service replica 2 transport tcp 10.64.42.113:/gluster/data 10.64.42.115:/gluster/data 10.64.42.117:/gluster/data 10.64.42.96:/gluster/data
這條命令的意思是使用Replicated的方式,建立一個名為file-service的卷(Volume),儲存塊(Brick)為4個
啟動volume
gluster volume start file-service
查看 volume狀態
gluster volume info
7.安裝用戶端
在用戶端執行
yum -y install glusterfs glusterfs-fuse
建立目錄
mkdir /gluster/data
將伺服器上的邏輯卷file-service掛在到本地/gluster/data
mount -t glusterfs 10.64.42.113:/file-service /gluster/data
查看掛在
df -h
8.測試
在用戶端掛載目錄/gluster/data建立檔案以測試GlusterFS是否正常工作。
cd /gluster/data touch file1 file2 file3
因為建立的是Distributed Replicated Volumes,所以在用戶端寫入的檔案會同時出現在10.64.42.113:/gluster/data和10.64.42.115:/gluster/data 或者同時出現在10.64.42.117:/gluster/data和10.64.42.96:/gluster/data
注意
volume create: file-service: failed: The brick
10.53.32.113:/gluster/data is being created in the root partition. It is recommended that you don’t use the system’s root partition for
storage backend. Or use ‘force’ at the end of the command if you want
to override this behavior.
這是因為我們建立的brick在系統硬碟,這個在gluster的預設情況下是不允許的,如果必須這樣請使用force
GlusterFS 幾種volume 模式說明:
一、 Distributed Volumes,預設模式,DHT
gluster volume create test-volume server1:/exp1 server2:/exp2 server3:/exp3 server4:/exp4
二、 Replicated Volumes,複製模式,AFR
gluster volume create test-volume replica 2 transport tcp server1:/exp1 server2:/exp2
避免腦裂,加入仲裁
gluster volume create <VOLNAME> replica 3 arbiter 1 host1:brick1 host2:brick2 host3:brick3`
三、Striped Volumes
gluster volume create test-volume stripe 2 transport tcp server1:/exp1 server2:/exp2
四、Distributed Striped Volumes,最少需要4台伺服器。
gluster volume create test-volume stripe 4 transport tcp server1:/exp1 server2:/exp2 server3:/exp3 server4:/exp4 server5:/exp5 server6:/exp6 server7:/exp7 server8:/exp8
五、Distributed Replicated Volumes,最少需要4台伺服器。
gluster volume create test-volume replica 2 transport tcp server1:/exp1 server2:/exp2 server3:/exp3 server4:/exp4
六、Distributed Striped Replicated Volumes
gluster volume create test-volume stripe 2 replica 2 transport tcp server1:/exp1 server2:/exp2 server3:/exp3 server4:/exp4 server5:/exp5 server6:/exp6 server7:/exp7 server8:/exp8
七、Striped Replicated Volumes
gluster volume create test-volume stripe 2 replica 2 transport tcp server1:/exp1 server2:/exp2 server3:/exp3 server4:/exp4