储迅为GlusterFS完善RDMA传输引擎

关于 GlusterFS

在分布式文件存储领域,有不少著名的开源项目。GlusterFS凭借其久经考验的稳定性、优异的扩展性、无元数据架构带来的数据可靠性、并发高性能等诸多特点,一直是许多关键性业务的首选文件系统。

上海储迅信息技术有限公司(<http://www.storswift.com>)作为领先的分布式存储产品和高性能计算/AI计算基础架构供应商,也积极参与到GlusterFS项目的开发,基于它打造了数据中心级的分布式存储产品,也为社区贡献了许多模块的关键代码,比如Windows客户端和RDMA模块的代码。

缘起RDMA

传统的网络应用(包括分布式文件存储),都是通过TCP/IP协议来传输数据。TCP/IP经过了几十年的发展,成熟可靠,但因为其主要运行在不可靠的物理链路,具有复杂的层次结构,从诞生之日起,就有着性能方面的先天不足。网络数据包要经过网卡驱动、操作系统内核等软件模块的层层处理,才能被应用程序使用,时延较大;数据包也在内存中来回移动,额外消耗了大量的系统资源。如今的计算机硬件配置越来越高,更快的多核CPU,带宽大时延低的NVMe SSD,虽然都能极大提升存储性能,但最终的瓶颈往往卡在步履蹒跚的传统网络设备,即使普遍采用万兆以太网,无论是带宽还是延时,都无法满足高性能计算等对性能有着苛刻要求的应用环境的需要。

RDMA的全称为Remote Direct Memory Access,字面的意思就是远程直接访问内存,顾名思义,就是让一台计算机能够直接访问另外一台计算机的内存。这种技术无需操作系统参与,能让应用程序直接读写网络收发的数据,从而极大地减少了内存拷贝操作,也避免了不同的软件模块对数据的反复处理,对性能的提升作用是毋庸置疑的。

目前,能支持RDMA技术的物理网络主要有Infiniband(简称IB)、Omni-Path和以太网。

其中,IB为最主流的技术,RDMA市场目前的垄断者。目前IB网卡和交换机的供应商主要是Mellanox,在高性能计算(HPC)领域,IB是最为广泛使用的高速网络设备。

Omni-Path为Intel收购Qlogic之后研制出来的下一代高性能网络架构,典型速度为100Gbps,且Intel在部分CPU上面直接继承了相关的接口,可见Intel开拓相关市场的决心。但Omni-Path的应用才开始起步,市场占有率远没有IB那么大。

现在的高速以太网(比如25Gb及其以上的网卡),除了支持传统的TCP/IP之外,也支持RDMA方式。基于以太网的RDMA技术有两种,RoCE和iWRAP。RoCE的主要厂商为Mellanox和Broadcom(Avago),它对交换机的要求较高;iWARP的主要厂商为Intel,对交换机的要求较低。

储迅对GlusterFS的RDMA模块的改进

因为RDMA技术的高带宽和低延迟,GlusterFS在早期的时候便加入了对RDMA的支持。不过,GlusterFS还是以在传统的TCP/IP网络中运行为主,如果采用RDMA模式,在HPC等领域持续地大规模读写,会遇到连接断掉I/O不能持续进行等诸多问题,性能的抖动也较大。针对目录元数据的操作(比如列目录、删除目录、查找文件等),表现出来的问题更多。

针对上述问题,储迅的研发团队对GlusterFS的RDMA模块以及相关代码做了全面的梳理,优化了读写流程,改进了目录元数据的查找方式,并针对并发操作时不规范的锁操作导致的race condition问题进行了全面排查。新的代码经过了大规模的内部测试,以及在基因测序、视频分析、材料计算等多个客户处的长时间检验,可以稳定地运行在复杂的商用环境中,尤其适合HPC领域的各项计算场景。

除了稳定性,在性能方面,使用储迅改进版本的GlusterFS,基于同样的硬件,其并发读写性能不仅比TCP/IP模式快3-5倍,而且综合性能完全可以和Lustre文件系统的性能抗衡。由于GlusterFS比起Lustre有更多的特性,包括数据冗余性等HA特性,且不依赖于昂贵的元数据服务器,所以,该方案具有比Lustre更强的竞争力。

针对具有元数据服务器的分布式文件系统,GlusterFS采用了去中性化的架构,完全屏蔽了元数据服务器。这种架构带来了更好的数据可靠性,且更容易维护,但也有一定的缺点,主要表现在目录操作较慢–毕竟列目录等命令,不能在元数据服务器中直接获取,而需要遍历每个存储节点来获取内容。储迅在改进RDMA代码的同时,也对GlusterFS的相关代码架构做了优化,对于列目录等命令,其性能有着较大的提升,甚至在集群硬盘较多的时候,速度能提高一个数量级以上,彻底改变了部分用户对GlusterFS在元数据操作方面体验不佳的印象。

储迅基于RDMA的HPC存储的完整方案

基于优化了RDMA代码的GlusterFS,储迅提供了HPC的完整存储解决方案,具有高并发、低延迟、数据可靠性高、接口丰富、开箱即用等特点,特别适合基因计算、材料研究、气象分析、石油勘探、视频分析等领域。

此外,储迅还和Infiniband技术的领军企业–Mellanox建立了战略合作关系。Mellanox针对储迅的GlusterFS存储产品,提供Infiniband和RoCE技术的全面支持,通过行业内的合作伙伴,提供整合的HPC存储产品方案,不仅仅在稳定性、性能和功能方面给客户最大的保障,还能为客户带来更好的存储使用体验,确保能为客户创造更大的价值。