GFS分布式文件系统

文章目录

    • 一、GlusterFS概述
      • 1、GlusterFS简介
      • 2、GlusterFS特点
      • 3、GlusterFS术语
      • 4、模块化堆栈式架构
    • 二、GlusterFS工作流程
    • 三、GlusterFS的卷类型
      • 1、分布式卷
      • 2、条带卷
      • 3、复制卷
      • 4、分布式条带卷
      • 5、分布式复制卷
    • 四、GlusterFS部署实验
      • 1、环境规划
      • 2、添加磁盘
      • 3、关闭防火墙及核心防护
      • 4、配置本地域名解析文件(hosts文件)
      • 5、搭建yum环境并安装GLFS软件(4台)
      • 6、GFS集群创建
      • 7、创建卷
    • 五、关联客户端测试
      • 1、客户端部署
      • 2、测试
      • 其他的维护命令

一、GlusterFS概述

1、GlusterFS简介

开源的、可扩展的分布式文件系统。由存储服务器、客户端以及NFS/Samba 存储网关组成的无元数据服务器。用于大型的、分布式的、对大量数据进行访问的应用。它运行于廉价的普通硬件上,并提供容错功能。它可以给大量的用户提供总体性能较高的服务。

2、GlusterFS特点

  • 扩展性和高性能

    GlusterFS利用双重特性来提供几TB至数PB的高扩展存储解决方案。Scale-Out架构允许通过简单地增加资源来提高存储容量和性能,磁盘、计算和I/O资源都可以独立增加,支持10GbE和InfiniBand等高速网络互联。Gluster弹性哈希(ElasticHash)解除了GlusterFS对元数据服务器的需求,消除了单点故障和性能瓶颈,真正实现了并行化数据访问。

  • 高可用性

    GlusterFS可以对文件进行自动复制,如镜像或多次复制,从而确保数据总是可以访问,甚至是在硬件故障的情况下也能正常访问。自我修复功能能够把数据恢复到正确的状态,而且修复是以增量的方式在后台执行,几乎不会产生性能负载。GlusterFS没有设计自己的私有数据文件格式,而是采用操作系统中主流标准的磁盘文件系统(如EXT3、ZFS)来存储文件,因此数据可以使用各种标准工具进行复制和访问。

  • 全局统一命名空间

    全局统一命名空间将磁盘和内存资源聚集成一个单一的虚拟存储池,对上层用户和应用屏蔽了底层的物理硬件。存储资源可以根据需要在虚拟存储池中进行弹性扩展,比如扩容或收缩。当存储虚拟机映像时,存储的虚拟映像文件没有数量限制,成千虚拟机均通过单一挂载点进行数据共享。虚拟机I/O可在命名空间内的所有服务器上自动进行负载均衡,消除了SAN环境中经常发生的访问热点和性能瓶颈问题。

  • 弹性卷管理

    数据储存在逻辑卷中,逻辑卷可以从虚拟化的物理存储池进行独立逻辑划分而得到。存储服务器可以在线进行增加和移除,不会导致应用中断。逻辑卷可以在所有配置服务器中增长和缩减,可以在不同服务器迁移进行容量均衡,或者增加和移除系统,这些操作都可在线进行。文件系统配置更改也可以实时在线进行并应用,从而可以适应工作负载条件变化或在线性能调优。

  • 基于标准协议

    Gluster存储服务支持NFS,CIFS, HTTP, FTP以及Gluster原生协议,完全与POSIX标准兼容。现有应用程序不需要作任何修改或使用专用API,就可以对Gluster中的数据进行访问。这在公有云环境中部署Gluster时非常有用,Gluster对云服务提供商专用API进行抽象,然后提供标准POSIX接口

  • 弹性HASH算法

    数据储存在逻辑卷中,逻辑卷可以从虚拟化的物理存储池进行独立逻辑划分而得到。存储服务器可以在线进行增加和移除,不会导致应用中断。逻辑卷可以在所有配置服务器中增长和缩减,可以在不同服务器迁移进行容量均衡,或者增加和移除系统,这些操作都可在线进行。文件系统配置更改也可以实时在线进行并应用,从而可以适应工作负载条件变化或在线性能调优

    • 通过HASH算法得到一个32位的整数
    • 划分为N个连续的子空间,每个空间对应一个Brick
    • 弹性HASH算法的优点
      • 保证数据平均分布在每一个Brick中
      • 解决了对元数据服务器的依赖,进而解决了单点故障以及访问瓶颈

