共享存储技术

n 什么是共享存储

共享存储,指的是多台服务器访问(写)同一个存储设备的同一个分区。通俗一点讲就是说系统允许多个用户(进程)共享同一份文件。如果不提供此功能,就意味着凡是需要该文件的用户,都须各自备有此文件的副本,显然造成空间的浪费。

n 为什么需要共享存储系统

建设一个多主机共享的存储系统,以实现各台主机可互相高效率的共享数据和传递数据,并实现数据保存和保护的功能,是现在一些广电、数字资产管理、石油天然气、高性能计算网络系统及大型网站系统应用等所必需的,如在广电行业的非线性编辑系统,工作人员进行生片录制和数字化处理同时,就可让另一个工作人员编辑和审定影片长度,这样就可以有效提高制片速度,大大节省制片成本。

n 共享存储系统应用的实现方式

目前实现多台主机对同一存储单元进行编辑,主要有专门的并行文件系统来实现,主流的有半集中式文件系统和全分布式文件系统。

n 半集中式文件系统

基于半集中式文件系统的思路是客户机和MDC元数据管理器(负责存储空间的分配、回收和文件块到存储块的映射)都直接连接到SAN上,并可以直接访问SAN中的存储块。

客户端在访问SAN上的文件之前,先通过LAN向MDC服务器发送请求,MDC为其解析文件路径名,并完成文件快到存储块的转换,而后把存储块实际的物理地址返回给客户端服务器,客户端可直接通过SAN访问存储设备,从连接SAN上的存储设备上(如浪潮简单易用的端到端4Gb光纤存储系统AS800)进行高速数据读或写(如下图所示)。

在半集中式SAN文件系统中,实现了控制流和数据流的分离,只有控制流经过MDC管理服务器。在此实现方式中,因为相对于数据流来说,控制流的数据量是极小的,MDC管理服务器的压力大大减小,已经基本上不回成为系统的瓶颈。

n 全分布式文件系统

考虑到随着客户端的增多,MDC服务器可能会形成系统的瓶颈,所以另一种实现方式为全分布式文件系统便应育而生。

全分布式文件系统的实现方式不再专门设置专门的MDC元数据管理器,让系统中的客户端服务器自己协商对存储中(国内首款端到端4Gb光纤存储系统浪潮AS1000)文件的使用。来自LAN的负载由多台客户端服务器共同承担,因此,服务器不会构成系统的瓶颈(如下图所示)。

任何一个客户端死机都不会导致系统运行中断,系统内部的自动轮换机制会自动地将失效的服务器上的LAN请求,重定向到其他正常工作的客户端服务器上,其过程无需手工干预。客户端服务器在访问SAN上的存储设备之前,先通过LAN互相协商。在获得访问权限之后,直接通过SAN存取其上的数据块,每个客户端服务器都能看见所有的存储资源,每个客户端服务器都能看见完整的文件系统,文件系统再通过丰富的锁机制来保证在异构平台上共享数据的一致性。

n 共享存储的产品介绍

为确保多大量客户端主机对同一存储设备的共享访问权限和和管理权限的统一,就需要安装专门的存储共享管理软件或采用专门的共享文件系统。像现在IBM SANergy、Rorke Data ImageSAN、Quntum StorNext、IBM GPFS、SGI CXFS等软件或文件系统就是为了实现存储设备共享而开发的。

其中SANergy、StorNext、GPFS、GXFS是基于半集中式SAN文件系统设计,ImageSAN基于全分布式文件系统设计。