Gluster 3.3融合对象存储和文件存储

DOSTOR存储在线 6月4日国际报道:经过一段很长的研发期,3.3版Gluster开源分布式文件系统终于问世了。Gluster 3.3将文件存储与对象存储统一起来,为Big Data Storage提供了一个Hadoop HDFS兼容的应用程序接口(API)。

GlusterFS 3.3原本预计会在2011年底之前发布。Gluster.org社区领导人John Mark Walker解释说,Gluster 3.3的发布过程出奇地长,这主要是某些原因造成的,包括此次产品的发布范围相当地大。

Walker称:“除了HDFS兼容、统一文件与对象存储、自我修复改进、粒度修复、法定执行和其他一些改善之处外,这个版本还添加了许多其他的功能。为了开放管理和透明度,以及将更多资源投入到质量保证和发布管理之中,我们还重组了社区。”

Walker补充说,所有的那些变化都极大地改善了这一工程,但造成了产品发布的推迟。在所有的重大改变之中,最重要的是统一文件和对象存储。 Walker解释说,对象存储和文件存储都有各自的利弊。

Walker说:“文件接口是一种低级的富应用程序接口,它与POSIX接口一样,允许开发商做很多事情,但是对某些运算来说,它存在重复和过度的现象。对象存储没有为开发商提供相同水平的功能,因为它从设计上就故意采用的是一种简化的数据存取接口。”

另一方面,对象存储允许在远程、高延迟环境下存取数据,在相同的情况下,文件存储接口是无法胜任的。 他认为,现代企业既需要文件存储,也需要对象存储,因此才发布了3.3版Gluster。将对象存储和文件存储统一在一起还可以简化企业应用向云环境迁移的工作。

Walker说:“企业开发商和管理员不想只是为了创建云和移动应用而重新编写整个存储层。我们想让他们继续使用文件接口,让远程设备和网络应用通过对象接口来存取数据。”

可扩展性

Gluster 3.3还改善了系统的弹性和可扩展性。在所有的改善之中,增加了一系列自我修复功能,包括一种名为“粒度修复”(granular healing)的功能。 Walker解释说,自我修复处理可按分区对每一个文件进行修复。

Walker说:“在这一个版本发布之前,在发生故障后恢复大容量的虚拟机映像时存在服务宕机的风险。在那时,在系统进行自我修复的时候,整个虚拟机都会被锁定。 但是新版本发布后,以后不会再出现这种情况了。”

Gluster 3.3还增加了服务器方面的修复和预期修复等功能。Walker解释说,预期自我修复是指当一个文件被修改之后,每一个服务器都会记住恢复后的结点的待处理文件的列表。 恢复后的结点会向其他服务器咨询那些文件需要被修复,然后去复制完好的文件。

预期自我修复是通过利用待修复文件的系统链接的方式来记住待办事项。在同步复制的时候,每一个复制的服务器都保留了一份系统链接列表,以免一个或更多结点出现故障。 这个修复过程实际上相当有趣。修复过程实际上是与服务器上运行的ghost客户端协同工作的,访问N+1的同时复制服务器结点。

Walker表示:“以前,要想对复制卷进行自我修复,就必须在文件系统中安装一个GlusterFS客户端,然后才能进行自我修复。为了实现更巧妙的预期自我修复,我们仿造GlusterFS客户端开发出服务器端自我修复功能。”

Gluster以后的发展方向

现在Gluster 3.3面向公众开放了,Gluster社区预计发布周期大约为6个月。发布周期将与社区开发员/设计大会同步推进,首次开发商峰会将于7月9日在海湾区召开。

在Gluster 3.3的研发周期内,红帽公司以1.36亿美元的价格收购了Gluster。GlusterFS现在成为了红帽存储解决方案的基石。 Red Hat Storage 2.0上一次升级的时间是今年4月份。

作为红帽公司的一部分,Gluster社区也从开核心(open core)状态转向开源状态。

虽然Red Hat Storage建立在核心开源Gluster工程之上,但现在还不清楚Gluster 3.3的最终发布将在何时反映到红帽公司的产品上。

Walker说:“我们决定将Gluster打造成分布式存储中的Linux,让它成为非结构化数据存储的标准。为了实现那个目标,我们必须时刻考虑Gluster.org社区的最大利益。”