3、GlusterFS术语

  • Brick:GFS中的存储单元,通过是一个受信存储池中的服务器的一个导出目录。可以通过主机名和目录名来标识,如’SERVER:EXPORT’
  • Volume:卷,一组bricks的逻辑集合
  • FUSE:内核文件系统,Filesystem Userspace是一个可加载的内核模块,其支持非特权用户创建自己的文件系统而不需要修改内核代码。通过在用户空间运行文件系统的代码通过FUSE代码与内核进行桥接。
  • VFS:虚拟文件系统
  • Glusterd:Gluster management daemon,要在trusted storage pool中所有的服务器上运行。

4、模块化堆栈式架构

  • 模块化、堆栈式的架构
  • 通过对模块的组合,实现复杂的功能

GlusterFS是模块化堆栈式的架构设计,模块称为Translator。Translators是GlusterFS提供的一种强大文件系统功能扩展机制,这一设计思想借鉴于GNU/Hurd微内核操作系统。GlusterFS中所有的功能都通过Translator机制实现,借助这种良好定义的接口可以高效简便地扩展文件系统的功能。在Glusterfs中,每个translator都有自己的全局命名空间,并且使用自己的机制进行独立的维护和管理。
GFS分布式文件系统_第1张图片

二、GlusterFS工作流程

GFS分布式文件系统_第2张图片

1、首先是在客户端, 用户通过glusterfs的挂载点来读写访问数据(对于用户来说, 集群系统的存在对用户是完全透明的,用户感觉不到是操作本地系统还是远端的集群系统)

2、用户的这个操作被递交给本地linux系统,系统内核通过VFS API收到请求并处理

3、VFS 将数据递交给FUSE 内核文件系统,(在启动 glusterfs 客户端以前, 需要向系统注册一个实际的文件系统FUSE,如上图所示,该文件系统与ext3在同一个层次上面, ext3 是对实际的磁盘进行处理),fuse 文件系统则是将数据通过/dev/fuse 这个设备文件递交给了glusterfs client端。所以, 我们可以将 fuse文件系统理解为一个代理

4、GlusterFS client 收到数据后,client根据配置文件的配置对数据进行处理
(在启动glusterfs client时需要指定这个文件。)

5、在glusterfs client的处理末端, 通过网络将数据递交给 Glusterfs Server,并且将数据写入到服务器所控制的存储设备上

6、这样, 整个数据流的处理就完成了

三、GlusterFS的卷类型

  • 分布式卷
  • 条带卷
  • 复制卷
  • 分布式条带卷
  • 分布式复制卷
  • 条带复制卷
  • 分布式条带复制卷

1、分布式卷

GFS分布式文件系统_第3张图片
分布卷可以将某个文件随机的存储在卷内的一个brick内,通常用于扩展存储能力,不支持数据的冗余。除非底层的brick使用RAID等外部的冗余措施。

  • 没有对文件进行分块处理
  • 文件只能存在一个server中,效率不提升
  • 通过扩展文件属性保存HASH值
  • 支持的底层文件系统有ext3、ext4、ZFS、XFS等

1)分布式卷特点

  • 文件分布在不同的服务器,不具备冗余性
  • 更容易和廉价地扩展卷的大小
  • 单点故障会造成数据丢失
  • 依赖底层的数据保护(硬件设备的可靠性)

2)创建分布式卷

