架构解密分布式到微服务企业级分布式文件系统GlusterFS

glusterfs分布式文件存储搭建和使用 Glusterfs简介 GlusterFS是Scale-Out存储解决方案Gluster的核心,它是一个开源的分布式文件系统,具有强大的横向扩展能力,通过扩展能够支持数PB存储容量和处理数千客户端。GlusterFS借助TCP/IP或InfiniBandRDMA网络将物理分布的存储资源聚集在一起,使用单一全局命名空间来管理数据。 说起glusterfs可能比较陌生,可能大家更多的听说和使用的是NFS,GFS,HDFS之类的,这之中的NFS应该是使用最为广泛的,简单易于管理,但是NFS以及后边会说到.. 阅读详情

企业级分布式文件系统GlusterFS

2003年,Gluster公司参加了一个研制超级计算机的项目,该项目隶属于美国能源部所属的一个国家实验室,代号为Thunder 的超级计算机于次年研制成功并投入生产,成为当年世界上排名第二的超级计算机。在这个过程中,Gluster 公司积累了丰富的高性能分布式文件系统的研发经验,最终于2007年发布了开源的GlusterFS文件系统,这个新的分布式文件系统也成为除Lustre外的一个新选择。

GlusterFS 的最初设计目标是简单方便、高性能及高扩展能力,具体表现为以下几个方面。

  • 所有模块都运行在Linux用户态,不涉及Linux内核代码,方便编译、安装及使用(与Lustre不同)。
  • 消除了集中化的元数据服务器,从而具备更强的弹性扩展能力及更高的性能(与Lustre不同)。
  • 采用模块化设计,简化了系统配置并减少了组件之间的耦合性。
  • 使用操作系统自身的文件系统,不重新发明轮子(与 Lustre不同)。
  • 数据被存储为标准Linux文件,不引入新格式。

GlusterFS比较突出的一个特点就是上述最后一条。在GlusterFS集群里,我们所存储的文件就位于某个服务器节点上,文件名就是我们指定的文件名,内容就是我们写入的内容,这个文件没有经过任何特殊的加密或编码,我们可以直接用Linux文件命令对其进行操作。因此,即使GlusterFS集群出现故障而导致不可用,所有文件也都在原地,不会出现无法恢复数据的严重问题。

GlusterFS由于其新颖的设计理念及遵循KISS (Keeplt as Stupid and Simple)原则的系统架构,在扩展性、可靠性、性能、维护性等方面具有独特的优势,发展迅速。2011年,RedHat重金收购了Gluster公司,将GlusterFS纳入自己的云计算存储产品中,并且彻底开源了GlusterFS.RedHat将GlusterFS定义为现代企业级工作负载服务的Scale-out NAS,强调其是一个SoftwareDefined File Storage,可以管理大规模的非结构化和半结构化数据,支持私有云、公有云或混合云的部署,同时支持Linux容器。在 Docker 与 Kubernetes中也建议将GlusterFS作为分布式文件存储的首选方案。借助于RedHat 的影响力,被收购之后的GlusterFS在开源社区风头更胜,国内外有大量用户在对它进行研究、测试、部署和应用。

GlusterFS 的强大扩展能力在于其消除了集中式的元数据服务器,对文件的定位不再需要访问元数据服务器,因此GlusterFS集群具备很好的弹性扩展能力,在性能上实现了真正的线性扩展,而这又是如何做到的呢﹖秘诀在于其弹性哈希算法。弹性哈希算法是GlusterFS的灵魂设计之一,仅仅通过路径名及文件名(不需要与此文件相关的其他辅助信息)就可以计算出此文件在集群中的存储位置。在实际情况下存在集群服务器数量的增减、磁盘故障导致存储单元数量的变化、重新平衡文件分布时需要移动文件等问题,使得我们无法简单地将文件直接映射到某个存储节点,而GlusterFS为了实现这种映射,采用了以下独特设计。

  • 设置了一个数量众多的虚拟卷组。
  • 使用了一个独立的进程指定虚拟卷组到多个物理磁盘。
  • 使用了哈希算法来指定文件对应的虚拟卷组。

