分类: 服务器与存储
2010-11-23 14:42:11
所谓集群存储是将多台存储设备中的存储空间聚合成一个能够给应用服务器提供统一访问接口和管理界面的存储池,应用可以通过该访问接口透明地访问和利用所有存储设备上的磁盘,可以充分发挥存储设备的性能和磁盘利用率。数据将会按照一定的规则从多台存储设备上存储和读取,以获得更高的并发访问性能。北京龙存科技有限责任公司CEO唐荣锋表示:“集群存储能够解决存储应用中的高带宽、并发访问、高可扩展性、易管理等各项需求。”
与传统NAS和SAN相比集群存储的优势何在?
传统的SAN与NAS分别提供的是数据块与文件两个不同级别的存储服务,集群存储也分为提供数据块与文件两个不同级别存储服务的集群存储系统。
集群存储的优势主要体现在提高并行或分区I/O的整体性能,特别是工作流、读密集型以及大型文件的访问,通过采用更低成本的服务器来降低整体成本。
SAN系统具有很高的性能,但是构建和维护起来很复杂。由于数据块和网络需求的原因,SAN系统也很难扩容。NAS系统的构建和维护虽然比较简单,但是由于其聚合设备(又叫做NAS头)是其架构上的瓶颈,造成其性能很有限。集群存储提供了SAN和NAS结构的优点。在大多数使用集群存储的案例中,随着存储系统的扩容,性能也随之提升。一个大的集群存储的性能往往胜过一个SAN系统,但是价格也会更高。集群存储系统像NAS系统一样易于构建、操作和扩容。大多数集群存储系统没有传统NAS系统的固有瓶颈。
集群存储有两种实现方式:一种是硬件基础架构加上软件,典型代表是SAN架构+IBM GPFS;另一种是专用集群存储,典型代表是Isilon、NetApp GX以及Panasas,其中NetApp GX是构建在NAS基础架构之上的,但是通过操作系统实现集群存储。从这个角度讲,集群存储与SAN或NAS不存在竞争关系,是实现不同存储需求的解决方案。”
集群存储和NAS的概念是在文件系统层面上的,而SAN是在LUN层面上的,集群存储可以利用SAN环境实现。因此,集群存储与SAN解决的问题不同。如果一定要比较这两者的优缺点的话,可以说SAN做到的是多个服务器节点可以同时看到SAN环境中的同一个LUN,还不能做到多服务器节点间的文件级共享。
集群存储在性能、可靠性及扩展性等多个方面都远远优于NAS。
集群存储在部署时有没有特别要求?
总体来说,部署集群存储并无特别之处。集群存储中的所有节点都必须安装好操作系统,并保障网络畅通。整套系统的配置管理一般都可以通过单一节点进行,不会像SAN那样复杂。
采用集群存储的客户一定要懂得应用,对现有的基础架构非常熟悉,因为集群存储在实施时可能要用到网络、服务器、操作系统等多种知识。在采用集群存储架构时,必须考虑以下三方面问题:存储成本对整个业务模型的影响;应用系统架构和输入/输出负载的特点;在评估集群方案时,原有系统本身的性能、成本、可用性如何。
为了尽可能减少风险,用户在部署集群存储系统时,最好与厂商的专业技术人员进行充分沟通,根据具体应用需求进行有针对性的设计和部署,这样才能达到预期效果。
集群存储是否仅限于Linux平台?
由于Linux具有价格低廉以及性能优良、稳定性好等优势,因此很快融入了集群领域,并且占据了较大的市场份额。Omneon公司认为,由于价格的因素,多数集群存储基于Linux操作系统。其实,存储集群与操作系统没有什么关系,只要能被各种类型的客户端访问到就可以。在许多案例中,用户会提供客户端代理,允许从客户端到存储集群的直接访问。
可以这样说,是需求拉动了Linux平台上集群存储的发展,但是集群存储并不仅局限于Linux平台,但Linux服务器集群确实是主流发展方向。在 Unix领域,提供集群解决方案的包括IBM、SGI,微软也推出了自己的服务器集群系统。Unix领域集群市场日渐萎缩主要是因为Linux集群的性价比适合目前所有的集群应用。Windows集群系统主要应用于小型系统。
Isilon采用Linux作为核心操作系统,主要是因为Linux开放的资源、灵活性以及市场的适用性,非常适合集群存储系统的应用。但是用户必须明确,操作系统级和应用软件层是截然不同。存储集群的应用性与应用系统之间的架构存在更为密切的联系,而不是操作系统。Unix、Windows、Linux甚至Macintosh的环境与Isilon集群存储系统之间没有任何必然关系。 Isilon的集群存储解决方案是基于业内标准协议进行连接的,能够支持任何软件。
选择集群存储时应注意哪些问题?
用户应该从自己的实际应用需求(如性能需求及可靠性需求等)出发来判断是否需要构建集群存储。在选择集群存储解决方案时,应该着重考虑避免性能瓶颈。集群存储解决方案中最容易产生性能瓶颈的地方是元数据管理服务器(Metadata Server),因为元数据服务器的数量通常都有限制,而且其工作负载又很大。另外,在方案设计和项目实施的过程中,一定要注意避免单一故障点。好的方案可以从服务器、网络及存储系统的各个方面消除单一故障点。