简介

官方文档:https://docs.gluster.org/en/latest/Quick-Start-Guide/Architecture/

Glusterfs是一个开源的分布式文件系统,是Scale存储的核心,能够处理千数量级的客户端。是整合了许多存储块(server)通过Infiniband RDMA或者 Tcp/Ip方式互联的一个并行的网络文件系统。

  特征:

  • 容量可以按比例的扩展,且性能却不会因此而降低。
  • 廉价且使用简单,完全抽象在已有的文件系统之上。
  • 扩展和容错设计的比较合理,复杂度较低
  • 适应性强,部署方便,对环境依赖低,使用,调试和维护便利

glusterfs安装部署

  一般在企业中,采用的是分布式复制卷,因为有数据备份,数据相对安全。

  网络要求全部千兆环境,gluster 服务器至少有 2 块网卡,1 块网卡绑定供 gluster 使用,剩余一块分配管理网络 IP,用于系统管理。如果有条件购买万兆交换机,服务器配置万兆网卡,存储性能会更好。网络方面如果安全性要求较高,可以多网卡绑定。

 跨地区机房配置 Gluster,在中国网络格局下不适用。

  • 注意:GlusterFS将其动态生成的配置文件存储在/var/lib/glusterd中。如果在任何时候GlusterFS无法写入这些文件(例如,当后备文件系统已满),它至少会导致您的系统不稳定的行为; 或者更糟糕的是,让您的系统完全脱机。建议为/var/log等目录创建单独的分区,以确保不会发生这种情况。

GlusterFS创建术语

  • Brick: 最基本的存储单元,表示为trusted storage pool中输出的目录,供客户端挂载用。
  • Volume: 一个卷。在逻辑上由N个bricks组成.
  • FUSE: Unix-like OS上的可动态加载的模块,允许用户不用修改内核即可创建自己的文件系统。
  • Glusterd: Gluster management daemon,要在trusted storage pool中所有的服务器上运行。
  • POSIX: 一个标准,GlusterFS兼容。

基本卷介绍

分布式卷(类似raid 0但是数据不分片)默认

基于Hash算法将文件分布到所有的brick server上,只是单纯的扩大了磁盘空间,不具备冗余能力,数据丢了就丢了,由于distribute volume使用本地文件系统,因此存取效率并没有提高,相反会应为中间又加上了一层网络传输,效率反而降低了.另外本地存储设备的容量有限制,因此支持超大型文件会有一定的难度

 分布式卷部署地址:https://www.cnblogs.com/Mercury-linux/p/12052908.html

条带卷(类似raid 0)

类似Raid 0,文件分成数据块以Round Robin(循环)方式分布到brick server上,并发粒度是数据块,支持超大文件,大文件的读写性能高(因为他是分块存储,可以同时多个磁盘写入)

复制卷(类似Raid 1)

类似于Raid1,文件同步的复制到多个brick上,具有容错能力,写性能下降,读性能提升(待测),Replicated模式,也称作AFR(Auto File Replicated),同一个文件在多个镜像存储节点上保存多份,每个节点上都具有想用的目录结构和文件.replica volume是容器存储中较为推崇的一种

分部署条带卷

先组成条带式在组成分布式,集群节点最少4个节点,Brick server 数量是条带数的倍数,分布式的条带卷,volume和brick所包含的存储服务器必须是stripe的倍数,同时拥有分布式和条带式的功能.文件分布在四台文件存储服务器上, 创建卷的时候相邻的两个会组成条带,然后在组成分布式

分布式复制卷

Brick server是镜像数的倍数,先组合分布式在组合成复制卷,也是最少需要4台服务器,这个多少组成分布和多少个副本数是自己创建的时候定义的,官网有介绍

条带复制卷

先组合成条带式在组合成复制卷,先把数据分块存放,然后在完整复制,类似 RAID 10,同时具有条带卷和复制卷的特点

分布式条带复制卷

三种基础卷的合体

参考:

https://blog.51cto.com/13447608/2386830?source=dra

https://baijiahao.baidu.com/s?id=1612194635156434300&wfr=spider&for=pc

TFS:https://yq.aliyun.com/articles/224295