我们通过下图理解其模型。由于虚拟卷组(Virtual Volume)的数量很多并且不随着存储服务器数量的变化而变化,因此在增加或减少存储服务器的数量时,只要把某些虚拟卷组与这些存储服务器的映射关系修改一下就可以了。看到这里,你是不是觉得Redis 3.0基于哈希槽(HashSlot)的集群看起来很眼熟呢?后面我们会看到, FastDFS也借鉴了GlusterFS的这一设计思想。

架构解密分布式到微服务企业级分布式文件系统GlusterFS

 

弹性哈希算法有一个明显的缺点,即在进行目录遍历时效率低下,因为一个目录下的文件可以被分布到集群中的所有存储节点上,所以GlusterFS需要搜索所有的存储节点才能实现目录的遍历,因此我们的程序要尽量避免这种操作。后来发展起来的对象存储系统干脆取消了文件目录这一特性,就是因为在分布式结构下文件目录是个难以解决的问题,而且在大多数情况下可以通过客户端编程避免该操作,比如在一个文件或者数据库中记录属于同一个目录下所有文件的ID。

除了弹性哈希算法,GlusterFS的 Volume设计也很有特色,比如Distributed Volume会将文件和目录分布在多个存储点上;Striped Volume则会将一个大文件拆分为几段,存储在不同的节点上。对于一个100GB的超大文件来说,这样可以大大提高并行IO的能力;Replicated Volume则会产生一个文件的多个副本,这些副本位于不同的节点上,增加了存储的可靠性,这三种Volume 又可以组合成新的Volume。

  • Replicated Volume + Distributed Volume是最常用的组合,提供分片读取能力、数据一致性、容错性保障。
  • Replicated Volume +Striped Volume可提升大文件的I/O并行能力、数据一致性、容错性保障,特别适合大数据文件计算。

如下所示是Replicated Volume +Striped Volume的示意图,其中的副本数为2。

架构解密分布式到微服务企业级分布式文件系统GlusterFS

 

本文给大家讲解的内容是架构解密从分布式到微服务:深入解析分布式文件存储,企业级分布式文件系统GlusterFS

  1. 下篇文章给大家讲解的是架构解密从分布式到微服务:深入解析分布式文件存储,创新的Linux分布式存储系统Ceph;
  2. 觉得文章不错的朋友可以转发此文关注小编;
  3. 感谢大家的支持!
【信息科学与工程学】【数据中心】第三十五篇 云计算数据中心的学科知识04 编号学科(课程)核心知识点在云计算/云存储/云网络/云安全/云MaaS中的作用代表教材/资料/论文 + 数学方程式列表工业界应用D1421​云原生数据库:TiDB​HTAP(混合事务/分析处理)、分布式SQL、水平扩展、强一致(Raft)、自动故障恢复、与MySQL兼容、TiFlash列式引擎提供弹性扩展的分布式数据库;支撑高并发在线交易与实时分析教材:《TiDB in Action》PingCAP(2020) 论文:《TiDB: A Raft-based HTAP Database》(2017) 阅读详情

相关推荐

【信息科学与工程学】计算机科学与自动化——第三百零五篇 数据中心 Scale-Up、Scale-Out、Scale-Across 01

临界带宽B_critical满足:V_orig/B_critical = V_orig/(r·B_critical) + V_orig/R_compress + r·V_orig/R_decompress ⇒ 1/B_critical = 1/(r·B_critical) + 1/R_compress + r/R_decompress ⇒ B_critical = (1 - 1/r) / (1/R_compress + r/R_decompress)。T_original中所有数据均经内存总线传输。

weixin_49199313的博客 475

GlusterFS企业级功能之EC纠删码

