GFS分布式文件系统

GlusterFS简介

开源的分布式文件系统

由存储服务器、客户端以及NFS/Samba存储网关组成

无元数据服务器

GlusterFS特点
扩展性和高性能

高可用性

全局统一命名空间

弹性卷管理

基于标准协议

GlusterFS术语
Brick

Volume

FUSE

VFS

Glusterd

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

GlusterFS工作流程
GFS分布式文件系统

弹性HASH算法
2.2.1、通过HASH算法得到一个32位的整数

2.2.2、划分为N个连续的子空间,每个空间对应一个Brick

2.2.3、弹性HASH算法的优点

①保证数据平均分布在每一个Brick中

②解决了对元数据服务器的依赖,进而解决了单点故障以及访问瓶颈

GlusterFS的卷类型
分布式卷
没有对文件进行分块处理
通过扩展文件属性保存HASH值
支持的底层文件系统有EXT3、EXT4、ZFS、XFS等

分布式卷的特点
文件分布在不同的服务器,不具备冗余性
更容易和廉价地扩展卷地大小
单点故障会造成数据丢失
依赖底层的数据保护
条带卷
根据偏移量将文件分层N块(N个条带节点),轮询地存储在每个Brick Server节点
存储大文件时,性能尤为突出
不具备冗余性,类型Reid0

条带卷的特点
数据被分割成更小块分布到块服务器群中的不同条带区
分布减少了负载且更小的文件加速了存取的速度
没有数据冗余
创建条带卷
创建了一个名为Stripe-volume的条带卷,文件将被分块轮询的存储在Server1:/dir1和Server2:/dir2两个Brick中
gluster volume create stripe-volume stripe 2 transport tcp server1:/dir1 server2:/dir2
复制卷
同一文件保存一份或多份副本
因为要保存副本,所以磁盘利用率较低
若多个节点上的存储空间不一致,将按照磁盘容量最低节点的容量作为该卷的总容量

复制卷的特点
卷中所有的服务器均保存一个完整的副本
卷的副本数量可由客户创建的时候决定
至少有两个块服务器或更多服务器
具备冗余性
创建复制卷
创建了一个名为rep-volume的条带卷,文件将同时存储两个副本,分布在Server1:/dir1和Server2:/dir2两个Brick中
gluster volume create rep-volume replica 2 transport tcp server1:/dir1 server2:/dir2
分布式条带卷
兼顾分布式卷和条带卷的功能
主要用于大文件访问处理
至少最少需要4台服务器

创建分布式条带卷

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

gluster volume create dis-stripe stripe 2 transport tcp server1:/dir1 server2:/dir2 server3:/dir3 server4:/dir4
分布式复制卷
兼顾分布式卷和复制卷的功能
用于需要冗余的情况

GlusterFS部署
群集环境
GFS分布式文件系统
部署
添加映射(node1、node2、node3、node4和client上设置)
GFS分布式文件系统
安装软件(node1、node2、node3、node4上安装)
[[email protected] ~]# yum -y install glusterfs glusterfs-server gluster-fuse glusterfs-rdma #node上演示

时间同步(node1、node2、node3、node4上安装)
[[email protected] ~]# ntpdate ntp1.aliyun.com
16 Nov 22:40:31 ntpdate[2414]: step time server 120.25.115.20 offset 1.141361 sec
[[email protected] ~]# date
2020年 11月 16日 星期一 22:40:35 CST