GlusterFS 分布式文件系统说明

2019-08-05 0 By admin

Gluster File System 是一款自由软件,主要由Z RESEARCH 公司负责开发,十几名开发者。

GlusterFS是Scale-Out存储解决方案Gluster的核心,它是一个开源的分布式文件系统,具有强大的横向扩展能力,通过扩展能够支持数PB存储容量和处理数千客户端。GlusterFS借助TCP/IP或InfiniBand RDMA网络将物理分布的存储资源聚集在一起,使用单一全局命名空间来管理数据。GlusterFS基于可堆叠的用户空间设计,可为各种不同的数据负载提供优异的性能。

GlusterFS支持运行在任何标准IP网络上标准应用程序的标准客户端,用户可以在全局统一的命名空间中使用NFS/CIFS等标准协议来访问应用数据。GlusterFS使得用户可摆脱原有的独立、高成本的封闭存储系统,能够利用普通廉价的存储设备来部署可集中管理、横向扩展、虚拟化的存储池,存储容量可扩展至TB/PB级。

一、名词解释

peer

受信任的主机节点。

Brick

最基本的存储单元,代表某个主机节点上的某个目录。

Volume

一个卷,在逻辑上由多个个bricks组成。

Glusterd(Gluster management daemon)

要在trusted storage pool中所有的服务器上运行。

二、卷的类型

卷是Bricks的集合,大多数gluster文件系统操作都发生在卷上。Gluster文件系统根据要求支持不同类型的卷。有些卷适用于扩展存储大小,有些用于提高性能。

2.1、分布式Glusterfs卷 Distributed Glusterfs Volume

这是默认的glusterfs卷。这里,文件分布在卷中的各个Brick中。因此file1可能只存储在brick1或brick2中,但不能存储在两者中。

2.2、复制的Glusterfs卷 Replicated Glusterfs Volume

在本卷中,我们克服了分布式卷中面临的数据丢失问题。在这里,所有bricks都保留了精确的数据副本。在创建卷时,客户端可以决定卷中的副本数。

2.3、分布式复制Glusterfs卷 Distributed Replicated Glusterfs Volume

在此卷文件中分布在复制的bricks集中。bricks的数量必须是复制计数的倍数。此外,我们指定brick的顺序很重要,因为相邻的brick成为彼此的复制品。
当需要由于冗余和扩展存储而导致数据的高可用性时,使用这种类型的卷。因此,如果有8个bricks和副本计数2,则前两个brick将成为彼此的复制品,然后是接下来的两个brick,依此类推。该体积表示为4×2。同样,如果有8块bricks和4块复制品,则4块bricks为彼此的复制品,我们将该体积表示为2×4体积。

2.4、Striped Glusterfs Volume 分块Glusterfs 卷

考虑将大型文件存储在一个brick中,这个brick经常被许多客户端同时访问。这将导致单块brick上的负载过大,从而降低性能。在条带化体积中,数据在将其分成不同的条带后存储在bricks中。因此,大文件将被分成较小的块(等于卷中的块数),并且每个块都存储在一brick中。现在负载是分布式的,文件可以更快地获取,但不提供数据冗余。

2.5、分布式条纹Glusterfs卷

这类似于Striped Glusterfs卷,除了条纹现在可以分布在更多数量的brick上。但是brick的数量必须是条纹数量的倍数。因此,如果我们想要增加卷大小,我们必须在多个条带计数中添加brick。