實驗環境:
1)3個系統node1、node2、client同網段、互相可解析
2)node1、node2中準備一個10G大小的分區
3)關閉selinux、firewall、配置YUM
實驗目的:搭建一個分佈式(raid0原理)的glusterfs環境
1、安裝glusterfs(每個節點中)
# yum -y install glusterfs
# systemctl restart glusterd
# systemctl enable glusterd
2、建立peer關係(node1、node2;只在一個節點配置就行)
# gluster peer probe node2
查看peer關係列表
# gluster pool list
UUID Hostname State
8fd143e8-3d69-430b-93b0-93033b46baa2node2 Connected
bf098ca8-7341-40d5-915c-8c0cd818d41d localhost Connected
查看peer關係詳細信息(任意節點都可以查看)
# gluster peer status
Number of Peers: 1
Hostname: node2
Uuid: 8fd143e8-3d69-430b-93b0-93033b46baa2
State: Peer in Cluster (Connected)
3、創建glusterfs卷
查看集羣中的卷
# gluster volume list
1)創建分區
已經提前做好:/vda3
2)創建卷組(VG)
已經提前做好:vg_bricks
# vgrename vg_bricks vg0 #重命名vg名;兩個節點都更改
# vgs
3)創建池
# lvcreate -L 10G -T vg0/thin_pool #兩個節點都創建
-L:指定大小
-T:thin,瘦lv
# lvs
4)創精簡lv
# lvcreate -V 3G -n lv1 -T vg0/thin_pool #兩個節點都創建
-V:指定大小
-n:名字
-T:thin,瘦lv
# lvs
格式化精簡lv
# mkfs.xfs /dev/vg0/lv1 #兩個節點都格式化
5)創建掛載點,設置自動掛載
node1節點
# mkdir /xx
# vim /etc/fstab
/dev/vg0/lv1 /xx xfs defaults 0 0
# mount -a
node2節點
# mkdir /yy
# vim /etc/fstab
/dev/vg0/lv1 /yy xfs defaults 0 0
# mount -a
6)掛載點中創建目錄
node1節點 # mkdir /xx/data
node2節點 # mkdir /yy/data
7)創建glusterfs卷(任意節點配置即可)
# gluster volume create v1 node1:/xx/data node2:/yy/data #創建完需要啓動後使用
volume create: v1: success: please start the volume to access data
查看glusterfs卷
# gluster volume list
v1
查看glusterfs卷詳細信息
# gluster volume info v1
Volume Name: v1
Type: Distribute #glusterfs卷類型:分佈式
Volume ID: 4934150c-0d61-4415-a810-01d5624b1167
Status: Created #Created狀態是不可以使用的
Number of Bricks: 2
Transport-type: tcp
Bricks:
Brick1: node1:/xx/data #卷v1是由node1:/xx/data和node2:/yy/data組成
Brick2: node2:/yy/data
Options Reconfigured:
performance.readdir-ahead: on
8)啓動glusterfs卷
# gluster volume start v1
查看glusterfs卷詳細信息
# gluster volume info v1
Volume Name: v1
Type: Distribute
Volume ID: 4934150c-0d61-4415-a810-01d5624b1167
Status: Started
... ...
4、客戶端連接測試(client中操作)
1)安裝nfs
# yum -y install nfs-utils*
# yum -y install bind-utils*
# systemctl restart rpcbind
# systemctl enable rpcbind
2)掛載(掛載任意節點都可以)
# showmount -e node1
Export list for node1:
/v1 *
# mount node1:/v1 /mnt
3)創建文件測試,查看分佈式結果
# touch /mnt/aa{1..10}
# ls
aa1 aa10 aa2 aa3 aa4 aa5 aa6 aa7 aa8 aa9
node1上查看
# ls /xx/data
aa1 aa3 aa4 aa8
node2上查看
# ls /yy/data
aa10 aa2 aa5 aa6 aa7 aa9
實驗成功!