存储分析:NAS虚拟化应对文件增长(上)

目前,各个领域的非结构化数据正在以飞快的速度增长,已经成为了一个IT部门的巨大挑战。大量的市场调查公司的统计数据都显示出同样的图景:在大多数公司中,非结构化数据相比于结构化数据来讲已经明显占了上风,整个企业各处都充斥着非结构化数据,各类文件服务器或者NAS设备上,都是这些数据的长久定居场所。

如何管理这些数据已经成为一个急待解决的痛点,管理成本飞涨。

我们到底应该怎样这种左右为难的境地当中的呢?显而易见,一方面,我们可以很容易的利用Windows或者Linux的文件服务器再加上直连存储系统或者SAN存储系统来构建出一台文件服务器来存放非结构化数据。另一方面,我们还有传统的纵向(Scale-Up)扩展方式的NAS系统,但是却不可横向(Scale-Out)扩展,扩展能力受限。比如,NetApp在发布Ontap 8之前是并没有先进的集群以及单一命名空间的产品的,唯一的扩展方式就是再购买一台更大容量和性能的Filer(NetApp的NAS设备)或者干脆部署一台独立的NAS以脱离当前的NAS系统。

数据存储行业已经很深刻的认识到这个情况,很多厂商都已经采取了不同的策略推出了文件系统和NAS虚拟化产品,这些产品能够帮助用户解决当前面临的棘手问题。虽然这些产品被宣称可以解燃眉之急,但是市场反应还是比较冷淡。“块级别的虚拟化用了10年才得以深入人心,” Stillwater, Minn.-based StorageIO Group 公司的创办者以及高级咨询师Greg Schulz这样说道,“NAS虚拟化仍然处于早期阶段,在被人广为采用之前,会经历一段很长的时间。”

对文件访问的四种虚拟化方式

在后端的文件存储层与客户端之间嵌入一个逻辑层次,这种虚拟化文件访问的方法被认为是应对非结构化数据所带来的挑战的一种最保险的方式。与块级别的虚拟化类似,实现文件访问虚拟化的方式也不止一种,相反,我们有多种架构和方法来在文件虚拟化市场上角逐。

NAS虚拟化术语

命名空间:文件系统数据的一种展现方式和组织方式,比如目录结构和文件。

非共享命名空间:在一个非共享命名空间中,文件系统信息被限制在一个单一的物理设备中,不被其他人共享。传统的scale-up模式的NAS系统以及基于服务器的文件存储系统就是非共享命名空间的例子。

共享命名空间:相反的,共享命名空间,又被称为全局命名空间,会将多个物理设备或者节点之上的非共享命名空间整合成一个全局的单一的命名空间。有两种实现方法,第一种是简单的将后面的多台文件存储系统中的命名空间进行整合,然后成为一个新的统一命名空间,这种方式也是文件系统虚拟化产品以及集群NAS的普遍做法。第二种方式则是使用集群文件系统,也就是一个单一的文件系统会被分不到多个物理节点上。(译者注:前者可以理解为松耦合,后者可以理解为紧耦合,前者容易扩展,后者扩展性差。)

Scale-up NAS:是这样一种NAS设备,通过替换硬件或者升级到更高速的硬件来实现性能和容量提升,比如升级到更快的CPU,更多的内存以及磁盘。其命名空间只能够在一个或者两个节点之间进行扩展,仅仅为了保持高可用性。

Scale-out NAS:是这样一种设备,通过增加节点到现有集群的方式来获得性能和容量的提升。可以有N+1(只有一个热备节点)或者N+N模式(每个节点都有各自的热备节点)的冗余配置。其提供一个跨越所有节点的单一命名空间,通过任何一个节点即可访问到集中的所有数据。

1. 文件系统的虚拟化(整合)是文件虚拟化的方式之一。站在一个较高的角度来审视的话,文件系统虚拟化相当于将多个独立的文件系统进行积累和整合,成为一个大的文件系统池,而客户端访问这个池的时候就像在访问一个单一的单元,感觉不到底层的多个独立文件系统的存在。换句话说,客户端所看到的是一个单一命名空间而不是底层的文件存储。底层的文件存储可以是一台独立的NAS设备,或者一批不同类型的文件服务器和NAS设备。文件系统虚拟化有针对性的解决了两个主要问题:它给用户提供了一个单一的虚拟文件存储空间;它提供了其他的存储管理功能比如在线数据迁移以及文件路径固定化处理(当文件在底层各个存储空间内移动的时候对上层客户端透明)。

文件系统虚拟化的一个最大好处便是它可以被方便的部署在现存的环境中同时不会对现存的服务器以及NAS设备产生影响。当然,也有一些劣势,即文件虚拟化并不能够简化对底层各个文件存储空间实体的管理操作。

2.集群文件系统是文件虚拟化的另外一种方式。集群文件系统可以说是下一代NAS系统中的一部分,它的机制可以突破传统纵向(scale-up) 架构的NAS系统所带来的限制。集群文件系统一般由提供块级访问的存储节点(典型情况下起配3个节点)组成,通过简单的向系统中增加更多的节点,整个系统可以扩展到PB级的文件存储容量。集群文件系统将所有节点粘合了起来,对外向客户端提供一个全局的单一命名空间。提供基于集群文件系统的NAS厂商的代表有:FalconStor Software 公司的HyperFS(OEM自中国国内的集群文件系统厂商:蓝鲸BWFS), Hewlett-Packard (HP) 公司的StorageWorks X9000 Network Storage Systems, IBM’s Scale Out Network Attached Storage (SONAS), Isilon Systems 公司, Oracle公司的Sun Storage 7000 Unified Series, Panasas 公司, Quantum公司的 StorNext 以及Symantec公司的FileStore。

3.集群NAS系统是文件虚拟化的第三种方式。集群NAS系统的架构囊括了基于集群文件系统的NAS系统的多个好处。与基于集群文件系统的NAS系统所不同的是,集群NAS系统并不是在所有节点上都承载同一个单一文件系统,而是在每个节点上都维护各自独立的文件系统,然后在高层将这些独立的文件系统进行松耦合,对外表现为同一个根路径入口,供客户端来访问。从某种意义上讲,集群NAS属于一种将横向(scale-out)技术、多节点存储架构与文件系统整合者三个角色结合起来的合体。除了可以整合异构文件系统之外,它还可以整合本地存储节点上的文件系统。BlueArc公司的Titan以及Mercury系列的横向架构的NAS是集群NAS的典型代表。

4.NAS网关可以看做一种文件系统虚拟化设备。部署于块级存储系统前端,NAS网关可以凌驾于块级存储之上而提供NFS和CIFS协议的数据访问。这种网关设备大多数NAS厂商都提供,它通常可以允许将第三方经过认证的块级存储设备进行整合虚拟化,然后形成一个单一命名空间。

欲想了解更多,请阅读:存储分析:NAS虚拟化应对文件增长(下)