APP下载

利用存储网关实现基于网络存储的企业私有云

2013-09-15孙一晴

机电工程 2013年4期
关键词:高可用性存储设备网关

孙一晴

(国航信息管理部,浙江 杭州 311207)

0 引 言

目前,信息建设的一个核心是云计算[1],在存储领域中,则会涉及一个最常见和最重要的企业应用—云存储[2]。当企业发展到一定规模后,对于高可靠性存储管理将具有更加迫切的要求,既要求存储的容量能够随着企业应用的扩展逐年按需增长,又要求对不断增长的数据进行完全可靠的备份和便捷管理。云存储是目前最能够适应这一需求的方式,但公有云的特性导致很多企业,特别是对数据相对敏感的企业,对于云存储的应用是否适用企业存在疑虑。相应地,私有云[3]为此提供了企业自掌控的选择项。但私有云的搭建又成为企业面临的又一道难题。

本研究通过云存储模式建设实践过程中获得的经验来说明私有云存储的技术原理,并通过统一管理、高可用性等具体云存储技术的实现原理来说明存储网关如何支撑企业的私有云存储需求[4]。

事实上,本研究将私有云存储的构建限定在了网络存储的框架范围内,原因不仅因为网络存储是目前主流的存储选项,而且还因为基于网络存储的私有云模式的建设是目前最为可行、也是最易实现的体系结构。其原理相对简洁明了,对存储的各项管理需求能够比较充分地予以考虑并实现,还可以避免一些复杂的存储环节影响企业云存储的建设[5]。因此,对于涉及多种存储设备的企业或单位而言,本研究给的建议是将其中网络存储的部分从原有存储系统中剥离出来搭建基于网络存储的私有云体系,而其余的存储暂时不纳入这一体系,直到基于网络存储的限制被取消或者被替代。毕竟,云存储体系最大的特点是逐步扩展[6-8],这不仅适用于容量的扩展要求,同样也适用于技术的发展要求。

因此,本研究所提的云存储体系可以被视为私有云存储模式构建的第一阶段,随着技术的发展,该私有云将具备更大的适用面,并能够包括更多的存储设备和存储模式。而其存储管理的原理上却不需要作任何的调整,只需要有更强的设备兼容性。

1 基于网络存储的私有云构建原理

目前,企业的存储管理大致可以按存储扩展方式分为两大类,一类是坚持大存储管理,一类是小存储扩展管理。前者通常是一次性购置若干大型存储设备,可以保证支撑企业3~5年的存储需要,每隔3~5年重新确定方案升级现有的存储模式,进行大规模的数据迁移。后者则采用逐年小存储扩展的模式来进行,每年根据需要购置少量存储用于替代或者扩充企业的存储,不需要进行大规模的数据迁移。很多企业可能会倾向于前一类,这种模式能够由较大的企业进行存储的技术支撑和服务,而且不需要每年考虑存储的扩展问题。但这一模式忽略了一个重要的事实,即所谓的大存储都是建立在叠加的小存储设备上的。换言之,现有系统中的所有的大容量存储设备其实都是由一些小存储设备通过优化模板搭建起来的,例如通过RAID技术进行数据的保护等。而存储设备等IT产品逐年价格的递减是不争的事实,与其提前若干年高价购置存储,不如利用云存储技术[9]小规模的扩展存储,不仅解决了数据存储的可靠性问题,还可以获得经济上的便宜,这才是企业存储管理的必由之路。

图1 云存储原理图

云存储的原理图如图1所示。服务器与物理存储通过云存储核心进行数据管理。在图1中,虚拟存储器通常也称为存储池,是所有物理存储器的逻辑映射集合。一般意义上的网关是指协议转换器,往往是在传输层上实际网络互连;而存储网关是最近比较新颖的概念,它是指利用服务器等设备实现不同存储之间的协议转换,以便能够通过这一设备实现对多个品牌、类型的存储的访问。也就是说,原有的存储模式是将购置的存储设备直接通过局域网络连接到服务器上,通常为一个服务器所管理利用。而在云存储环境中,存储设备是通过局域网连接到存储网关上,所有的服务器通过部署相应的软件,利用存储网关实现对存储设备的访问,即存储设备与服务器不再是一一对应的关系,也不是一对多的关系,而是多对多的关系。多个不同的服务器可以同时访问这些由存储网关管理的存储设备。