创建一个名为dis-volume的分布式卷,文件将根据HASH分布在server1:/dir1、server2:/dir2和server3:/dir3中

gluster volume create dis-volume server1:/dir1 server2:/dir2

2、条带卷

GFS分布式文件系统_第4张图片

  • 根据偏移量将文件分成N块(N个条带节点),轮询的存储在每个Brick Server节点
  • 存储大文件时,性能尤为突出
  • 不具备冗余性,类似Raid0

1)条带卷特点

  • 数据被分割成更小块分布到块服务器群中的不同条带区
  • 分布减少了负载且更小的文件加速了存取的速度
  • 没有数据冗余

2)创建条带卷

创建了一个名为Stripe-volume的条带卷,文件将被分块轮询的存储在Server1:/dir1和Server2:/dir2两个Brick

gluster volume create stripe-volume stripe 2 transport tcp server1:/dir1 server2:/dir2

3、复制卷

GFS分布式文件系统_第5张图片

  • 同一文件保存一份或多分副本(类似raid1)
  • 复制模式因为要保存副本,所以磁盘利用率较低
  • 多个节点上的存储空间不一致,那么将按照木桶效应取最低节点的容量作为该卷的总容量

1)特点

  • 卷中所有的服务器均保存一个完整的副本
  • 卷的副本数量可由客户创建的时候决定
  • 至少由两个块服务器或更多服务器
  • 具备冗余性

2)创建复制卷

创建名为rep-volume的复制卷,文件将同时存储两个副本,分别在Server1:/dir1和Server2:/dir2两个Brick中

gluster volume create rep-volume replica 2 transport tcp server1:/dir1 server2:/dir2

4、分布式条带卷

GFS分布式文件系统_第6张图片

  • 兼顾分布式卷和条带卷的功能

  • 主要用于大文件访问处理

  • 至少需要 4 台服务器

创建分布式条带卷

创建了一个名为dis-stripe的分布式条带卷,配置分布式的条带卷时,卷中Brick所包含的存储服务器数必须是条带数的倍数(>=2倍)

gluster volume create rep-volume replica 2 transport tcp server1:/dir1 server2:/dir2

5、分布式复制卷

GFS分布式文件系统_第7张图片

  • 兼顾分布式卷和复制卷的功能
  • 用于需要冗余的情况下

创建分布式复制卷

创建了一个名为dis-rep的分布式复制卷,配置分布式的复制卷时,卷中Brick所包含的存储服务器数必须是条带数的倍数(>=2倍)

gluster volume create rep-volume replica 2 transport tcp server1:/dir1 server2:/dir2

四、GlusterFS部署实验

1、环境规划

  • node01:IP为192.168.11.11,添加4块磁盘,分别为3G,4G,5G,6G大小,分别格式化挂载为:/b3 、/c4、/d5、/e6
  • node02:IP为192.168.11.12,添加4块磁盘,分别为3G,4G,5G,6G大小,分别格式化挂载为:/b3 、/c4、/d5、/e6
  • node03:IP为192.168.11.13,添加3块磁盘,分别为3G,4G,5G大小,分别格式化挂载为:/b3 、/c4、/d5
  • node04:IP为192.168.11.14,添加3块磁盘,分别为3G,4G,5G大小,分别格式化挂载为:/b3 、/c4、/d5
  • client:IP为192.168.11.15

2、添加磁盘

node01添加磁盘并格式化挂载(其余节点不在详述,与该节点配置方式相同)

[root@localhost ~]# fdisk -l #查看添加的硬盘,也可以用 ll /dev/ | grep sd 确认有几块硬盘的

#创建分区

[root@localhost ~]# fdisk /dev/sdb
n            	#创建分区
p            	#创建主分区
回车			#默认主分区1
回车         #默认块大小
回车         #默认主分区大小
w            #保存分区信息

另外三块磁盘添加方式与sdb1配置相同
fdisk /dev/sdc
fdisk /dev/sdd
fdisk /dev/sde

