glusterfs分布式文件系统!(代码片段)

handsomeboy-东 handsomeboy-东     2022-12-06     141

关键词:

GlusterFS

GlusterFS基本知识

文件系统

  • 组成:文件系统接口,对对象管理的软件集合,对象及属性
  • 作用:负载为用户建立文件、存入、读取、修改、转储文件,控制文件的存取
  • 文件系统的挂载使用:除根文件系统以外的文件系统创建后 要使用需要先挂载点后菜可以被访问,挂载点及分区设备文件关联的某个目录文件

GlusterFS

概述:它是开源的分布式文件系统,由存储服务器、客户端以及NFS/Samba存储网关组成

GlusterFS特点

  • 拓展性和高性能
  • 高可用性
  • 全局统一命名空间(指共享),提供了一个API,为用户访问GFS服务器中数据的唯一入口
  • 弹性卷管理
  • 基于标准协议 :客户端和存储服务器交互需要借助网络,而相关的网络协议包括TCP/IP协议

GlusterFS组成

  • 存储服务器:存储节点信息
  • 客户端;存储元数据,帮用户定位文件的位置,索引等信息
  • NFS/Samba存储网关组成

GlusterFS专业术语

  • brick :用于存储用户数据的服务器
  • FUSE:远程的GFS,客户端的请求要交给FUSE(伪文件系统),就可以实现跨界点存储在GFS上
  • volume :本地文件系统的“分区”
  • VFS(虚拟端口):内核态的虚拟文件系统,用户是先提交请求给VFS,然后VFS交给FUSE再交给GFS客户端,最好客户端交给远程的存储
  • glusterd:是运行在存储节点的进程

GlusterFS工作流程

  • 客户端存储将文件放入,通过system call调用VFS内核寻端口
  • VFS将数据交给FUSE,FUSE将数据保存到/dev/fuse虚拟设备中(缓存中),然后唤醒GFS-client
  • client将数据传输给server端,server端通过VFS将数据保存在EXT3这种文件系统中,然后保存到brick存储服务器

GlusterFS卷类型


 - distribute volume:分布式卷
 - stripe voluem :条带卷
 - replica volume :负责卷
 - distribute stripe volume :分布式条带卷
 - distribute replica volume :分布式负责卷
 - stripe replica volume :条带负责卷
 - distribute stripe replicavolume :分布式条带负责卷

GlusterFS集群部署

设备准备,四台CentOS7作为GFS节点,一台客户端

 - node1-4节点:磁盘/dev/sdb1		挂载点:/whd/sdb1
			 磁盘/dev/sde1		挂载点:/whd/sdc1
			 磁盘/dev/sdd1		挂载点:/whd/sdd1
			 磁盘/dev/sde1		挂载点:/whd/sde1
IP地址分别为:192.168.118.100		192.168.118.200
			192.168.118.50		192.168.118.55
client端:192.168.118.88
  • 四台GFS同时操作
##用脚本进行磁盘分区并挂载
vim /opt/fdisk.sh
#!/bin/bash
echo "the disks exist list:"
##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   
do
    case $VAR in
    sda)
 ##本地磁盘就退出case语句
        fdisk -l /dev/sda   
        break ;;
    sd[b-z])
        #create partitions
        echo "n    ##创建磁盘
                p
                
                
           
                w"  | fdisk /dev/$VAR
 
        #make filesystem
##格式化
        mkfs.xfs -i size=512 /dev/$VAR"1" &> /dev/null    
	#mount the system
        mkdir -p /data/$VAR"1" &> /dev/null
###永久挂载
        echo -e "/dev/$VAR"1" /data/$VAR"1" xfs defaults 0 0\\n" >> /etc/fstab
###使得挂载生效
        mount -a &> /dev/null
        break ;;
    quit)
        break;;
    *)
        echo "wrong disk,please check again";;
    esac
done