GlusterFS 分布式文件系统的更多相关文章

  1. GlusterFS 分布式文件系统的使用入门-管理GlusterFS卷

    GlusterFS 分布式文件系统的使用入门-管理GlusterFS卷 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.卷的扩容 您可以根据需要在群集联机且可用时扩展卷.例如,您 ...

  2. GlusterFS分布式文件系统部署及基本使用(CentOS 7.6)

    GlusterFS分布式文件系统部署及基本使用(CentOS 7.6) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. Gluster File System 是一款自由软件,主要由 ...

  3. GlusterFS分布式文件系统高速管理

    TaoCloud XDFS基于GlusterFS开源分布式文件系统,进行了系统优化.project化.定制化和产品化工作,五年以上的实践积累了大量实践经验,包含客户案例.最佳实践.定制开发.咨询服务和 ...

  4. GlusterFS分布式文件系统的使用

    glusterfs是一款开源的分布式文件系统. 它具备高扩展.高可用及高性能等特性,由于其无元数据服务器的设计,使其真正实现了线性的扩展能力,使存储总容量可轻松达到PB级别,支持数千客户端并发访问. ...

  5. GlusterFS分布式文件系统部署

    GlusterFS是一个可伸缩的网络文件系统,使用常见的现成的硬件,您可以创建大型分布式存储流媒体解决方案.数据分析.和其他数据相关的任务.GlusterFS是自由和开源软件. 详细参考官网:http ...

  6. CentOS7.5 GlusterFS 分布式文件系统集群环境搭建

    环境准备: 系统版本:CentOS Linux release 7.5.1804 (Core) glusterfs:3.6.9 userspace-rcu-master: 硬件资源: 10.200.2 ...

  7. glusterfs分布式文件系统

    第一:安装依赖包: yum install libibverbs librdmacm xfsprogs nfs-utils rpcbind libaio liblvm2app  lvm2-devel ...

  8. glusterFS分布式文件系统的搭建

    准备工作 1.安装IBA yum install libradmacm librdmacm-devel libmlx4 infiniband-diags 2.配置IPOIB /etc/sysconfi ...

  9. GlusterFS分布式文件系统概述

    一.GlusterFS概述 GlusterFS是一个开源的分布式文件系统,同时也是Scale-Out存储解决方案Gluster的核心,在存储数据方面有强大的横向扩展能力,通过扩展不同的节点可以支持PB ...

随机推荐

  1. MongoDB 走马观花(全面解读篇)(转载)

    MongoDB 走马观花(全面解读篇)(转载)   目录 一.简介 二.基本模型 BSON 数据类型 分布式ID 三.操作语法 四.索引 索引特性 索引分类 索引评估.调优 五.集群 分片机制 副本集 ...

  2. SqlServer try catch 捕获触发器\存储过程异常,结合 transaction 事务

    SoEasy~,贴上代码看所有 ALTER trigger [dbo].[tgr_SG_Gathering_update] on [dbo].[SG_Gathering] for update --更 ...

  3. TensorFlow实战第二课(添加神经层)

    莫烦tensorflow实战教学 1.添加神经层 #add_layer() import tensorflow as tf def add_layer(inputs,in_size,out_size, ...

  4. vue 导出JSON数据为Excel

    1. 安装三个依赖 npm install file-saver --save npm install xlsx --save npm install script-loader --save-dev ...

  5. WIN32_FIND_DATA

    基本信息 编辑 关于文件的全部属性信息.总计有以下以下9种:文件的标题名.文件的属性(只读.存档,隐藏等).文件的创建时间.文件的最后访问时间.文件的最后修改时间.文件大小的高位双字.文件大小的低位双 ...

  6. celery 调用scrapy

    我的环境: celery 3.1.25 python 3.6.9 window10 celery tasks 代码如下,其中 QuotesSpider 是我的scrapy项目爬虫类名称 from ce ...

  7. CentOS7安装SVN1.9.12

    检查卸载原有的svn svn --version # 检查是否原有svn yum remove svn # 卸载原有svn 安装依赖: apr-1.6.5 mkdir /opt/software/sv ...

  8. JAVA基础--JAVA API集合框架(其他集合类,集合原理)

    一.ArrayList介绍 1.ArrayList介绍 ArrayList它是List接口的真正的实现类.也是我们开发中真正需要使用集合容器对象. ArrayList类,它是List接口的实现.肯定拥 ...

  9. Laravel5.5 实现session配置

    \Illuminate\Session\Middleware\StartSession::class,\Illuminate\View\Middleware\ShareErrorsFromSessio ...

  10. file_put_contents实现内容追加

    file_put_contents("test.txt", "This is another something.", FILE_APPEND); FILE_A ...