#确认分区有无划分好

[root@localhost ~]# ll /dev/ | grep sd
brw-rw----  1 root disk      8,  17 10月 17 18:47 sdb1
brw-rw----  1 root disk      8,  33 10月 17 18:47 sdc1
brw-rw----  1 root disk      8,  49 10月 17 18:48 sdd1
brw-rw----  1 root disk      8,  65 10月 17 18:49 sde1

#格式化分区

[root@localhost ~]# mkfs -t ext4 /dev/sdb1
[root@localhost ~]# mkfs -t ext4 /dev/sdc1
[root@localhost ~]# mkfs -t ext4 /dev/sdd1
[root@localhost ~]# mkfs -t ext4 /dev/sde1

#创建挂载目录,添加挂载(node03、node04不需要创建及挂载/e6)

[root@localhost ~]# mkdir /b3 /c4 /d5 /e6
[root@localhost ~]# vim /etc/fstab 
/dev/sdb1       /b3                             ext4    defaults        0 0
/dev/sdc1       /c4                             ext4    defaults        0 0
/dev/sdd1       /d5                             ext4    defaults        0 0
/dev/sde1       /e6                             ext4    defaults        0 0

#重启服务器或使用mount -a使挂载生效

[root@localhost ~]# init 6

#确认挂载的4块硬盘

[root@localhost ~]# df -Th
/dev/sdd1               ext4      4.8G   20M  4.6G    1% /d5
/dev/sdb1               ext4      2.9G  9.0M  2.8G    1% /b3
/dev/sdc1               ext4      3.9G   16M  3.7G    1% /c4
/dev/sde1               ext4      5.8G   24M  5.5G    1% /e6

3、关闭防火墙及核心防护

[root@node1 ~]# systemctl stop firewalld.service 	#关闭防火墙
[root@node1 ~]# systemctl disable firewalld.service 	#取消开启自启
[root@node1 ~]# setenforce 0	#关闭核心防护
[root@node1 ~]# vim /etc/selinux/config 
SELINUX=disabled	#修改为disabled

4、配置本地域名解析文件(hosts文件)

[root@node1 ~]# vim /etc/hosts
192.168.11.25   node01
192.168.11.26   node02
192.168.11.27   node03
192.168.11.28   node04

5、搭建yum环境并安装GLFS软件(4台)

将gfsrepo 软件上传到/opt目下 (rz)

#挂载光盘至本地

[root@node1 ~]# mount /dev/cdrom /mnt

#搭建yum仓库

[root@node1 opt]# cd /etc/yum.repos.d/
[root@node1 yum.repos.d]# mkdir bak
[root@node1 yum.repos.d]# mv C* bak
[root@node1 yum.repos.d]# vim local.repo	#编辑本地yum.repo文件
[local]
name=local
baseurl=file:///mnt
gpgcheck=0
enabled=1

[GLFS]
name=glfs
baseurl=file:///opt/gfsrepo
gpgcheck=0
enabled=1

[root@node1 yum.repos.d]# yum clean all		#清除yum缓存
[root@node1 yum.repos.d]# yum makecache		#创建缓存数据

#安装GLFS软件

[root@node1 yum.repos.d]# yum -y install glusterfs glusterfs-server glusterfs-fuse glusterfs-rdma  

#启动GLFS软件

[root@node1 yum.repos.d]# systemctl start glusterd.service
[root@node1 yum.repos.d]# systemctl enable glusterd.service		#开机自启
[root@node1 yum.repos.d]# systemctl status glusterd.service		#查看状态

6、GFS集群创建

#node主机添加群集中其他node节点(在一个node节点操作即可)

[root@node1 yum.repos.d]# gluster peer probe node1
[root@node1 yum.repos.d]# gluster peer probe node2
[root@node1 yum.repos.d]# gluster peer probe node3
[root@node1 yum.repos.d]# gluster peer probe node4
peer probe: success. 
[root@node1 yum.repos.d]# gluster peer status	#查看集群

