GFS(分布式文件系统)
引言
当数据集的大小超过一台独立物理计算机的存储能力时,就有必要对它进行分区(partition)并存储到若干台单独的计算机上。管理网络中夸多台计算机存储的文件系统。这种系统构架于网络之上,肯定会引入网络编程的复杂性,因此它比普通的磁盘文件系统更为复杂。
一、文件系统简介
1、组成
1.接口:文件系统接口
2.功能模块(管理、存储的工具):对对像管理的软件集合
3.对象及属性:(使用此文件系统的消费者)
2、作用
1.从系统角度来看,文件系统是对文件存储设备的空间进行组织和分配,负责文件存储并对存入的文件进行保护和检索的系统
2.主要负责为用户建立文件,存入、读出、修改、转储文件,控制文件的存取
3、文件系统的挂载使用
1.除跟文件系统以外的文件系统创建后要使用需要先挂载至挂载点后才可以被访问
2.挂载点即分区设备文件关联的某个目录文件
3.类比 NFS(外部的文件系统),使用挂载的方式才可以让本地系统来使用外部的文件系统的功能
4.例如:配置永久挂载时,我们会写入挂载点与挂载目录,还有文件系统的名称(xfs),文件类型格式等。我们在远程跨服务器使用 GFS 分布式文件系统,挂载时也需要指定其文件格式(GlusterFS)
二、GFS 分布式文件系统概述
1、GFS 简介
1.GFS(Gluster File System) 是一个可扩展、开源的分布式文件系统(可以很好的体现出弹性伸缩的特点),用于大型的、分布式的、对大量数据进行访问的应用,在传统的解决方案中,GFS 能够灵活的结合物理的,虚拟的和云资源去体现高可用和企业级的性能存储
2.GFS 由三个组件组成:
① 存储服务器(Brick Server)
② 客户端(不在本地)(且,有客户端,也会有服务端,这点类似于 NFS,但是更为复杂)
③ 存储网关(NFS/Samaba)
无元数据服务器:
元数据是核心,描述对象的信息,影响其属性;
例如NFS,存放数据本身,是一个典型的元数据服务器可能存在单点故障,故要求服务器性能较高,服务器一旦出现故障就会导致数据丢失;
反过来看,所以无元数据服务不会有单点故障。
那么数据存放在哪里呢?会借用分布式的原则,分散存储,不会有一个统一的数据服务器
2、GFS 的特点
1.扩展性和高性能:可扩展性,扩展节点,通过多节点提高性能
2.高可用性:不存在单点故障,有备份机制,类似 Raid 的容灾机制
3.全局统一命名空间:集中化管理,类比 API 的性质/概念,系统里根据他命名所定义的隔离区域,是一个独立空间;统一的名称空间,与客户端交互,把请求存放至后端的块数据服务器
4.弹性卷管理:方便扩容及对后端存储集群的管理与维护,较为复杂
5.基于标准协议:基于标准化的文件使用协议,让 CentOS 兼容 GFS
3、GFS 专业术语
1.Brick 存储服务器:实际存储用户数据的服务器
2.Volume:本地文件系统的"分区”
3.FUSE:用户 空间的文件系统(类比EXT4),“这是一个伪文件系统”;以本地文件系统为例,用户想要读写一个文件,会借助于EXT4文件系统,然后把数据写在磁盘上;而如果是远端的GFS,客户端的请求则应该交给FUSE(为文件系统),就可以实现跨界点存储在GFS上
4.VFS(虚拟端口) :内核态的虚拟文件系统,用户是先提交请求交给VFS然后VFS交给FUSE,再交给GFS客户端,最后由客户端交给远端的存储
5.Glusterd(服务):是允许在存储节点的进程
4、模块化堆栈式架构
1.模块化的设计,即把功能封装在一起,最后一起调用
2.同时启用多个模块,多个功能的组合,这种提供功能的方式叫做堆栈式的结构
3.通过对模块的组合,可以实现复杂的功能
模块化:类似linux 编译安装,很多功能都可以做定制的,通常都是通过软件开发的方式封装为模块,按需使用/不适用
GlusterFs也是这个思想:把功能封装为一个个模块,通过加载/调用/启用的方式就可以对应的功能堆栈式架构设计通过对模块不同功能的组合来实现复杂功能
5、GFS 工作流程
① 客户端或应用程序通过 GlusterFS 的挂载点访问数据
② linux系统内核通过 VFS API 收到请求并处理
③ VFS 将数据递交给 FUSE 内核文件系统,并向系统注册一个实际的文件系统 FUSE,而 FUSE 文件系统则是将数据通过 /dev/fuse 设备文件递交给了 GlusterFS client 端。可以将 FUSE 文件系统理解为一个代理
④ GlusterFS client 收到数据后,client 根据配置文件的配置对数据进行处理
⑤ 经过 GlusterFS client 处理后,通过网络将数据传递至远端的 GlusterFS Server,并且将数据写入到服务器存储设备上
简单来说:应用程序访问本地挂载的目录进行查看修改等操作,服务器会通过内核交给文件系统进行处理,并且处理后的数据会通过网络传递给该挂载目录实际所在的源服务器中,源服务器会对数据进行存储
GFS-server 端功能模块的划分:
① 卷的类型(使用分布式、复制、条带)
② 存储管理(卷的创建、启用、关闭)
③ I/O调用(存储后,读取数据,如何读取)
④ 与GFS-client 端对接GFS-client 端
① 用户通过用户态模式下,存储数据(写入数据)
② 写入的数据,使用GFS挂载的形式完成(网络挂载samba/NFS)
③数据的写入会由GFS-client转存到GFS-server端(对应的卷中)网络通讯
① Infinlband ——— IB
② RDMA——— 面向连接传输协议—— 数据完整性(丢包率低)
③ TCP/IP
④ RDMA———》以后的服务中可以做为跨节点共享内存资源的协议
6、各服务器详解
1.Application:客户端或应用程序通过GlusterFSync的挂载点访问数据
2.VFS:linux系统内核通过VFS的API 收到请求并处理
3.FUSE:VFS将数据递交给FUSE内核文件系统,fuse文件系统则是将数据通过/dev/fuse设备文件递交给了GlusterFS
4.GlusterFS Client :通过网络将数据传递至远端的GlusterFS Server, 并且写入到服务器存储设备上
三、GFS 卷类型
为了解决分布式文件数据索引、定位的复杂程度,而使用了HASH算法来辅助
分布式(平均分配)的好处:
① 当数据量越来越大的时候,相对每个存储节点的数据量(几率)是相等的
② 而如果考虑到单点故障问题,当数据存储再c存储节点,对此GFS是会有备份机制的,默认3备份,所以GFS本身的机制会对数据产生冗余,以此解决单点故障
GlusterFS支持七种卷,即分布式卷、条带卷、复制卷、分布式条带卷、分布式复制卷、条带复制卷和分布式条带复制卷
1、分布式卷(Distribute volume)
文件通过 HASH 算法分布到所有 Brick Server 上,这种卷是 GlusterFS 的默认卷;以文件为单位根据 HASH 算法散列到不同的 Brick,其实只是扩大了磁盘空间,如果有一块磁盘损坏,数据也将丢失,属于文件级的 RAID0, 不具有容错能力。在该模式下,并没有对文件进行分块处理,文件直接存储在某个 Server 节点上。 由于直接使用本地文件系统进行文件存储,所以存取效率并没有提高,反而会因为网络通信的原因而有所降低。
(1)分布式卷示例原理
File1 和 File2 存放在 Server1,而 File3 存放在 Server2,文件都是随机存储,一个文件(如 File1)要么在 Server1 上,要么在 Server2 上,不能分块同时存放在 Server1和 Server2 上。
(2)分布式卷特点
文件分布在不同的服务器,不具备冗余性更容易和廉价地扩展卷的大小单点故障会造成数据丢失依赖底层的数据保护
(3)创建分布式卷
创建一个名为dis-volume的分布式卷,文件将根据HASH分布在server1:/dir1、server2:/dir2和server3:/dir3中gluster volume create dis-volume server1:/dir1 server2:/dir2 server3:/dir3
2、条带卷 (Stripe volume)
类似 RAID0,文件被分成数据块并以轮询的方式分布到多个 Brick Server 上,文件存储以数据块为单位,支持大文件存储, 文件越大,读取效率越高,但是不具备冗余性。
(1)条带卷示例原理
File 被分割为 6 段,1、3、5 放在 Server1,2、4、6 放在 Server2。
(2)条带卷特点
根据偏移量将文件分成N块(N个条带点),轮询的存储在每个Brick Serve 节点.分布减少了负载,在存储大文件时,性能尤为突出.没有数据冗余,类似于Raid 0
(3)创建条带卷
创建了一个名为stripe-volume的条带卷,文件将被分块轮询的存储在Server1:/dir1和Server2:/dir2两个Brick中gluster volume create stripe-volume stripe 2 transport tcp server1:/dir1 server2:/dir2
3、复制卷(Replica volume)
将文件同步到多个 Brick 上,使其具备多个文件副本,属于文件级 RAID 1,具有容错能力。因为数据分散在多个 Brick 中,所以读性能得到很大提升,但写性能下降。复制卷具备冗余性,即使一个节点损坏,也不影响数据的正常使用。但因为要保存副本,所以磁盘利用率较低。
(1)复制卷示例原理
File1 同时存在 Server1 和 Server2,File2 也是如此,相当于 Server2 中的文件是 Server1 中文件的副本。
(2)复制卷特点
卷中所有的服务器均保存一个完整的副本。具备冗余性.卷的副本数量可由客户创建的时候决定,但复制数必须等于卷中 Brick 所包含的存储服务器数。至少由两个块服务器或更多服务器。若多个节点上的存储空间不一致,将按照木桶效应取最低节点的容量作为改卷的总容量。
(3)创建复制卷
创建名为rep-volume的复制卷,文件将同时存储两个副本,分别在Server1:/dir1和Server2:/dir2两个Brick中gluster volume create rep-volume replica 2 transport tcp server1:/dir1 server2:/dir2
4、分布式条带卷(Distribute Stripe volume)
Brick Server 数量是条带数(数据块分布的 Brick 数量)的倍数,兼具分布式卷和条带卷的特点。 主要用于大文件访问处理**,创建一个分布式条带卷最少需要 4 台服务器。**
(1)分布式条带卷示例原理
File1 和 File2 通过分布式卷的功能分别定位到Server1和 Server2。在 Server1 中,File1 被分割成 4 段,其中 1、3 在 Server1 中的 exp1 目录中,2、4 在 Server1 中的 exp2 目录中。在 Server2 中,File2 也被分割成 4 段,其中 1、3 在 Server2 中的 exp3 目录中,2、4 在 Server2 中的 exp4 目录中。
(2)创建分布式条带卷
创建一个名为dis-stripe的分布式条带卷,配置分布式的条带卷时,卷中Brick所包含的存储服务器数必须是条带数的倍数(>=2倍)。Brick 的数量是 4(Server1:/dir1、Server2:/dir2、Server3:/dir3 和 Server4:/dir4),条带数为 2(stripe 2)gluster volume create dis-stripe stripe 2 transport tcp server1:/dir1 server2:/dir2 server3:/dir3 server4:/dir4
创建卷时,存储服务器的数量如果等于条带或复制数,那么创建的是条带卷或者复制卷;如果存储服务器的数量是条带或复制数的 2 倍甚至更多,那么将创建的是分布式条带卷或分布式复制卷。
5、分布式复制卷(Distribute Replica volume)
分布式复制卷(Distribute Replica volume):Brick Server 数量是镜像数(数据副本数量)的倍数,兼具分布式卷和复制卷的特点,主要用于需要冗余的情况下。
(1)分布式条带卷的示例原理
File1 和 File2 通过分布式卷的功能分别定位到 Server1 和 Server2。在存放 File1 时,File1 根据复制卷的特性,将存在两个相同的副本,分别是 Server1 中的exp1 目录和 Server2 中的 exp2 目录。在存放 File2 时,File2 根据复制卷的特性,也将存在两个相同的副本,分别是 Server3 中的 exp3 目录和 Server4 中的 exp4 目录。
(2)创建分布式复制卷
建一个名为dis-rep的分布式复制卷,配置分布式的复制卷时,卷中Brick所包含的存储服务器数必须是复制数的倍数(>=2倍)。Brick 的数量是 4(Server1:/dir1、Server2:/dir2、Server3:/dir3 和 Server4:/dir4),复制数为 2(replica 2)gluster volume create dis-rep replica 2 transport tcp server1:/dir1 server2:/dir2 server3:/dir3 server4:/dir4
6、条带复制卷(Stripe Replica volume)和分布式条带复制卷(Distribute Stripe Replicavolume)
条带复制卷(Stripe Replica volume)类似 RAID 1 0,同时具有条带卷和复制卷的特点。
分布式条带复制卷(Distribute Stripe Replicavolume)三种基本卷的复合卷,通常用于类 Map Reduce 应用
四、搭建GFS
(一)服务端配置
1.环境
- 每台虚拟机需要添加4块5G磁盘
Node1节点:node1/192.168.3.11 磁盘:/dev/sdb1 挂载点:/data/sdb1 5GX4/dev/sdc1 /data/sdc1/dev/sdd1 /data/sdd1/dev/sde1 /data/sde1Node2节点:node2/192.168.3.12 磁盘:/dev/sdb1 挂载点:/data/sdb1 5GX4/dev/sdc1 /data/sdc1/dev/sdd1 /data/sdd1/dev/sde1 /data/sde1Node3节点:node3/192.168.3.13 磁盘:/dev/sdb1 挂载点:/data/sdb1 5GX4/dev/sdc1 /data/sdc1/dev/sdd1 /data/sdd1/dev/sde1 /data/sde1Node4节点:node4/192.168.3.14 磁盘:/dev/sdb1 挂载点:/data/sdb1 5GX4/dev/sdc1 /data/sdc1/dev/sdd1 /data/sdd1/dev/sde1 /data/sde1Client节点:192.168.3.15
2.修改主机名
hostnamectl set-hostname node1
suhostnamectl set-hostname node2
suhostnamectl set-hostname node3
suhostnamectl set-hostname node4
suhostnamectl set-hostname client
su
3.使用脚本对硬盘进行分区挂载
vim /opt/fdisk.sh#!/bin/bash
#刷新磁盘
echo "- - -" >/sys/class/scsi_host/host0/scan
echo "- - -" >/sys/class/scsi_host/host1/scan
echo "- - -" >/sys/class/scsi_host/host2/scan
##grep出系统所带磁盘
fdisk -l |grep '磁盘 /dev/sd[a-z]'
echo "=================================================="
PS3="chose which disk you want to create:"##选择需要创建的磁盘编号
select VAR in `ls /dev/sd*|grep -o 'sd[b-z]'|uniq` quit
docase $VAR insda)##本地磁盘就退出case语句fdisk -l /dev/sdabreak ;;sd[b-z])#create partitionsecho "n ##创建磁盘pw" | fdisk /dev/$VAR#make filesystem
##格式化mkfs.xfs -i size=512 /dev/${VAR}"1" &> /dev/null#mount the systemmkdir -p /data/${VAR}"1" &> /dev/null
###永久挂载echo -e "/dev/${VAR}"1" /data/${VAR}"1" xfs defaults 0 0\n" >> /etc/fstab
###使得挂载生效mount -a &> /dev/nullbreak ;;quit)break;;*)echo "wrong disk,please check again";;esac
done>>>>>>wq
4.添加四个节点域名解析
vim /etc/hosts
192.168.3.11 node1
192.168.3.12 node2
192.168.3.13 node3
192.168.3.14 node4
5.安装本地源GFS
- 四个节点相同操作
cd /opt
wget http://112.124.46.81/gfsrepo.zip
unzip gfsrepo.zip ##解压
cd /etc/yum.repos.d/
mkdir bak ##将原来的源移动到新建的目录中
mv Cent* bak/vim local.repo //配置本地源[glfs]
name=glfs
baseurl=file:///opt/gfsrepo
gpgcheck=0
enabled=1>>>>>>>wq#安装GFS软件包,四台节点都做
yum clean all && yum makecacheyum -y install glusterfs glusterfs-server glusterfs-fuse glusterfs-rdma ###安装
#glusterfs-server服务端软件、glusterfs-fuse使用gfs文件系统软件systemctl start glusterd.service ###启动
systemctl enable glusterd.service ###开机自启
systemctl status glusterd.service ###查看状态
- 添加节点到存储信任池中(在node1节点上操作)
gluster peer probe node1
gluster peer probe node2
gluster peer probe node3
gluster peer probe node4gluster peer status ##在每个节点上查看群集状态
6.创建卷
- 根据规划创建如下卷
卷名称 | 卷类型 | Brick |
---|---|---|
dis-volume | 分布式卷 | node1(/data/sdb1)、node2(/data/sdb1) |
stripe-volume | 条带卷 | node1(/data/sdc1)、node2(/data/sdc1) |
rep-volume | 复制卷 | node3(/data/sdb1)、node4(/data/sdb1) |
dis-stripe | 分布式条带卷 | node1(/data/sdd1)、node2(/data/sdd1)、node3(/data/sdd1)、node4(/data/sdd1) |
dis-rep | 分布式复制卷 | node1(/data/sde1)、node2(/data/sde1)、node3(/data/sde1)、node4(/data/sde1) |
6.1创建分布式卷
#创建分布式卷,没有指定类型,默认创建的是分布式卷
gluster volume create dis-volume node1:/data/sdb1 node2:/data/sdb1 force #查看卷列表
gluster volume list #启动新建分布式卷
gluster volume start dis-volume #查看创建分布式卷信息
gluster volume info dis-volume
6.2.创建条带卷
#指定类型为 stripe,数值为 2,且后面跟了 2 个 Brick Server,所以创建的是条带卷
gluster volume create stripe-volume stripe 2 node1:/data/sdc1 node2:/data/sdc1 force#启动新建条带卷
gluster volume start stripe-volume #查看创建条带卷信息
gluster volume info stripe-volume
6.3创建复制卷
#指定类型为 replica,数值为 2,且后面跟了 2 个 Brick Server,所以创建的是复制卷
gluster volume create rep-volume replica 2 node3:/data/sdb1 node4:/data/sdb1 force#启动新建复制卷
gluster volume start rep-volume #查看创建复制卷信息
gluster volume info rep-volume
6.4创建分布式条带卷
#指定类型为 stripe,数值为 2,而且后面跟了 4 个 Brick Server,是 2 的两倍,所以创建的是分布式条带卷
gluster volume create dis-stripe stripe 2 node1:/data/sdd1 node2:/data/sdd1 node3:/data/sdd1 node4:/data/sdd1 force#启动新建分布式条带卷
gluster volume start dis-stripe #查看创建分布式条带卷信息
gluster volume info dis-stripe
6.5创建分布式复制卷
#指定类型为 replica,数值为 2,而且后面跟了 4 个 Brick Server,是 2 的两倍,所以创建的是分布式复制卷
gluster volume create dis-rep replica 2 node1:/data/sde1 node2:/data/sde1 node3:/data/sde1 node4:/data/sde1 force#启动新建分布式复制卷
gluster volume start dis-rep #查看创建分布式复制卷信息
gluster volume info dis-rep
- 此时再去查看卷列表,应有五个卷
gluster volume list ##查看卷列表
五、客户端配置
- 客户端的操作:在node1上创建五个卷后,在客户端上把卷挂载在指定的五个目录内,在目录内写入了五个文件,五个文件分别保存在五个目录里面
1.安装客户端
cd /opt
wget http://112.124.46.81/gfsrepo.zip //下载安装包
unzip gfsrepo.zip //解压cd /etc/yum.repos.d/
mkdir repo.bak //创建备份目录
mv local.repo repos.bak/ //备份vim glfs.repo[glfs]
name=glfs
baseurl=file:///opt/gfsrepo
gpgcheck=0
enabled=1>>>>>>>wqyum clean all && yum makecache
yum install -y glusterfs glusterfs-fuse#创建挂载目录
mkdir -p /test/{dis,stripe,rep,dis_stripe,dis_rep}
ls /test#配置域名解析
echo "192.168.3.11 node1" >> /etc/hosts
echo "192.168.3.12 node2" >> /etc/hosts
echo "192.168.3.13 node3" >> /etc/hosts
echo "192.168.3.14 node4" >> /etc/hosts#挂载 Gluster 文件系统
mount.glusterfs node1:dis-volume /test/dis
mount.glusterfs node1:stripe-volume /test/stripe
mount.glusterfs node1:rep-volume /test/rep
mount.glusterfs node1:dis-stripe /test/dis_stripe
mount.glusterfs node1:dis-rep /test/dis_rep
df -Th
查看挂载
- 卷中写入文件,客户端操作
cd /opt#生成一个特定大小的文件给与/opt/demo*.log下,大小为1M,共处理40次
dd if=/dev/zero of=/opt/demo1.log bs=1M count=40
dd if=/dev/zero of=/opt/demo2.log bs=1M count=40
dd if=/dev/zero of=/opt/demo3.log bs=1M count=40
dd if=/dev/zero of=/opt/demo4.log bs=1M count=40
dd if=/dev/zero of=/opt/demo5.log bs=1M count=40ls -lh /optcp demo* /test/dis
cp demo* /test/stripe/
cp demo* /test/rep/
cp demo* /test/dis_stripe/
cp demo* /test/dis_rep/ls /test/
#查看/test/的文件夹/文件的目录树
2.验证gluster文件系统
- gluster服务器上查看文件分布
(1)查看分布式文件分布
ls -lh /data/sdb1 ##没有被分片,文件分开节点存放
(2)查看条带卷文件分布
ls -lh /data/sdc1 ##查询数据被分片50% 没副本 没冗余
(3)查看复制卷分布
复制卷放在了node3、node4
ll -h /data/sdb1 ##没有被分片,有副本,有冗余
(4)查看分布式条带卷分布
ll -h /data/sdd1 ##文件被分片50%,没副本,没冗余
(5)查看分布式复制卷分布
ll -h /data/sde1 ##数据没有被分片 有副本 有冗余
3.冗余(破坏)测试
1.在客户端查看文件
[root@client test]# cd /test/
[root@client test]# ll -h dis
总用量 200M
-rw-r--r-- 1 root root 40M 11月 17 14:20 demo1.log
-rw-r--r-- 1 root root 40M 11月 17 14:20 demo2.log
-rw-r--r-- 1 root root 40M 11月 17 14:20 demo3.log
-rw-r--r-- 1 root root 40M 11月 17 14:20 demo4.log
-rw-r--r-- 1 root root 40M 11月 17 14:20 demo5.log2.把node2节点关闭(模拟宕机),再回到客户端检查,可以看到demo5没了,所以可以得出分布式卷(node1/2)不具备冗余的特性
[root@node2 ~]# init 0[root@client opt]# cd /test
[root@client test]# ll -h dis
总用量 160M
-rw-r--r-- 1 root root 40M 11月 17 14:20 demo1.log
-rw-r--r-- 1 root root 40M 11月 17 14:20 demo2.log
-rw-r--r-- 1 root root 40M 11月 17 14:20 demo3.log
-rw-r--r-- 1 root root 40M 11月 17 14:20 demo4.log3.且发现条带卷(node1/2)数据为0,不具备冗余
[root@client test]# ll -h stripe/
总用量 04.关闭node3,测试复制卷(node3/node4)的冗余性
[root@node3 ~]# init 0[root@client test]# ll -h rep/
总用量 200M
-rw-r--r-- 1 root root 40M 11月 17 14:20 demo1.log
-rw-r--r-- 1 root root 40M 11月 17 14:20 demo2.log
-rw-r--r-- 1 root root 40M 11月 17 14:20 demo3.log
-rw-r--r-- 1 root root 40M 11月 17 14:20 demo4.log
-rw-r--r-- 1 root root 40M 11月 17 14:20 demo5.log
#可以看到数据仍然存在,不受影响5.查看分布式条带卷(node1/2/3/4)
[root@client test]# ll -h dis_stripe/
总用量 0
#也并不具备冗余性6.查看分布式复制卷(node1/2/3/4)
[root@client test]# ll -h dis_rep/
总用量 200M
-rw-r--r-- 1 root root 40M 11月 17 14:20 demo1.log
-rw-r--r-- 1 root root 40M 11月 17 14:20 demo2.log
-rw-r--r-- 1 root root 40M 11月 17 14:20 demo3.log
-rw-r--r-- 1 root root 40M 11月 17 14:20 demo4.log
-rw-r--r-- 1 root root 40M 11月 17 14:20 demo5.log
结果证明:只要带复制数据的相比而言,数据比较安全
六、Gluster的其他的维护命令
1.查看GlusterFS卷
gluster volume list2.查看所有卷的信息
gluster volume info3.查看所有卷的状态
gluster volume status4.停止一个卷
gluster volume stop dis-stripe5.删除一个卷
gluster volume delete dis-stripe
#注意:删除卷时,需要先停止卷,且信任池中不能有主机处于宕机状态,否则不能成功删除6.设置卷的访问控制
gluster volume set dis-rep auth.allow 192.168.3.100
#仅拒绝,设置为IP地址为192.168.3.100的主机禁止访问dis-rep(分布式复制卷)gluster volume set dis-rep auth.allow 192.168.3.*
#仅允许,设置为192.168.3.0网段的所有IP地址都能访问dis-rep(分布式复制卷)
GFS(分布式文件系统)相关推荐
- GFS分布式文件系统简介及部署——让存储变得更高级
GFS分布式文件系统简介及部署 一.GFS概述 1.文件系统 ①.文件系统组成 ②.文件系统的作用 ③.专业术语 二.GFS特点 三.GFS工作原理 四.GFS卷 1.GFS卷类型 2.三大基本卷的特 ...
- 浅识一下GFS分布式文件系统
GFS分布式文件系统 什么是GFS分布式文件系统 GFS(GlusterFS) 是一个开源的分布式文件系统. 由存储服务器.客户端以及NFS/Samba 存储网关(可选,根据需要选择使用)组成. 没有 ...
- GFS分布式文件系统
GFS分布式文件系统 前言 GFS是一个可扩展的分布式文件系统,用于大型的.分布式的.对大量数据进行访问的应用.它运行于廉价的普通硬件上,并提供容错功能.它可以给大量的用户提供总体性能较高的服务. G ...
- GlusterFS/GFS 分布式文件系统--理论详解
文章目录 一.文件系统简介 1.组成 2.作用 3.文件系统的挂载使用 二.GFS分布式文件系统概述 1.GFS简介 2.GFS的特点 3.GFS专业术语 4. 模块化堆栈式架构 5. GFS 工作流 ...
- 如何搭建GFS分布式文件系统
如何搭建GFS分布式文件系统 什么是文件系统 文件系统的组成部分 文件系统作用 文件系统的使用 分布式文件系统GFS GFS简介 GFS组成 GFS的特点 GFS专业术语 GFS模块化和堆栈式架构 G ...
- GFS 分布式文件系统从入门到实践
文章目录 一.GlusterFS 概述 1.1 GlusterFS简介 1.2 GlusterFS的特点 (一)扩展性和高性能 (二)高可用性 (三)弹性卷管理 (四)基于标准协议 二.Gluster ...
- GFS —— 分布式文件系统
文章目录 一.概述 1.1 文件系统组成 1.2 文件系统FS作用 1.3 文件系统FS 的挂载使用 1.4 分布式文件系统(GFS)组成 1.5 分布式文件系统(GFS)特点 1. 6 分布式文件系 ...
- 企业级别应用--GFS分布式文件系统(GlusterFS工作原理、弹性 HASH 算法 、GlusterFS卷的类型、 部署GlusterFS)
文章目录 一. GlusterFS 概述 1.1 GlusterFS 简介 与传统分布式相比的优点 1.2 GlusterFS 的特点 扩展性和高性能 高可用性 全局统一命名空间 弹性卷管理 基于标准 ...
- 大点干!早点散----------深入剖析GFS分布式文件系统
文章目录 一.GlusterFS(GFS)介绍 1.GlusterFS 2.GlusterFS特点 3.常用术语 4.GFS的结构 5.弹性HASH算法 6.GlusterFS工作原理 二.Glust ...
- 分布式应用之GFS分布式文件系统
内容预知 前言 1. GlusterFS的相关知识 1.1 GlusterFS简介 1.2 GlusterFS特点 1.3 GlusterFS 术语 1.4 模块化堆栈式架构 1.5 GlusterF ...
最新文章
- centos gitlab mysql_CentOS-7下yum安装GitLab-CE
- 建立可扩展的silverlight应用框架 step-4
- 安装编译PHP7.X
- word手写字体以假乱真_学会Word上下标,搞定公式输入
- 全部关于测试–第2部分
- 实例29:python
- 融资2.5亿的国产浏览器,被曝只是打包chrome
- Java编码手册之华山版小精华
- Kubernetes可以代替Docker,可笑
- 五大特点_皮肤肤质五大分类及其特点
- matlab imagesc 白色,[转载]matlab 中imagesc的用法
- 使用Arduino+声音模块+LCD显示屏制作分贝仪
- 将Word转换成PDF格式文档的方法
- 高校三维地图校内导航系统解决方案
- 29、程序员的面试考题,要求用一个for循环打出乘法表。
- 姜小白的Python日记Day15 系统模块详解2 sys模块和os模块
- 低照度水下图像增强论文(L2UWE)+代码+评价方法
- 图和两种遍历,Saving James Bond
- 域控制器组策略:域用户加入域,默认加入本地管理员组
- 如何在word2013插入页码
热门文章
- 软件工程导图呈现——软件
- 西航计算机学院学生会,“智”行千里,逐梦远航丨西航职院人工智能学院召开2020年度总结表彰暨新年联欢会...
- 使用俄罗斯老大哥的Wrap进行缩裹式半自动重拓扑
- 【渝粤教育】 广东开放大学21秋期末考试民事诉讼法学10680k2
- 信息学奥赛 CSP-J2 CSP-S2第2轮 复赛 如何取得好成绩
- java--设计一个Javabean记载网页的访问数量
- 6、中小企业网络架构-防火墙基本配置
- python 邮件_Python发送邮件(常见四种邮件内容)
- 笨重POS机遇到便捷APP谁更有优势?
- 复现 MonoEF:Monocular 3D Object Detection: An Extrinsic Parameter Free Approach