开始新对话

未解决

此帖子已超过 5 年

1062

2016年4月5日 00:00

GlusterFS分布式文件概念解析

​ ​
​ ​

​GlusterFS​​分布式文件概念解析​

​ ​
​ ​

​ ​

​转载请在文首保留原文出处:​​EMC​​中文支持论坛​​https://community.emc.com/go/chinese​​ ​weibo.png

​ ​
​ ​

​介绍​

​ ​
​ ​

​ ​

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

​ ​

​ ​

​ ​

​ ​
​ ​

​更多信息​

​ ​
​ ​

​ ​

​ ​

​ ​

​Glusterfs​​特点​​:​

​ ​

​ ​

​ ​

​1​​、扩展性和高性能​

​ ​

​GlusterFS​​利用双重特性来提供几​​TB​​至数​​PB​​的高扩展存储解决方案。​​Scale-Out​​架构允许通过简单地增加资源来提高存储容量和性能,磁盘、计算和​​I/O​​资源都可以独立增加,支持​​10GbE​​和​​InfiniBand​​等高速网络互联。​​Gluster​​弹性哈希(​​Elastic Hash​​)解除了​​GlusterFS​​对元数据服务器的需求,消除了单点故障和性能瓶颈,真正实现了并行化数据访问。​

​ ​

​ ​

​2​​、高可用性​

​ ​

​GlusterFS​​可以对文件进行自动复制,如镜像或多次复制,从而确保数据总是可以访问,甚至是在硬件故障的情况下也能正常访问。自我修复功能能够把数据恢复到正确的状态,而且修复是以增量的方式在后台执行,几乎不会产生性能负载。​​GlusterFS​​没有设计自己的私有数据文件格式,而是采用操作系统中主流标准的磁盘文件系统(如​​EXT3​​、​​ZFS​​)来存储文件,因此数据可以使用各种标准工具进行复制和访问。​

​ ​

​ ​

​3​​、全局统一命名空间​

​ ​

​全局统一命名空间将磁盘和内存资源聚集成一个单一的虚拟存储池,对上层用户和应用屏蔽了底层的物理硬件。存储资源可以根据需要在虚拟存储池中进行弹性扩展,比如扩容或收缩。当存储虚拟机映像时,存储的虚拟映像文件没有数量限制,成千虚拟机均通过单一挂载点进行数据共享。虚拟机​​I/O​​可在命名空间内的所有服务器上自动进行负载均衡,消除了​​SAN​​环境中经常发生的访问热点和性能瓶颈问题。​

​ ​

​ ​

​4​​、弹性哈希算法​

​ ​

​GlusterFS​​采用弹性哈希算法在存储池中定位数据,而不是采用集中式或分布式元数据服务器索引。在其他的​​Scale-Out​​存储系统中,元数据服务器通常会导致​​I/O​​性能瓶颈和单点故障问题。​​GlusterFS​​中,所有在​​Scale-Out​​存储配置中的存储系统都可以智能地定位任意数据分片,不需要查看索引或者向其他服务器查询。这种设计机制完全并行化了数据访问,实现了真正的线性性能扩展。​

​ ​

​ ​

​5​​、弹性卷管理​

​ ​

​数据储存在逻辑卷中,逻辑卷可以从虚拟化的物理存储池进行独立逻辑划分而得到。存储服务器可以在线进行增加和移除,不会导致应用中断。逻辑卷可以在所有配置服务器中增长和缩减,可以在不同服务器迁移进行容量均衡,或者增加和移除系统,这些操作都可在线进行。文件系统配置更改也可以实时在线进行并应用,从而可以适应工作负载条件变化或在线性能调优。​

​ ​

​ ​

​6​​、基于标准协议​

​ ​

​Gluster​​存储服务支持​​NFS, CIFS, HTTP, FTP​​以及​​Gluster​​原生协议,完全与​​POSIX​​标准兼容。现有应用程序不需要作任何修改或使用专用​​API​​,就可以对​​Gluster​​中的数据进行访问。这在公有云环境中部署​​Gluster​​时非常有用,​​Gluster​​对云服务提供商专用​​API​​进行抽象,然后提供标准​​POSIX​​接口。​

​ ​

​ ​

​ ​

​ ​

​ ​

​模块化堆栈式架构简介​

​ ​

​GlusterFS​​采用模块化、堆栈式的架构,可通过灵活的配置支持高度定制化的应用环境,比如大文件存储、海量小文件存储、云存储、多传输协议应用等。每个功能以模块形式实现,然后以积木方式进行简单的组合,即可实现复杂的功能。比如,​​Replicate​​模块可实现​​RAID1​​,​​Stripe​​模块可实现​​RAID0​​,通过两者的组合可实现​​RAID10​​和​​RAID01​​,同时获得高性能和高可靠性。如下图所示:​

​ ​

​ ​

Untitled.png​ ​

​ ​


​ ​

​ ​

​ ​

​个功能模块就是一个​​Xlator​​,不同的​​xlator​​在初始化后形成树,每个​​xlator​​为这棵树中的节点,​​glusterfs​​工作是通过节点之间的调用。​

​ ​

​ ​

​ ​

​ ​
​ ​

​应用于​

​ ​
​ ​

​ ​

​ ​

​了解​​GlusterFS​​分布式文件概念。​

​ ​

​ ​

​ ​

​ ​

​ ​
没有回复!
找不到事件!

Top