7、创建卷

创建卷的具体规划:

卷名称 卷类型 空间大小/GB Brick
dis-volume 分布式卷 12 node1(/e6)node2(/e6)
stripe-volume 条带卷 10 node1(/d5)node2(/d5)
rep-volume 复制卷 5 node3(/d5)node4(/d5)
dis-stripe 分布式条带卷 12 node1(/b3)node2(/b3)node3(/b3)node4(/b3)
dis-rep 分布式复制卷 8 node1(/c4)node2(/c4)node3(/c4)node4(/c4)

因为已经做好了群集,所以以下创建卷的操作只在一个node节点上操作即可

① 创建分布式卷

[root@localhost ~]# gluster volume create dis-volume node1:/e6 node2:/e6 force
volume create: dis-volume: success: please start the volume to access data
[root@localhost ~]# gluster volume info dis-volume		#查看创建分布式卷信息
[root@localhost ~]# gluster volume start dis-volume		#启动新建分布式卷
volume start: dis-volume: success

② 创建条带卷

[root@localhost ~]# gluster volume create stripe-volume stripe 2 node1:/d5 node2:/d5 force
[root@localhost ~]# gluster volume info stripe-volume
[root@localhost ~]# gluster volume start stripe-volume

③ 创建复制卷

[root@localhost ~]# gluster volume create rep-volume replica 2 node3:/d5 node4:/d5 force
[root@localhost ~]# gluster volume info rep-volume
[root@localhost ~]# gluster volume start rep-volume

④ 创建分布式条带卷

[root@localhost ~]# gluster volume create dis-stripe stripe 2 node1:/b3 node2:/b3 node3:/b3 node4:/b3 force
[root@localhost ~]# gluster volume info dis-stripe
[root@localhost ~]# gluster volume start dis-stripe

⑤ 创建分布式复制卷

[root@localhost ~]# gluster volume create dis-rep replica 2 node1:/c4 node2:/c4 node3:/c4 node4:/c4 force
[root@localhost ~]# gluster volume info dis-rep	
[root@localhost ~]# gluster volume start dis-rep	

五、关联客户端测试

1、客户端部署

==将gfsrepo 软件上传到/opt目下 ==

配置yum源,与node节点方法相同,不在详述

#安装GLFS软件

[root@client yum.repos.d]# yum -y install glusterfs glusterfs-fuse

#创建挂载点目录

[root@client ~]# mkdir -p /text/{dis,stripe,rep,dis_and_stripe,dis_and_rep}
[root@client ~]# ls /text
dis  dis_and_rep  dis_and_stripe  rep  stripe

#本地域名解析文件(hosts文件)

[root@client ~]# vim /etc/hosts
192.168.11.11   node1
192.168.11.12   node2
192.168.11.13   node3
192.168.11.14   node4

#挂载Gluster文件系统(先临时挂载测试,注意挂载后的文件类型,然后再使用永久挂载)

[root@client ~]#  mount -t glusterfs node1:dis-volume /text/dis
[root@client ~]#  mount -t glusterfs node1:stripe-volume /text/stripe
[root@client ~]#  mount -t glusterfs node1:rep-volume /text/rep
[root@client ~]#  mount -t glusterfs node1:dis-stripe /text/dis_and_stripe
[root@client ~]#  mount -t glusterfs node1:dis-rep /text/dis_and_rep

#永久挂载

[root@localhost ~]# vim /etc/fstab
node1:dis-volume        /text/dis               glusterfs defaults,_netdev      0 0
node1:stripe-volume     /text/stripe            glusterfs defaults,_netdev      0 0
node1:rep-volume        /text/rep               glusterfs defaults,_netdev      0 0
node1:dis-stripe        /text/dis_and_stripe    glusterfs defaults,_netdev      0 0
node1:dis-rep           /text/dis_and_rep       glusterfs defaults,_netdev      0 0

[root@client ~]# mount -a

2、测试