(作者:杨阳@TaoCloud)在这个数据爆炸的时代,很多行业不得不面临数据快速增长的挑战,为了应对呈爆炸式增长态势的数据量,构建大规模的存储系统成了一种普遍的应用需求。但数据是如此重要,如何保证存储可靠性、数据可用性成了大规模存储系统的难点和要点。数据冗余是保障存储可靠性、数据可用性的最有效手段,传统的冗余机制主要有副本(Replication)和纠删编码(Erasure ...

weixin_34313182的博客 402

GlusterFS与Ceph 性能测试报告

GlusterFS与Ceph是不一样的存贮系统,GlusterFS更加针对分布式文件系统,虽然目前开发者也正在努力增加块与对象存贮服务。 由于两者在设计理念等各个方面有所不同,单纯的测试比较从功能应用的角度来说意义不大(如人们需要块及对象存贮时,目前GlusterFS只能部分提供或没有,块存贮也只能用于非生产环境,对象存贮还没有),但很多人使用时均会考虑将此两者文件服务作为其中一个重要应用,而同时,市场上流传着各类关于GlusterFS与Ceph对比的各类性能数据,实际情况倒底如可,我们不得而知,但我确实想知道真实的情况如何,或者大概的也行

glusterfs特性简述

glusterfs特性简述

nejore的博客 575

劳特巴赫 Trace32 调试使用教程

详细介绍如何使用trace32进行调试

m0_56208280的博客 4万+

NCCL使用指南-进阶篇

前文介绍了NCCL的常用环境变量,本文介绍了NCCL-test性能基准测试,以及一些大规模集群测试的经验数据。

father_yingying的博客 1407

Gluster发布说明(时间表)

Gluster发布时间表( Gluster Release Schedule )3.8版本之前一直到3.8版本,GlusterFS通常有3个活跃版本。随着3.6和3.7版本在对应的n+3版本发布后EOL停止支持(3.5版本已经在2016-06-14发布3.8版本时EOL停止支持),这个版本发布计划将被废弃。3.8版本之后从目前开始,GlusterFS开始采用...

weixin_33826609的博客 198

vnpy_ctp源码下载后转变为python可用的处理过程

vnpy_ctp源码下载后在window中编译使用

m0_37967652的博客 3328

分布式存储之 Glusterfs

分布式存储-Glusterfs

weixin_44772835的博客 1594

SAP-PLM传输MBOM传输至SAP

BOM 项目文本 (行 2)PLM创建及修改BOM接口。PLM 创建BOM接口抬头。BOM 项目文本(行1)PLM 创建BOM接口抬头。PLM BOM 错误消息。PLM BOM接口组件。组件数量 (BTCI)

qq_32198063的博客 432

fanuc机器人I/O分配

FANUC机器人在和其他外部设备进行通讯时,需要对信号进行配置。 在机器人处于UOP自动分配状态时,系统会自动检索已配对设备,并分配相应的机架号。 当我们需要手动对信号进行分配时,可参考以下机架号进行配置。 不同的通讯协议对应的机架号不同,外部通讯协议常用的机架号参考下表: 序号 机架号 通讯类型 1 0 Process I/O 2 1-15

haier123888的博客 1万+

架构解密从分布式到微服务:高性能计算领域的分布式文件系统

但Lustre的元数据服务器与GPFS不同,它仅仅关心路径搜索和权限检查,而不会牵涉任何文件IO读写操作,也就是说,客户端通过MDS查询到文件的存储地址,然后直接与对应的存储服务器节点建立网络通信并完成文件的读写操作,这样一来,就避免了元数据服务器成为集群扩展的瓶颈,这种设计思路基本成为后来者如 HDFS的参考标准。因为HPC计算主要针对大文件,所以Lustre的设计主要是针对大文件的I/O优化,具有良好的大文件IO 性能,很适合大数据文件计算,与此同时,它的小文件IO性能比较差,甚至不如本地文件系统。

2401_83384536的博客 1151

【大模型】Coze AI 智能体工作流从配置到使用实战详解

Coze 扣子智能体工作流从配置到使用实战详解

congge 1万+

架构解密分布式到微服务:解析分布式文件存储,数据存储进化史

深入解析分布式文件存储 分布式文件系统是大型分布式系统中非常重要的基础设施。Hadoop中最重要的技术不是MapReduce,而是HDFS。除了HDFS,Spark还可以与老牌分布式文件系统GlusterFS结合使用。OpenStack中最重要且能独立运营的子系统是分布式对象存储系统Swift。Docker及 Kubernetes容器技术依然需要通过分布式文件系统实现批量处理任务中的共享存储问题。更不用说,无数电商系统都需要一个分布式文件系统来存储海量照片。因此,掌握分布式存储相关的知识和技能,对于一名分

stone_tmp的博客 442

手把手教你学Simulink--电动物流车预充电路控制及主继电器粘连检测电机负载仿真

摘要:本文基于Simulink仿真平台,研究了电动物流车预充电路控制策略及主继电器粘连检测技术。通过构建预充电路、主继电器检测及电机负载模型,分析了不同工况下的系统特性。研究表明,优化的预充控制策略可缩短预充时间至0.5秒内,降低电流峰值;主继电器粘连检测模型能准确识别故障;电机负载变化对系统性能具有显著影响。仿真结果验证了所提方法的有效性,为提升电动物流车安全性与可靠性提供了理论支持和技术参考。

MHD0815的博客 62

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

技术深度解析:N_m3u8DL-RE流媒体下载框架与多协议处理架构

在流媒体技术生态中,N_m3u8DL-RE以其跨平台多协议支持、高性能并发下载和灵活的媒体处理能力而备受开发者关注。本文将从四个典型应用场景出发,深入探讨其技术实现细节与最佳实践。 ## 场景一:企业级直播内容存档系统 ### 需求分析 在企业媒体资产管理场景中,我们需要构建一个能够稳定录制直播流、支持断点续传、并具备实时质量监控的系统。传统直播录制工具往往面临网络波动导致的录制中断、分片丢失

gitblog_00080的博客 491

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

十三章——GlusterFS分布式文件系统群集(应用——linux防护与群集)

三期总目录链接

MKC__jiaoq的博客 1432

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

java访问glusterfs_glusterFS的部署流程

1.准备工作准备三台机器(物理机或者虚拟机均可)用于安装和测试GlusterFS,其中两台用作服务器,一台用作客户端,主机名分别为:Server1.zhaogang.int 10.0.21.241Server2.zhaogang.int 10.0.21.242Clinet.zhaogang.int关闭iptables和selinux2.安装glusterFS服务器yum install cen...

weixin_28957519的博客 569

ClusterStorage-11-安装控制台

0.实验前的环境检查与配置 [student@workstation ~]$ lab console-install-lab setup   1.安装软件包 [root@manager ~]# yum -y install rhsc   2.启动初始化 rhsc-setup初始化。(注意:这里没有配防火墙,其他选项都是采用默认安装选项) [root@manager ~]# rhsc-s...

拙能胜巧 366

glusterfs java_GlusterFS分布式文件系统使用简介

0术语简介GlusterFS是一个开源的分布式文件系统。更多特性介绍附录的参考文档。Brick:GFS中的存储单元,通过是一个受信存储池中的服务器的一个导出目录。可以通过主机名和目录名来标识,如'SERVER:EXPORT'Client: 挂载了GFS卷的设备Extended Attributes:xattr是一个文件系统的特性,其支持用户或程序关联文件/目录和元数据。FUSE:Filesyst...

weixin_33000813的博客 563

GlusterFS 分布式文件系统 搭建及使用

GlusterFS 是一个开源的分布式文件系统,旨在提供高性能、可扩展性和可靠性,适用于现代数据中心和云环境。它以横向扩展的方式设计,可以在多台服务器之间共享文件系统,为应用程序提供统一的文件存储服务。

小毕超博客 2409

java访问glusterfs_GlusterFS常用命令小结

1.启动/关闭/查看glusterd服务# /etc/init.d/glusterd start# /etc/init.d/glusterd stop# /etc/init.d/glusterd status2.开机自动启动glusterd服务# chkconfig glusterd on # Red Hat# update-rc.d glusterd defaults...

weixin_42371226的博客 724

glusterfs

QQ: 1226032602 E-mail: 1226032602@qq.com glusterfs https://www.gluster.org/ https://docs.gluster.org/en/latest/Install-Guide/Setup_virt/ glusterfs概述 1. 什么是Gluster Gluster是一个横向扩展的分布式文件系统,可将来自多个服务器的磁盘存储...

wuxingge的博客 2247

RH236使用Nagios监控Red Hat Gluster存储

第十四章 使用Nagios监控Red Hat Gluster存储

IT民工金鱼哥,专注运维技术。 971
上一篇: 架构解密从分布式到微服务:经典的网络文件系统NFS
下一篇: 关于Java的常见误解
退休的汤姆
博客等级 码龄7年 1657粉丝 1051原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值