##给予权限,执行脚本
chmod +x /opt/fdisk.sh
cd /opt/
sh -x fdisk.sh						#连续四次,交互过程填写1,2,3,4
[root@node4 opt]# df -hT
Filesystem     Type      Size  Used Avail Use% Mounted on
/dev/sda3      xfs       197G  5.4G  192G   3% /
devtmpfs       devtmpfs  895M     0  895M   0% /dev
tmpfs          tmpfs     910M     0  910M   0% /dev/shm
tmpfs          tmpfs     910M   11M  900M   2% /run
tmpfs          tmpfs     910M     0  910M   0% /sys/fs/cgroup
/dev/sda1      xfs       197M  152M   45M  78% /boot
tmpfs          tmpfs     182M  4.0K  182M   1% /run/user/42
tmpfs          tmpfs     182M   36K  182M   1% /run/user/0
/dev/sdb1      xfs        20G   33M   20G   1% /data/sdb1
/dev/sdc1      xfs        20G   33M   20G   1% /data/sdc1
/dev/sdd1      xfs        20G   33M   20G   1% /data/sdd1
/dev/sde1      xfs        20G   33M   20G   1% /data/sde1

添加地址映射
echo "192.168.118.200 node1" >> /etc/hosts
echo "192.168.118.55 node2" >> /etc/hosts
echo "192.168.118.100 node3" >> /etc/hosts
echo "192.168.118.50 node4" >> /etc/hosts
echo "192.168.118.88 client" >> /etc/hosts


##安装部署GlusterFS,设置本地源安装
unzip gfsrepo.zip 
cd /etc/yum.repos.d/
mkdir bak
mv CentOS-* bak

vim gfs.repo
[glfs]
name=glfs
baseurl=file:///opt/gfsrepo
gpgcheck=0
enabled=1

yum clean all				#刷新本地仓库
yum makecache
rpm -e --nodeps glusterfs-api glusterfs-libs glusterfs-fuse glusterfs-cli  glusterfs glusterfs-client-xlators
yum -y install glusterfs glusterfs-server glusterfs-fuse glusterfs-rdma		#下载依赖包

##开启服务

systemctl start glusterd.service 
systemctl enable glusterd.service
systemctl status glusterd.service
  • 在node1上添加节点到存储信任池中
[root@node1 gfsrepo]# gluster peer probe node1
peer probe: success. 
[root@node1 gfsrepo]# gluster peer probe node2
peer probe: success. 
[root@node1 gfsrepo]# gluster peer probe node3
peer probe: success. 
[root@node1 gfsrepo]# gluster peer probe node4		
peer probe: success. Probe on localhost not needed
[root@node1 gfsrepo]# gluster peer status				#查看结果
Number of Peers: 3

Hostname: node1
Uuid: 83a80dc9-316f-4472-a9b2-8b8b0563bd66
State: Peer in Cluster (Connected)

Hostname: node2
Uuid: 0033f686-4ea0-43f7-922e-dd5bf47ad454
State: Peer in Cluster (Connected)

Hostname: node3
Uuid: 7821c5d7-e0f3-4f41-b376-f9dbdbad7377
State: Peer in Cluster (Connected)
  • 创建卷
#根据规划创建如下卷:
卷名称 				卷类型				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)