#创建测试文件

[root@client ~]# dd if=/dev/zero of=/demo1.log bs=1M count=40
[root@client ~]# dd if=/dev/zero of=/demo2.log bs=1M count=40
[root@client ~]# dd if=/dev/zero of=/demo3.log bs=1M count=40
[root@client ~]# dd if=/dev/zero of=/demo4.log bs=1M count=40
[root@client ~]# dd if=/dev/zero of=/demo5.log bs=1M count=40
[root@client ~]# cd /
[root@client /]# ll			#查看刚创建的测试文件

#将创建的文件拷贝至指定位置(各个GFS卷的挂载点)

[root@client /]# cp /demo* /text/dis
[root@client /]# cp /demo* /text/stripe/
[root@client /]# cp /demo* /text/rep/
[root@client /]# cp /demo* /text/dis_and_stripe/
[root@client /]# cp /demo* /text/dis_and_rep/

① 正常测试

#查看分布式卷分布

root@node1 yum.repos.d]# ll -h /e6		#node1查看e6文件夹(分布式文件存储位置)
-rw-r--r--. 2 root root 40M 5月  12 01:56 test1
-rw-r--r--. 2 root root 40M 5月  12 01:56 test2
-rw-r--r--. 2 root root 40M 5月  12 01:56 test4
-rw-r--r--. 2 root root 40M 5月  12 01:56 test5

[root@node2 yum.repos.d]# ll -h /e6		#node2
-rw-r--r--. 2 root root 40M 5月  12 01:56 test3

发现5个文件被分布式存储到了两个节点,且没有被切片,都是40M原本大小

#查看条带卷分布

[root@node1 yum.repos.d]# ll -h /d5
-rw-r--r--. 2 root root 20M 5月  12 01:56 test1
-rw-r--r--. 2 root root 20M 5月  12 01:56 test2
-rw-r--r--. 2 root root 20M 5月  12 01:56 test3
-rw-r--r--. 2 root root 20M 5月  12 01:56 test4
-rw-r--r--. 2 root root 20M 5月  12 01:56 test5

[root@node2 yum.repos.d]# ll -h /d5
-rw-r--r--. 2 root root 20M 5月  12 01:56 test1
-rw-r--r--. 2 root root 20M 5月  12 01:56 test2
-rw-r--r--. 2 root root 20M 5月  12 01:56 test3
-rw-r--r--. 2 root root 20M 5月  12 01:56 test4
-rw-r--r--. 2 root root 20M 5月  12 01:56 test5

发现数据已经被分片的分配node1和node2节点上

#查看复制卷分布

[root@node3 yum.repos.d]# ll -h /d5
-rw-r--r--. 2 root root 40M 5月  12 02:04 test1
-rw-r--r--. 2 root root 40M 5月  12 02:04 test2
-rw-r--r--. 2 root root 40M 5月  12 02:04 test3
-rw-r--r--. 2 root root 40M 5月  12 02:04 test4
-rw-r--r--. 2 root root 40M 5月  12 02:04 test5

[root@node4 yum.repos.d]# ll -h /d5
-rw-r--r--. 2 root root 40M 5月  12 02:04 test1
-rw-r--r--. 2 root root 40M 5月  12 02:04 test2
-rw-r--r--. 2 root root 40M 5月  12 02:04 test3
-rw-r--r--. 2 root root 40M 5月  12 02:04 test4
-rw-r--r--. 2 root root 40M 5月  12 02:04 test5

==数据没有被分片 有副本 有冗余 ==

#查看分布式条带卷

[root@node1 yum.repos.d]# ll -h /b3
-rw-r--r--. 2 root root 20M 5月  12 01:56 test1
-rw-r--r--. 2 root root 20M 5月  12 01:56 test2
-rw-r--r--. 2 root root 20M 5月  12 01:56 test4
-rw-r--r--. 2 root root 20M 5月  12 01:56 test5

