Gluster是一个可水平拓展的网络文件系统。它是各种不同的存储服务器之上的组合,这些服务器由以太网或Infiniband RDMA网络互相融汇,最终形成一个大的并行网络文件系统。它有包括云计算在内的多重应用,诸如:生物信息学,流媒体、文档存储和CDN等。Gluster是由GNU托管的自由软件,许可证是AGPL[3]。Gluster公司[4],是Gluster的首要商业赞助商,且提供商业产品以及基于Gluster的解决方案。
设计
Gluster是客户端-服务器架构。服务器一般被部署成存储砖(storage brick),每一台服务器运行一个名为glusterfsd 的守护进程,将本地文件系统导出为卷。Gluster的客户端进程通过TCP/IP,InfiniBand或SDP之上构建的自定义协议连接到服务器,使用可以叠加的翻译器(translator)将多个远程服务器上的虚拟卷组聚合起来。通常情况下,每个文件会被作为一个整体来存储,但是,将文件条带化存放在多个远程卷组也是可以实现的。客户端可以通过 FUSE 机制使用 GlusterFS 的原生协议,或者通过内置的服务端翻译器使用NFS v3 协议来挂载这个聚合的卷,或者直接使用 gfapi 客户端函数库来访问这个卷。客户端可以使用统一文件对象(Unified File and Object, UFO)翻译器来二次导出一个原生协议挂载,比如通过内核空间的 NFS v4 服务器、SAMBA 或是基于对象的 OpenStack Storage 协议。
大多数GlusterFS功能被实现为翻译器,包括了:
Gluster的设计遵循奥卡姆剃刀原则的简单性:尽管它导出一已存在,但是构建存储的决定权在于客户端翻译器。客户端自身都是没有状态的,互相之间没有交互。但是期望相互间的翻译器配置是一致的。这会引发内存一致性模型问题,但这种设计允许Gluster用商用硬件在规模上能达到数个拍字节,避免了通常影响分布式文件系统的紧内聚松耦合瓶颈。
另见
引用
Wikiwand in your browser!
Seamless Wikipedia browsing. On steroids.
Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.
Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.