存储网关的介入,解决了存储管理中的一个显著的瓶颈[10],即不同的服务器管理着不同的存储设备,这些存储设备的共用会成为整个企业应用的一个难题。从这张简单的原理图可以看出,存储网关的主要功能是支持不同网络存储设备的协议要求,并将所有的存储设备进行统一的管理。因此,本研究在存储网关中引入了存储池的概念,它将所有物理的存储设备映射到一个虚拟的存储池中,所有服务器或者应用需要访问的存储都将从这一存储池中获取。这里面最关键的问题是原来需要安装部署在服务器上的存储设备都被迁移到了存储网关上,这也解释了为什么本研究一再强调基于网络存储的原因。也只有网络存储才适用于通过存储网关不断扩展的需求,如果是直连的存储设备,不是不能体现在这种架构中,而是其数量与存储网关的个数、数据接口数相关,并不能很随意地增加扩充,因此不能讲是真正意义上的云存储。更重要的是,存储网关不仅解决了存储设备的连接问题,还解决了存储设备的存储I/O请求问题,而相对而言,直连设备的I/O请求方式与机制跟基于IP模式的存储设备还是有本质上的区别。

从图1中可以看出,目前这种基于网络存储的私有云存储体系可以涵盖FC架构、SAN网络、NAS[11]等网络存储方式。

图1其实并没有将私有云和公有云进行区分,但私有云和公有云存储的主要区别在于对存储的访问是在防火墙内还是外,因此这里也就不必要进行此细节的说明。

存储网关这一系统的引入是基于网络存储的私有云存储体系的关键。存储网关不仅仅承担存储的设备连接任务,还承载着对存储的I/O请求的处理任务。其主要软件功能包括I/O请求包的获取与转发、虚拟存储池的管理与映射逻辑管理、高可用性等其他数据保障技术支持等。由此可见,存储网关的功能特点中,并不需要对存储设备进行存储模式的改变,当然这并不意味着不能对存储模式进行改变,如果有更好的存储模式、更有效的存储管理功能、而存储设备中又不存在需要迁移或只有极少量的数据需要迁移的话,对其存储模式进行改变就是一个不错的选择。存储网关的存储I/O请求,其主要的任务事实上是转发,即将服务器针对存储池中的虚拟设备的I/O请求转换成对物理存储设备的I/O请求。由于存储池的存在,存储池中的虚拟设备与实际的存储物理设备间有某种映射关系存在,存储网关的主要作用就是将这种映射关系清晰的定义出来,并将服务器的I/O请求转换为对物理设备的I/O请求。更有意思的是,虚拟存储设备的I/O请求可以完全与服务器对实际物理存储设备的I/O请求一致,这样,存储网关的主要作用将变成简单的I/O请求包的转发及对存储池的管理了。

本研究将就具体的云存储涉及的几个关键性技术进行原理性的阐述,说明存储网关在实现私有云存储技术中应考虑的主要关键技术。

2 云存储关键技术实现

统一管理的存储需求。私有云存储体系中,各种存储设备逐年按需采购,并不保证所有的产品之间具有兼容性,因此数据管理的统一性就变得十分的迫切。在实际操作中,研究者将所有的存储设备都部署在相应的存储网关中,以便存储网关可以直接访问它们。当有服务器需要对这些存储设备进行访问时,将向存储网关提出请求。当然,提出的请求是以存储网关的虚拟设备为访问对象的。存储网关收到这些I/O请求后,可以稍作变动,通过一定的策略,将对这些虚拟存储设备的I/O请求转换为对实际物理存储设备的I/O请求。这里的关键不是I/O请求包的转发,而是存储映射的策略。研究者可以在该策略中实现对存储的负载均衡管理、对数据存储的冗余性管理及对数据进行快照等技术响应。

I/O请求被转发的示意图如图2所示。在图2中,虚拟存储设备的地址范围可以由存储网关自行定义和展现。其空间的大小既可以是实际的物理存储的真实反映,也可以是动态的逻辑数值。这样的处理模式可以解决存储分配和存储访问请求之间的不对称问题。简而言之,就是将应用的存储需求分为两种,一种是对空间的分配需求,一种是对空间的访问需求。只有对空间的访问需求才需要直接映射到物理存储设备上,而对空间的分配需求完全可以不考虑物理存储设备的现状,可以等到发生真正的访问需求时才实际分配物理存储设备到相应的虚拟存储设备。这也是云存储模式的优势之一。