[root@node2 yum.repos.d]# ll -h /b3
-rw-r--r--. 2 root root 20M 5月  12 01:56 test1
-rw-r--r--. 2 root root 20M 5月  12 01:56 test2
-rw-r--r--. 2 root root 20M 5月  12 01:56 test4
-rw-r--r--. 2 root root 20M 5月  12 01:56 test5

[root@node3 yum.repos.d]# ll -h /b3
-rw-r--r--. 2 root root 20M 5月  12 01:56 test3

[root@node4 yum.repos.d]# ll -h /b3
-rw-r--r--. 2 root root 20M 5月  12 01:56 test3

#查看分布式复制卷

[root@node1 yum.repos.d]# ll -h /c4
-rw-r--r--. 2 root root 40M 5月  12 01:56 test1
-rw-r--r--. 2 root root 40M 5月  12 01:56 test2
-rw-r--r--. 2 root root 40M 5月  12 01:56 test4
-rw-r--r--. 2 root root 40M 5月  12 01:56 test5

[root@node2 yum.repos.d]# ll -h /c4
-rw-r--r--. 2 root root 40M 5月  12 01:56 test1
-rw-r--r--. 2 root root 40M 5月  12 01:56 test2
-rw-r--r--. 2 root root 40M 5月  12 01:56 test4
-rw-r--r--. 2 root root 40M 5月  12 01:56 test5

[root@node3 yum.repos.d]# ll -h /c4
-rw-r--r--. 2 root root 40M 5月  12 01:56 test3

[root@node4 yum.repos.d]# ll -h /c4
-rw-r--r--. 2 root root 40M 5月  12 01:56 test3

② 破坏测试

关闭node2节点, 在客户端上查看文件是否正常

#查看分布式卷

发现5个文件被分布式存储到了两个节点,且没有被切片,都是40M原本大小

[root@client /]# cd /text/dis
[root@client dis]# ll

GFS分布式文件系统_第8张图片

#查看条带卷

因为数据分片的,所以node2关机后,数据都消失了

[root@client dis]# cd /text/stripe/
[root@client stripe]# ll
总用量 0

在这里插入图片描述

#查看分布式条带卷

发现分布式的方式存储的demo5没有消失(存储在node3和node4上的)
GFS分布式文件系统_第9张图片

[root@client stripe]# cd /text/dis_and_stripe/
[root@client dis_and_stripe]# ll -h

#查看分布式复制卷

发现断点测试对于分布式复制卷没有影响
GFS分布式文件系统_第10张图片

[root@client dis_and_stripe]# cd /text/dis_and_rep/
[root@client dis_and_rep]# ll -h

将node4关机,查看效果

#查看分布式复制卷

所有数据都没有消失
GFS分布式文件系统_第11张图片

[root@client dis_and_rep]# ll -h

#查看分布式条卷

发现在node4关机后,原本存在的demo5.log文件也消失了

[root@client dis_and_rep]# cd /text/dis_and_stripe/
[root@client dis_and_stripe]# ll
总用量 0

在这里插入图片描述

#复制卷

数据都在,没有消失

[root@client dis_and_stripe]# cd /text/rep/
[root@client rep]# ll -h

GFS分布式文件系统_第12张图片

总结:上述实验测试,凡是带复制数据,相比而言,数据比较安全,具备冗余性,安全性高。

条带卷安全性较低

其他的维护命令

#查看GlusterFS卷

[root@node1 ~]# gluster volume list 	

#查看所有卷的信息

[root@node1 ~]# gluster volume info	

#停止一个卷

[root@node1 ~]# gluster volume stop dis-stripe    

#删除一个卷

[root@node1 ~]# gluster volume delete dis-stripe              

#设置卷的访问控制

[root@node1 ~]# gluster volume set dis-rep auth.allow 192.168.32.*     #设置192.168.30.0网段的所有IP地址 都能访问dis-rep卷(分布式复制卷)

你可能感兴趣的:(Web服务器群集,gfs)