[root@node1 ~]# gluster volume create stripe-volume stripe 2 node1:/sdd5 node2:/sdd5 force [root@node1 ~]# gluster volume start stripe-volume volume start: stripe-volume: success //stripe表示卷类型条带卷,后面的数量表示条带数
3.创建复制卷(磁盘空间为总空间一半,具备容错性,读快,写慢)[root@node1 ~]# gluster volume create rep-volume replica 2 node3:/sdd5 node4:/sdd5 force [root@node1 ~]# gluster volume start rep-volume volume start: rep-volume: success
4.创建分布式条带卷(加大容量,读取快,没有容错性)[root@node1 ~]# gluster volume create dis-stripe stripe 2 node1:/sdb3 node2:/sdb3 node3:/sdb3 node4:/sdb3 force //指定类型为Distributed-Stripe,数值为2,而且后面跟了4个Brick Server,是2的2倍,所以创建的是分布式条带卷。 volume create: dis-stripe: success: please start the volume to access data [root@node1 ~]# gluster volume start dis-stripe volume start: dis-stripe: success
5.创建分布式复制卷(扩展空间,总空间的一半,且具有容错能力)[root@node1 ~]# gluster volume create dis-rep replica 2 node1:/sdc4 node2:/sdc4 node3:/sdc4 node4:/sdc4/ force //指定类型为Distributed-Replicate,数值为2,而且后面跟了4个Brick Server,是2的2倍,所以创建的是分布式复制卷。 volume create: dis-rep: success: please start the volume to access data [root@node1 ~]# gluster volume start dis-rep volume start: dis-rep: success
三、部署Gluster客户端 1.安装客户端软件将软件包放至/gfs文件夹
修改前面提到的hostname以及hosts
运行如下脚本
vim in_cl.sh #!/bin/bash cat << EOF >> /etc/yum.repos.d/gfs.repo [gfs] name=gfs baseurl=file:///gfs gpgcheck=0 enabled=1 EOF yum clean all && yum makecache yum -y install glusterfs glusterfs-server glusterfs-fuse glusterfs-rdma systemctl start glusterd systemctl enable glusterdsh in_cl.sh netstat -lnpt | grep glu //可以看到服务已经启动
[root@client ~]# mkdir -pv /test/{dis,stripe,rep,dis_stripe,dis_rep} //创建挂载目录 [root@client ~]# mount -t glusterfs node1:dis-volume /test/dis [root@client ~]# mount -t glusterfs node1:stripe-volume /test/stripe/ [root@client ~]# mount -t glusterfs node1:rep-volume /test/rep/ [root@client ~]# mount -t glusterfs node1:dis-stripe /test/dis_stripe/ [root@client ~]# mount -t glusterfs node1:dis-rep /test/dis_rep/ //挂载glusterfs文件系统到本地客户端,所制定的node1节点只是为了获取配置信息,不代表只和他进行数据传输,会根据配置针对集群来进行数据的存放
修改fstab文件实现永久挂载
添加如下文件
vim /etc/fstab
node1:dis-volume /test/dis glusterfs defaults,_netdev 0 0 node1:stripe-volume /test/stripe glusterfs defaults,_netdev 0 0 node1:rep-volume /test/rep glusterfs defaults,_netdev 0 0 node1:dis-rep /test/dis_rep glusterfs defaults,_netdev 0 0 node1:dis-stripe /test/dis_stripe glusterfs defaults,_netdev 0 0 四、测试
生成测试文件(该文件虽没有数据,但是可以进行测试用途)
[root@client ~]# for i in {1..5};do dd if=/dev/zero of=/root/demon$i.log bs=1M count=43;done [root@client ~]# cp demon* /test/dis && cp demon* /test/dis_rep/ && cp demon* /test/dis_stripe/ && cp demon* /test/rep/ && cp demon* /test/stripe/
查看文件分布状态
分布式卷(node1和node2的/sde6目录查看,可以看到文件被分散开存放)
[root@node1 ~]# ll -h /sde6/ 总用量 130M -rw-r--r--. 2 root root 43M 4月 2 21:32 demon1.log -rw-r--r--. 2 root root 43M 4月 2 21:32 demon3.log -rw-r--r--. 2 root root 43M 4月 2 21:32 demon4.log drwx------. 2 root root 16K 4月 3 2019 lost+found [root@node2 ~]# ll -h /sde6/ 总用量 87M -rw-r--r--. 2 root root 43M 4月 3 05:32 demon2.log -rw-r--r--. 2 root root 43M 4月 3 05:32 demon5.log drwx------. 2 root root 16K 4月 3 03:01 lost+found条带卷(node1和node2的/sdd5目录查看,清晰看到是以数据块为单位存储的)
[root@node1 ~]# ls -lh /sdd5/ 总用量 108M -rw-r--r--. 2 root root 22M 4月 2 21:31 demon1.log -rw-r--r--. 2 root root 22M 4月 2 21:31 demon2.log -rw-r--r--. 2 root root 22M 4月 2 21:31 demon3.log -rw-r--r--. 2 root root 22M 4月 2 21:31 demon4.log -rw-r--r--. 2 root root 22M 4月 2 21:31 demon5.log [root@node2 ~]# ls -lh /sdd5/ 总用量 108M -rw-r--r--. 2 root root 22M 4月 3 05:31 demon1.log -rw-r--r--. 2 root root 22M 4月 3 05:31 demon2.log -rw-r--r--. 2 root root 22M 4月 3 05:31 demon3.log -rw-r--r--. 2 root root 22M 4月 3 05:31 demon4.log -rw-r--r--. 2 root root 22M 4月 3 05:31 demon5.log