图2 I/O请求的映射转换示意图

如图2所示,当服务器中有应用试图访问虚拟存储设备192.1681.1.10时,存储网关根据一定的策略选择了物理存储设备10.12.1.124,并将访问的数据通过存储网关返回给服务器。这里面,存储网关除了在选择相应的物理存储设备时可以制定策略外,在返回数据前也可以通过一定的策略来进行,以便在实时响应和网络流量间取得平衡。图2没有表示出来的内容更为丰富,例如在策略选择中,虚拟存储设备不仅可以映射到一个物理存储设备上也可以映射到多个物理存储设备。相应地,如果有多个虚拟存储设备映射到同一个物理存储设备上,也不是件复杂的事,这完全可以交由存储网关根据访问的负载均衡或者存储的负载均衡策略,甚至是安全的负载均衡来决定。

存储网关对外提供了存储统一管理界面和存储分配模式。所有的网络存储设备可以通过IP网络或者其他如FC形式与存储网关进行连接,并由它向外提供存储服务。这样一来,所有物理存储设备的管理将集中到存储网关中。这里面唯一的问题,其实也是最让企业担心的问题是,如果存储网关故障,那么数据的访问将会是怎样的情况呢?实践中,像这样的存储网关通常是成对出现的,即通过存储网关的冗余来实现存储访问的高可用性。由此可见,在云存储模式下,数据的高可用性是可以由3层不同的管理体系来保障的。第1层是存储设备的供应商提供的基于存储介质的数据保障,如RAID级别等。第2层是基于存储网关软件的数据保障,如不同物理设备间的互为备份等。第3层是基于存储网关系统的数据保障,即通过对存储网关的冗余部署来实现整个云存储体系下的数据保障。

在实践中,研究者还需要考虑数据保障问题,因为存储网关的介质故障并不损害物理存储的介质与数据,即使不通过冗余存储网关的模式提高数据的高可用性,也可以通过延时机制,即重新部署新的存储网关来恢复对数据的可用性。本研究担心的问题是如果一旦决定从现有的云存储机制还原到原有的服务器直接访问物理存储设备时,应该如何操作,如何确保数据、设备的可用。虽然有实验证明确实可以还原,但是,在比较极端的条件下,这个还原过程还是比较复杂和费时的。首先是确定还原的物理存储设备上有哪些数据需要剥离出来,其次是确定哪些数据需要迁移到还原设备上,最后才是通过费时的数据迁移过程实现对原还物理设备的数据还原,并重新将其部署到指定的服务环境中。之所以工作如此复杂和麻烦,原因是存储网关的负载均衡机制可以非常灵活,因此任何一台物理存储设备都有可能被分割成较小的若干存储模块,并担任不同层面的存储任务,从而导致实际物理设备上的数据本身并没有简洁的规律可寻,这最终造成了存储设备数据还原的复杂性。

基于存储网关软件的数据安全保障模式,即将一个针对虚拟存储设备的I/O请求分解为同时针对两个物理存储设备的I/O请求,并根据两个I/O操作的返回来确定服务器应用的返回状态。由于两个物理设备采用的是IP网络存储,对存储网关而言,只是简单地将一个I/O请求同时分发给两个物理存储设备并处理返回结果而已。如果需要,可以将请求同时分发给更多的设备,也可以稍加改进,将I/O的请求简化为日志(LOG)分发到不同的存储设备上,从而减少I/O操作和数据冗余,这特别适用于存储用作数据库的情形。这样,如果要两个完全互备的数据库,只需要作两个数据库的日志互备,简单有效。当然,如果是基于文件系统的话,存储网关需要有自己的日志管理功能,以便最大程度降低I/O操作带来的速度和带宽问题。

而这种存储的热备机制不仅保障了数据,也在一定意义上提供了存储的高可用性。由于存储网关不仅担负着数据分发的任务,同时也担负着侦测物理存储设备的运行状态的任务,因此当其中某台物理存储设备宕机时,存储网关可以实时的监测到并适时地切换到另一台存储设备,这个过程可以完全地自动化进行,不需要人工干预。但对于物理设备的恢复而言,人工干预可以促进存储网关重新进入热备机制,而不至于在撤换损伤的设备后一直处于单副本的危险境地。所以,私有云存储的高可用性实际上是通过两个或多个存储网关之间的配置来实现的。

