浅析存储虚拟化技术及在支付系统城市处理中心的应用
2013-04-29赵颖妤
赵颖妤
摘要:存储虚拟化技术是保障数据安全的有效手段,本文介绍了存储虚拟化概念和实现方式,并结合支付系统的特点,认真研究了支付系统的存储管理需求,详细分析了IBM SVC技术实现支付系统数据存储的解决方案。
关键词: 存储虚拟化 支付系统 SVC
一、背景
随着我国经济的发展,支付系统在国民经济中发挥着越来越重要的作用。自2002年10月8日大额实时支付系统成功投产试运行以来,经过近10年的建设发展,支付系统已建成了包括大额支付系统、小额支付系统、支票影像交换系统、境内外币支付系统、电子商业汇票系统、网上支付跨行清算系统等六大系统为主体的,较为完善的跨行支付清算服务体系,为商业银行及货币市场提供支付清算服务和公共支付清算平台,是人民银行发挥其金融服务职能的重要核心支持系统。大量的资金通过人民银行搭建的跨行清算平台进行流通,以长沙清算中心为例,2012年,按照业务往来账口径统计,湖南省支付系统全年共处理支付业务6409万笔,金额36万亿元,并且每年支付系统笔数按30%-50%的增长率快速增长。
支付系统的存储系统承载着所有的业务数据和运行数据,其可靠性不仅直接影响业务运行的连续性和生产数据的安全性,更关系到社会金融的稳定。同时,随着业务系统的不断增加,存储的网络化和集中化,不同厂商存储设备难以兼容性等问题,导致不同存储设备的存储资源不能共享,存储系统容灾能力差。为解决这些问题,存储虚拟化技术应运而生,并成为存储技术发展的主要方向。
二、存储虚拟化的概念和实现方式
(一)存储虚拟化技术的概念
全球网络存储工业协会(SNIA)对存储虚拟化(Storage Virtualization Solutions)的定义如下:通过对存储系统或存储服务的内部抽象、隐藏或隔离,使存储或数据的管理与应用、服务器、网络资源的管理分离,从而实现应用和网络的独立管理。从具体实现上讲,把多个存储介质模块,如硬盘、RAID 等通过一定的手段集中管理,所有存储模块在一个存储池中得到统一调配,为使用者提供大容量、高数据传输性能的存储系统的方式,就称之为存储虚拟化技术。
(二)存储虚拟化的实现方式
存储虚拟化的实现方式通常分为以下三种:基于主机或应用、基于阵列以及基于网络交换机的虚拟化方式。不论使用何种技术,虚拟化最关键的就是解决物理存储到虚拟存储的映射。
1.主机或应用级的存储虚拟化
基于主机或应用的存储虚拟化的实现通常被称为逻辑卷管理(LVM,LogicalVolume Manager)。通过在服务器上安装虚拟存储管理软件,把磁盘阵列映射成一个虚拟的逻辑块空间,再将磁盘上的物理块或逻辑单元号(LUN,Logical Unit Number)映射成逻辑卷号,并作为基础存储单位提供给应用程序使用,实现各物理存储体的集成映射。基于主机或应用的存储虚拟化实现比较容易,可在不需要硬件支持的条件下实现形式多样的存储管理,对改善存储系统的可管理性,提高存储的安全性和可靠性很有益处。缺点是兼容性不好,扩展性差,调度工作会影响服务器的性能。
2.存储阵列级的存储虚拟化
基于阵列的虚拟存储更适用于以存储为核心的环境。它独立于主机,存储设备可以连接多台主机,但存储设备本身不能是异构的。此时虚拟过程是在阵列控制器上完成,将一个阵列上的存储容量划分为多个 LUN,供不同的主机系统访问。智能的阵列控制器提供数据块级的整合,同时还提供一些附加的功能,例如:LUN Making缓存,即时快照、数据复制等。配合使用不同的存储系统,基于存储设备的虚拟化模式可以实现性能的优化。但由于存储设备在各个供应商之间互操作性和兼容性较差,如果没有第三方的虚拟软件,基于存储设备的虚拟化通常只能提供一种不完全的存储虚拟化解决方案。
3.网络级的存储虚拟化
基于网络的存储虚拟化是目前 SAN 虚拟化的主流技术,通过在存储区域网这一级采用智能化的路由器,交换机或者是增加一个元数据服务器等来实现虚拟化的工作,它通过提供一种中央虚拟化方式将网络中的存储资源集中起来管理,从而降低了总拥有成本,提供了一个“开放的”虚拟实施环境,最有可能支持任何的服务器、操作系统、应用和存储设备。从技术上讲,基于网络的存储虚拟化又分为带内和带外两种实现方式。这两种方式的主要区别在于存储网络中数据 I/O 与控制信息是否使用同一通道。带内虚拟化是指虚拟化的操作在服务器和存储设备之间交换数据的通道中执行,存储数据和控制信号使用同一数据通道。带外虚拟化,是指虚拟化功能在位于存储数据通道之外的一个设备上实现。
三、存储虚拟化技术在支付系统中的应用
(一)CCPC存储现状及存在问题分析
CCPC集中了支付系统省级节点的服务器和存储设备,支付系统的核心应用运行于这些服务器上,它具有高集成度、高能耗、高可用性和不间断运行的特点。
目前每个CCPC包含三套不同型号的存储设备供各类应用使用,由日立和IBM两个厂商提供,综合分析当前存储现状,目前CCPC存储设备存在以下几个问题:一是存储系统存在单点故障。目前,支付系统大小额系统、CIS系统、ECDS系统、IBPS系统的磁盘阵列没有冗余,存在单点故障。一旦该磁盘存储不可用,没有替代存储来保障业务运行的连续和数据的完整,可能会导致业务系统中断,甚至丢失业务数据。二是目前每个系统的存储设备均为单独运行,存储利用率较低。考虑到支付清算体系的发展,系统的复杂性增加,需要整合存储资源,提高存储设备利用效率,提供统一的存储资源池和管理方式。三是第二代支付系统即将上线,为統筹考虑存储资源,便于未来的进一步系统扩展和设备更新,需要变更存储架构,建设更加先进、合理、高可用性的存储系统。
(二)CCPC虚拟化解决方案
1.存储虚拟化方式选择
从目前支付系统城市处理中心的情况来看,基于主机的存储虚拟化依赖于代理或管理软件,由于控制软件是运行在主机上,将占用主机的运行资源,这种方法的可扩充性较差,还可能影响到系统的稳定性和安全性。基于存储设备的存储虚拟化方法依赖于提供相关功能的存储模块。如果没有第三方的虚拟软件,基于存储的虚拟化经常只能提供一种不完全的存储虚拟化解决方案。利用这种方法意味着最终将锁定某一家单独的存储供应商,对于CCPC而言,考虑到目前现状以及今后良好的可扩展性,这一方法也不合适。网络级的存储虚拟化方式分为带存储虚拟化和带外存储虚拟化。带内存储虚拟化可以很容易整合多种存储设备,便于集中式管理,因此具有较高的安全性。同时,带内存储虚拟化无需代理主机,相关部署实例和超高速缓存能够帮助实现各项性能,保持灵活性。
针对亟待解决的CCPC存储阵列单点故障和现行存储结构优化问题,对比其它可能的存储系统虚拟化解决方案进行优势分析,网络级的带内存储方式是目前CCPC可以选择的最佳方式。
网络级存储虚拟化技术具有代表性的就是IBM SVC(SAN Volume Controller)。IBM SVC是整个SAN网络的控制器,可以将SAN中的各种存储设备整合成一个存储池,并按需分配存储空间、性能和功能,SVC对服务器和存储设备都是透明的。SVC为各种不同的存储设备提供了一个统一的数据复制平台,可以兼容各种不同的存储设备,帮助客户通过中央视图简化异构存储环境管理并实现管理的自动化。同时IBM SVC存储虚拟化技术通过nodes节点实现cluster集群,具有更高的性能、可靠性和很好的兼容性,可扩展性更强,容灾效率更高,IBM SVC与基于主机或应用的虚拟化技术详细对比情况如表1所示:
表1 存储虚拟化技术对比
通过分析,IBM SVC虚拟化解决方案借助虚拟存储将复杂的存储环境简单化,消除异构平台所造成的信息传递壁垒,实现了随需应变的存储体系,让存储真正实现按需分配。在上述方面具有相对的优越性,在未来业务发展需要的情况下,具备平滑转换成同步容灾复制方式的能力,可实现数据的完全一致性。
2.存储虚拟化解决方案研究
针对上述分析,通过IBM SVC技术整合数据内部中心(CCPC)所有存储资源,配置SVC设备,所有服务器的I/O均需要经过SVC内部进行处理,改造后CCPC总体拓扑结构如下:
从物理结构上看,CCPC使用 2 个nodes集成SVC的Cluster,能够实现热备切换。所有存储设备通过SVC设备与主机相连,SVC VDM技术保证服务器I/O正确写入两台后端存储,SVC高可用性通过两台SVC NODE构建Cluster,解除SVC设备自身的单点故障隐患。
从灾备的角度上看,理论上灾备中心的所有设备都处于一个待机的状态,在存储数据同步的情况下,一旦主中心失去响应,待机状态的服务器会马上处于工作状态,接管所有工作。在服务器数量庞大的数据中心,要管理并迁移数十台服务器上的数据是一件十分困难的事情。除了备份中心的服务器要相同以外,各个不同的服务器使用的冗余技术各不相同,这为高可用性和灾难备份提出了很高的要求。IBM SVC利用Metro mirror和Global mirror技术,进行同步数据复制(同城灾备中心)和异步数据复制(远程灾备中心)。灾备中心结构如下图4所示:
从数据复制实现方式上看,通过SVC提供的flashcopy功能实现。flashcopy相当于镜像,是基于存储级别的,它的作用是产生一份在这个时间点上的数据卷拷贝,这份拷贝内容和原始数据卷是完全一样的,对于AIX系统来说,flashcopy是完全透明的。
四、结束语
存储虚拟化技术在支付系统的数据存储中充分发挥其优势,优化了存储利用率,使得管理更加顺畅,提高了系统的可用性和整体性能,降低了存储系统的管理费用等。然而,从目前来看,存储虚拟化技术依然缺乏高度的标准化,不同虚拟产品之间的兼容性还有待进一步提高,作为一种正在发展的技术,还有很多新的应用有待开发。
参考文献:
[1]刘镇涛《存储虚拟化原理分析及其实现》[学位论文] 2007
[2]陈其铭,张宇,林荣《虚拟存储技术及其现状分析》电脑知识与技术 2009(2)
[3]康潇文,杨英杰,杜鑫《基于虚拟存储的数据容灾关键技术研究》计算机应用研究 2009(7)
[4]马骋,娄国焕《虚拟存储技术研究与应用》河北省科学院学报 2010(3)