```bash
创建分布式卷,会提醒需要开启
[root@node1 gfsrepo]# gluster volume create dis-volume node1:/data/sdb1 node2:/data/sdb1 force
volume create: dis-volume: success: please start the volume to access data
[root@node1 gfsrepo]# gluster volume list				#查看卷列表
dis-volume
[root@node1 gfsrepo]# gluster volume start dis volume	#启动新建分布式卷
Usage: volume start <VOLNAME> [force]
[root@node1 gfsrepo]# gluster volume info dis-volume	#查看分布式卷信息
 
Volume Name: dis-volume
Type: Distribute
Volume ID: c542f24d-b18f-432f-acdd-6f7bb9ee6e1b
Status: Created
Snapshot Count: 0
Number of Bricks: 2
Transport-type: tcp
Bricks:
Brick1: node1:/data/sdb1
Brick2: node2:/data/sdb1
Options Reconfigured:
transport.address-family: inet
nfs.disable: on
  • 创建条带卷
[root@node1 gfsrepo]# gluster volume create stripe-volume stripe 2 node1:/data/sdc1 node2:/data/sdc1 force
volume create: stripe-volume: success: please start the volume to access data
[root@node1 gfsrepo]# gluster volume start stripe-volume		
volume start: stripe-volume: success
[root@node1 gfsrepo]# gluster volume info stripe-volume
 
Volume Name: stripe-volume
Type: Stripe
Volume ID: 80ff853d-2439-4a31-81c9-99da146883e4
Status: Started
Snapshot Count: 0
Number of Bricks: 1 x 2 = 2
Transport-type: tcp
Bricks:
Brick1: node1:/data/sdc1
Brick2: node2:/data/sdc1
Options Reconfigured:
transport.address-family: inet
nfs.disable: on
  • 创建复制卷
[root@node1 gfsrepo]# gluster volume create rep-volume replica 2 node3:/data/sdb1 node4:/data/sdb1 force
volume create: rep-volume: success: please start the volume to access data
[root@node1 gfsrepo]# gluster volume start rep-volume
volume start: rep-volume: success
[root@node1 gfsrepo]# gluster volume info rep-volume
 
Volume Name: rep-volume
Type: Replicate
Volume ID: fbac45bc-a688-4228-a96b-d9407bd40f08
Status: Started
Snapshot Count: 0
Number of Bricks: 1 x 2 = 2
Transport-type: tcp
Bricks:
Brick1: node3:/data/sdb1
Brick2: node4:/data/sdb1
Options Reconfigured:
transport.address-family: inet
nfs.disable: on
  • 创建分布式条带卷
[root@node1 gfsrepo]# gluster volume create dis-stripe stripe 2 node1:/data/sdd1 node2:/data/sdd1 node3:/data/sdd1 node4:/data/sdd1 force
volume create: dis-stripe: success: please start the volume to access data
[root@node1 gfsrepo]# gluster volume start dis-stripe
volume start: dis-stripe: success
[root@node1 gfsrepo]# gluster volume info dis-stripe
 
Volume Name: dis-stripe
Type: Distributed-Stripe
Volume ID: e83bc20b-70ae-486a-a7bc-5c20d774da6f
Status: Started
Snapshot Count: 0
Number of Bricks: 2 x 2 = 4
Transport-type: tcp
Bricks:
Brick1: node1:/data/sdd1
Brick2: node2:/data/sdd1
Brick3: node3:/data/sdd1
Brick4: node4:/data/sdd1
Options Reconfigured:
transport.address-family: inet
nfs.disable: on
  • 创建分布式复制卷
[root@client yum.repos.d]# gluster volume create dis-rep replica 2 node1:/data/sde1 node2:/data/sde1 node3:/data/sde1 node4:/data/sde1 force
[root@client yum.repos.d]# gluster volume start dis-rep
volume start: dis-rep: success
[root@node1 ~]# gluster volume info dis-rep 
Volume Name: dis-rep
Type: Distributed-Replicate
Volume ID: d13a594e-ed13-4cc4-a8a7-ec7c145bc766
Status: Started
Snapshot Count: 0
Number of Bricks: 2 x 2 = 4
Transport-type: tcp
Bricks:
Brick1: node1:/data/sde1
Brick2: node2:/data/sde1
Brick3: node3:/data/sde1
Brick4: node4:/data/sde1
Options Reconfigured:
transport.address-family: inet
nfs.disable: on
[root@node1 ~]# gluster volume list
dis-rep
dis-stripe
dis-volume
rep-volume
stripe-volume

  • client端部署
[root@client ~]# cd /etc/yum.repos.d/			#设置本地仓库
[root@client yum.repos.d]# vim gif.repo
[glfs]
name=glfs
baseurl=file:///opt/gfsrepo
gpgcheck=0
enabled=1
[root@client yum.repos.d]# yum clean all
[root@client yum.repos.d]# yum makecache
[root@client yum.repos.d]# yum -y install glusterfs glusterfs-fuse
[root@client yum.repos.d]# mkdir -p /test/dis,stripe,rep,dis_stripe,dis_rep	#创建挂载目录


##配置/etc/hosts文件
[root@client yum.repos.d]# echo "192.168.118.50 node1" >> /etc/hosts
[root@client yum.repos.d]# echo "192.168.118.55 node2" >> /etc/hosts
[root@client yum.repos.d]# echo "192.168.118.100 node3" >> /etc/hosts
[root@client yum.repos.d]# echo "192.168.118.200 node4" >> /etc/hosts
[root@client yum.repos.d]# echo "192.168.118.88 client" >> /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

##永久挂载
[root@client ~]# vim /etc/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-stripe		/test/dis_stripe		glusterfs		defaults,_netdev		0 0
node1:dis-rep			/test/dis_rep			glusterfs		defaults,_netdev		0 0
[root@client ~]# mount -a
  • 测试GlusterFS文件系统
[root@client ~]# cd /opt
###在卷中写入文件
[root@client opt]# dd if=/dev/zero of=/opt/demo1.log bs=1M count=20
记录了20+0 的读入
记录了20+0 的写出
20971520字节(21 MB)已复制,0.0442097 秒,474 MB/秒
[root@client opt]# dd if=/dev/zero of=/opt/demo2.log bs=1M count=20
记录了20+0 的读入
记录了20+0 的写出
20971520字节(21 MB)已复制,0.0903227 秒,232 MB/秒
[root@client opt]# dd if=/dev/zero of=/opt/demo3.log bs=1M count=20
记录了20+0 的读入
记录了20+0 的写出
20971520字节(21 MB)已复制,0.0920415 秒,228 MB/秒
[root@client opt]# dd if=/dev/zero of=/opt/demo4.log bs=1M count=20
记录了20+0 的读入
记录了20+0 的写出
20971520字节(21 MB)已复制,0.0890255 秒,236 MB/秒
[root@client opt]# dd if=/dev/zero of=/opt/demo5.log bs=1M count=20
记录了20+0 的读入
记录了20+0 的写出
20971520字节(21 MB)已复制,0.0900589 秒,233 MB/秒
[root@client opt]# cp demo* /test/dis
[root@client opt]# cp demo* /test/stripe/
[root@client opt]# cp demo* /test/rep/
[root@client opt]# cp demo* /test/dis_stripe/
[root@client opt]# cp demo* /test/dis_rep/
  • 在node1和node2上查看分布式卷情况
node1:
[root@node1 yum.repos.d]# ls -lh /data/sdb1
总用量 80M
-rw-r--r--. 2 root root 20M 813 09:45 demo1.log
-rw-r--r--. 2 root root 20M 813 09:45 demo2.log
-rw-r--r--. 2 root root 20M 813 09:45 demo3.log
-rw-r--r--. 2 root root 20M 813 09:45 demo4.log

node2:
[root@node2 yum.repos.d]# ll -h /data/sdb1
总用量 20M
-rw-r--r--. 2 root root 20M 813 09:45 demo5.log
  • 在node1和node2上查看条带卷情况
[root@node1 yum.repos.d]# ls -lh /data/sdc1					#数据分片一半,没有冗余
总用量 50M
-rw-r--r--. 2 root root 10M 813 09:45 demo1.log
-rw-r--r--. 2 root root 10M 813 09:45 demo2.log
-rw-r--r--. 2 root root 10M 813 09:45 demo3.log
-rw-r--r--. 2 root root 10M 813 09:45 demo4.log
-rw-r--r--. 2 root root 10M 813 09:45 demo5.log

[root@node2 yum.repos.d]# ll -h /data/sdc1
总用量 50M
-rw-r--r--. 2 root root 10M 813 09:45 demo1.log
-rw-r--r--. 2 root root 10M 813 09:45 demo2.log
-rw-r--r--. 2 root root 10M 813 09:45 demo3.log
-rw-r--r--. 2 root root 10M 813 09:45 demo4.log
-rw-r--r--. 2 root root 10M 813 09:45 demo5.log
  • 在node3和node4查看负责卷分布
[root@node4 yum.repos.d]# ll -h /data/sdb1					#数据未分片,有冗余
总用量 100M
-rw-r--r--. 2 root root 20M 813 09:45 demo1.log		
-rw-r--r--. 2 root root 20M 813 09:45 demo2.log
-rw-r--r--. 2 root root 20M 813 09:45 demo3.log
-rw-r--r--. 2 root root 20M 813 09:45 demo4.log
-rw-r--r--. 2 root root 20M 813 09:45 demo5.log

[root@node3 yum.repos.d]# ll -h /data/sdb1
total 100M
-rw-r--r--. 2 root root 20M 八月 13 09:45 demo1.log
-rw-r--r--. 2 root root 20M 八月 13 09:45 demo2.log
-rw-r--r--. 2 root root 20M 八月 13 09:45 demo3.log
-rw-r--r--. 2 root root 20M 八月 13 09:45 demo4.log
-rw-r--r--. 2 root root 20M 八月 13 09:45 demo5.log
  • 在node1-4上查看分布式条带卷
[root@node1 yum.repos.d]# ls -lh /data/sdd1					#数据一半被分片,无冗余
总用量 40M
-rw-r--r--. 2 root root 10M 813 09:45 demo1.log
-rw-r--r--. 2 root root 10M 813 09:45 demo2.log
-rw-r--r--. 2 root root 10M 813 09:45 demo3.log
-rw-r--r--. 2 root root 10M 813 09:45 demo4.log

[root@node2 yum.repos.d]# ll -h /data/sdd1
总用量 40M
-rw-r--r--. 2 root root 10M 813 09:45 demo1.log
-rw-r--r--. 2 root root 10M 813 09:45 demo2.log
-rw-r--r--. 2 root root 10M 813 09:45 demo3.log
-rw-r--r--. 2 root root 10M 813 09:45 demo4.log

[root@node4 yum.repos.d]# ll -h /data/sdd1
总用量 10M
-rw-r--r--. 2 root root 10M 813 09:45 demo5.log

[root@node3 yum.repos.d]# ll -h /data/sdd1
total 10M
-rw-r--r--. 2 root root 10M 八月 13 09:45 demo5.log
  • 在node1-4上查看分布式复制卷
[root@node1 yum.repos.d]# ls -lh /data/sde1
总用量 80M
-rw-r--r--. 2 root root 20M 813 09:45 demo1.log
-rw-r--r--. 2 root root 20M 813 09:45 demo2.log
-rw-r--r--. 2 root root 20M 813 09:45 demo3.log
-rw-r--r--. 2 root root 20M 813 09:45 demo4.log

[root@node2 yum.repos.d]# ll -h /data/sde1
总用量 80M
-rw-r--r--. 2 root root 20M 813 09:45 demo1.log
-rw-r--r--. 2 root root 20M 813 09:45 demo2.log
-rw-r--r--. 2 root root 20M 813 09:45 demo3.log
-rw-r--r--. 2 root root 20M 813 09:45 demo4.log

[root@node4 yum.repos.d]# ll -h /data/sde1
总用量 20M
-rw-r--r--. 2 root root 20M 813 09:45 demo5.log

[root@node3 yum.repos.d]# ll -h /data/sde1
total 20M
-rw-r--r--. 2 root root 20M 八月 13 09:45 demo5.log
  • 破坏性测试:关闭node2节点在client端观察
分布式卷:
[root@client test]# cd /test/dis
[root@client dis]# ll
总用量 81920													#缺少demo5数据
-rw-r--r--. 1 root root 20971520 813 09:45 demo1.log
-rw-r--r--. 1 root root 20971520 813 09:45 demo2.log
-rw-r--r--. 1 root root 20971520 813 09:45 demo3.log
-rw-r--r--. 1 root root 20971520 813 09:45 demo4.log

条带卷:
[root@client test]# cd stripe/
[root@client stripe]# ll
ls: 正在读取目录.: 传输端点尚未连接	
总用量 0														#条带卷无法访问,不具备冗余性


分布式条带卷
[root@client dis]# cd /test/dis_stripe/
[root@client dis_stripe]# ll
总用量 20480
-rw-r--r--. 1 root root 20971520 813 09:45 demo5.log	#分布式条带卷不具备冗余性

[root@client dis_stripe]# cd /test/dis_rep/					#数据正常未丢失
[root@client dis_rep]# ll
总用量 102400
-rw-r--r--. 1 root root 20971520 813 09:45 demo1.log
-rw-r--r--. 1 root root 20971520 813 09:45 demo2.log
-rw-r--r--. 1 root root 20971520 813 09:45 demo3.log
-rw-r--r--. 1 root root 20971520 813 09:45 demo4.log
-rw-r--r--. 1 root root 20971520 813 09:45 demo5.log

测试结果:带复制卷的都比较安全

分布式文件系统--glusterfs(代码片段)

文章目录一、分布式文件系统1.文件系统1.1组成1.2作用1.3挂载使用2.分布式文件系统--GFS2.1组成2.2专业术语2.3模块化堆栈式架构2.4工作流程2.5基本卷与复合卷二、部署GlusterFS群集1准备环境2配置/etc/hosts文件3安装GlusterFS并启动4时间... 查看详情

glusterfs分布式文件系统(代码片段)

GlusterFS分布式文件系统,用于存储、管理磁盘文件文件系统(FS)文件系统组成1、文件系统接口2、对对像管理的软件集合3、对象及属性文件系统作用从系统角度来看,文件系统是对文件存储设备的空间进行组织和分配... 查看详情

glusterfs-----文件分布系统+集群部署(代码片段)

一、Gluster概述1.1、gluster简介Glusterfs是一个开源的分布式文件系统,是Scale存储的核心,能够处理千数量级的客户端.在传统的解决方案中Glusterfs能够灵活的结合物理的,虚拟的和云资源去体现高可用和企业级的性能存储.Glusterfs通过TCP... 查看详情

glusterfs-----文件分布系统+集群部署(代码片段)

一、Gluster概述1.1、gluster简介Glusterfs是一个开源的分布式文件系统,是Scale存储的核心,能够处理千数量级的客户端.在传统的解决方案中Glusterfs能够灵活的结合物理的,虚拟的和云资源去体现高可用和企业级的性能存储.Glusterfs通过TCP... 查看详情

gfs分布式文件系统(代码片段)

目录一.GlusterFS概述1.GlusterFS简介2.GlusterFS特点3.GlusterFS术语4.模块化堆栈式架构5.GlusterFS的工作流程6.弹性HASH算法7.GlusterFs的卷类型二.部署GlusterFS群集1.准备环境(所有node节点上操作)①添加硬盘,关闭防火墙,修改所有node节... 查看详情

gfs分布式文件系统(代码片段)

...GlusterFS介绍1.1GlusterFS概念1.2GlusterFS特点1.3GlusterFS术语前言分布式文件系统种类有:CEPH分布式文件系统(用的多)GFS(GlusterFS)分布式文件系统M 查看详情

glusterfs分布式文件系统概述(代码片段)

...GlusterFS的工作流程2、弹性HASH算法三、GlusterFS的卷类型1、分布式卷2、条带卷3、复制卷4、分布式条带卷5、分布式复制卷一、GlusterFS概述GlusterFS是一个开源的分布式文件系统,同时也是Scale-Out存储解决方案Gluster的核心,在存储数... 查看详情

详解gfs分布式文件系统(条带卷/复制卷/分布式条带卷/分布式复制卷)(代码片段)

GFS分布式文件系统一.GlusterFS概述1.GlusterFS简介2.GlusterFS特点3.GlusterFS术语4.模块化堆栈式架构5.GlusterFS工作流程6.弹性HASH算法7.GlusterFs的卷类型二.部署GlusterFs群集三.客户端部署与测试测试总结补充:一.GlusterFS概述1.GlusterFS简介... 查看详情

glusterfs分布式文件系统(代码片段)

简介Glusterfs是一个开源的分布式文件系统,是Scale存储的核心,能够处理千数量级的客户端。是整合了许多存储块(server)通过InfinibandRDMA或者 Tcp/Ip方式互联的一个并行的网络文件系统。  特征:容量可以按比例的扩展,... 查看详情

gfs分布式文件系统从入门到实践(代码片段)

GFS分布式文件系统一、GlusterFS概述1.1GlusterFS简介1.2GlusterFS的特点二、GlusterFS术语介绍2.1Brick(存储块)2.2Volume(逻辑卷)2.3FUSE2.4VFS2.5Glusterd(后台管理进程)三、理解GlusterFS工作流程四、理解弹性HASH算法4.1 查看详情

glusterfs:优秀开源分布式存储系统(代码片段)

一、GlusterFS简介1、什么是glusterfsGlusterfs是一个开源分布式文件系统,具有强大的横向扩展能力,可支持数PB存储容量和数千客户端,通过InfinibandRDMA或Tcp/Ip方式将许多廉价的x86主机,通过网络互联成一个并行的网... 查看详情

gfs分布式文件系统(代码片段)

...节点即可②在每个Node节点上查看群集状态3.创建卷①创建分布式卷②创建条带卷③创建复制卷④创建分布式条带卷⑤创建分布式复制卷4.部署Gluster客户端①安装客户端软件②创建挂载目录③配置/etc/hosts文件④挂载Gluster文件系统5... 查看详情

gfs分布式文件系统(相关理论及实验操作详解)(代码片段)

目录一、GlusterFS简介二、GlusterFS特点三、GlusterFS术语四、模块化堆栈式架构五、GlusterFS的工作流程六、弹性HASH算法七、GlusterFs的卷类型八、部署GlusterFS群集1.关闭防火墙2.磁盘分区,并挂载(四个节点都做3.修改主机名... 查看详情

(❤❤❤)gfs分布式文件系统理论+部署(❤❤❤)(代码片段)

...一命名空间④弹性卷管理⑤基于标准协议1.3、MFS(传统的分布式文件系统)1.4、GFS二、GlusterFS术语介绍①Brick(存储块)②Volume(逻辑卷)③FUSE④VFS⑤Glusterd( 查看详情

(❤❤❤)gfs分布式文件系统理论+部署(❤❤❤)(代码片段)

...一命名空间④弹性卷管理⑤基于标准协议1.3、MFS(传统的分布式文件系统)1.4、GFS二、GlusterFS术语介绍①Brick(存储块)②Volume(逻辑卷)③FUSE④VFS⑤Glusterd( 查看详情

glusterfs存储结构原理介绍(代码片段)

分布式文件系统分布式文件系统(DistributedFileSystem)是指文件系统管理的物理存储资源并不直接与本地节点相连,而是分布于计算网络中的一个或者多个节点的计算机上。目前意义上的分布式文件系统大多都是由多个节点计算机... 查看详情

glusterfs(代码片段)

分布式存储已经研究很多年,但直到近年来,伴随着谷歌、亚马逊和阿里等互联网公司云计算和大数据应用的兴起,它才大规模应用到工程实践中。如谷歌的分布式文件系统GFS、分布式表格系统googleBigtable,亚马逊的对象存储AWS... 查看详情

gfs分布式文件系统(代码片段)

GFS分布式文件系统一、概述二、特点1.扩展性和高性能2.高可用性3.全局统一命名空间4.弹性卷管理5.基于标准协议三、GlusterFS术语四、GlusterFS的模块化堆栈式架构五、GlusterFS的工作流程六、后端存储定位文件的方法(HASH算法&#... 查看详情