实践中,这种存储网关的存储高可用性也可在应用的高可用性上得到一定的体现。由于无论应用本身还是应用所依赖的数据都是某种形式存储在设备上的,研究者可以将应用部署到相应的存储中,并通过恢复存储来达到恢复应用的目的。虽然这种情形受到部署、人工干预等的限制,但确实在实践中具有朴素的高可用性特质。

在构建异地容灾的存储模式时,研究者也可以通过存储网关的异地部署来实现。如果10.12.1.123与10.12.1.124两台物理存储设备是分置在不同物理地点[12]的话,这个实例也就在某种意义上提供了异地容灾的管理模式。由于I/O请求是一致分发的,理论上不存在两个异地的物理存储需要同步的问题,可以确保彼此间的数据的一致性。不过实践中,由于网络原因,无法保证两边的所有I/O操作都会被完整地、及时地传输到指定的存储设备上并被正确地执行,因此两个物理设备间会有一个小的时间差,这就需要在两个物理存储间形成一个同步的机制。而这个同步的机制不需要这两个物理存储设备来直接保障,仍然可以通过存储网关来进行,如果在两处物理位置中分别部署一台存储网关,这个同步机制就可以通过两个存储网关来协调进行。

3 结束语

本研究就是从基于网络存储的设备入手,引入存储网关,从而解决多存储设备分别由不同的服务器控制无法充分共享的问题,达到了统一管理的目标,也避免了云存储架构下多种异构存储设备的连接方式、访问方式差异导致的云存储体系搭建难题。笔者将这些相对次要的问题留待稍后去解决,不仅能够解决实践的存储统一管理、逐年增长的问题,也符合云存储体系中逐步扩展的核心理念。实际上,研究者可将存储的问题也分为几种不同层次、不同阶段的解决方案,通过逐步实验,逐步解决,最终解决所有兼容问题的模式来构建企业自属的私有云存储方案。

(References):

[1]周 平,张 超.云计算及云存储的管理技术[J].上海电力学院学报,2010,26(5):498-501.

[2]周 可,王 桦,李春花.云存储技术及其应用[J].中兴通讯技术,2010,16(4):24-27.

[3]曾赛峰,朱立谷,李 强,等.企业级私有云中的虚拟化实现[J].计算机工程与应用,2010,46(36):70-73.

[4]朱光磊.云存储技术的发展应用趋势探析[J].电脑知识与技术,2011,7(11):2561-2562.

[5]边根庆,高 松,邵必林.面向分散式存储的云存储安全架构[J].西安交通大学学报:自然科学版,2011,45(4):41-45.

[6]刘 琨,董龙江.云数据存储与管理[J].计算机系统应用,2011,20(6):232-237.

[7]李煜民,章才能,谢 杰.云计算环境下的数据存储[J].电脑知识与技术,2010,6(5):1032-1034.

[8]张洪娜.云计算平台中数据存储与文件管理的研究[D].广州:广东工业大学计算机学院,2011.

[9]李 隽.详细解析云存储技术架构[EB/OL].[2010-09-26].http://www.topoint.com.cn/html/colud/cloud⁃store/2010/09/301609.html.

[10]郭 涛.弥补云存储管理的空白[N].中国计算机报,2011-08-01(032).

[11]张东升.NAS:云存储的未来之路IT世界网[EB/OL].[2010-10-08]. http://www.edu.cn/nas-9796/20101008/t20 101008-526814.shtml.

[12]陈晓华,李春芝,张鹏宇.虚拟主机云存储系统VCloud Storage及文件传输协议VCFTP[J].电信科学,2011,27(7):59-66.

猜你喜欢

高可用性存储设备网关
超长公路隧桥高可用性监控平台方案分析
Windows 7下USB存储设备接入痕迹的证据提取
基于Flash芯片的新型存储设备数据恢复技术研究
校园一卡通服务端高可用性改造实施方案
OpenStack云计算平台高可用性的研究
一种虚拟化集群心跳算法
LTE Small Cell网关及虚拟网关技术研究
应对气候变化需要打通“网关”
用批处理管理计算机USB设备的使用
一种实时高效的伺服控制网关设计