1 引言
随着Internet 的迅猛发展,特别是以电子商务、数据仓库、网络娱乐等网络应用的蓬勃兴起和广泛使用,积极地推动了计算机技术的进步,对现有的计算机技术提出了更高的要求。尤其在存储方面,不光容量呈指数增加,并且对存储性能、存储安全性、稳定性、易管理性等诸方面有了进一步的要求。目前,国际上存储技术的发展十分迅速,存储技术被认为是继处理技术、网络技术之后,IT 行业的第三次技术浪潮。
当新的存储技术推向市场时,必须要与现有的存储兼容。假如新的存储设备的接口和管理改变很多,不仅技术本身的实现难度很大,而且也很难在市场上立足。几乎所有的计算机存储技术,无论是文件服务器的NAS类型的存储网络,还是光纤通道SAN 类型的存储网络都遵从这个规律。而虚拟化是最常见的提供这种兼容性的技术,它能够提供存储、I / O 产品和过程的兼容性。
2 存储区域网(SAN)技术分析
按照SNIA(存储网络工业协会)定义,SAN 是一种利用FC 等互连协议连接起来的,可以在服务器与存储设备之间以及存储设备与存储设备之间直接传送数据的网络。独特的体系结构和构建技术使SAN 具有很多优点:如高性能、高可用性、高可扩展性;便于集中存储和管理;实现LAN-free Backup,数据备份不占用LAN 带宽;支持更远的距离等。但具体应用中,SAN 有着自身的一些缺陷:
①设备的互操作性较差。目前采用的最早和最多的SAN 互连技术还是Fibre Channei,对于不同的制造商,光纤通道协议的具体实现是不同的,这在客观上造成不同厂商的产品之间难以互相操作。目前虽然有些厂商组成了联盟来保证他们的产品互操作,但因为具体实现的不同以及联盟范围的有限,这样做的效果也很有限。
②构建和维护SAN 需要有丰富经验的,并受过专门训练的专业人员,这大大增加了构建和维护费用。
③在异构环境下的文件共享方面,SAN 中存储资源的共享一般指的是不同平台下的存储空间的共享,而非数据文件的共享。这些都阻碍了SAN 技术的普及应用和推广。目前SAN 研究的一个热点就是SAN 的存储虚拟化技术,通过SAN 的存储虚拟化来根据需要分配存储资源,整合不同设备商提供的存储产品,提供可选择性的配置功能来获得更高的可用性和减少用户总成本。
3 存储虚拟化技术分析
(1)存储设备的虚拟化。这种虚拟化在设备层实现,最常见的虚拟存储设备是RAID。它将多个物理磁盘按不同的分块级别组织在一起,屏蔽了具体的物理磁盘,为用户提供了一个统一的逻辑磁盘,用户对RAID 的操作就像对普通磁盘一样。RAID 的虚拟化是由RAID控制器实现的,它解释用户的I / 0 指令并将它们发给物理磁盘执行。由于使用数据分块技术,RAID 提供给用户的是具有容错能力的高性能虚拟设备。
(2)SAN 内部的虚拟化。SAN 的虚拟化是存储系统的发展趋势,它在文件系统层实现。SAN 虚拟化的目的就是让用户和应用系统把SAN 作为一个单一的、同构的资源池来存取和控制。其中包括根据不同应用系统的需要对SAN 中的数据进行管理、保护、使用和操作,对设备进行监控,从而充分利用SAN 的存储能力。SAN 的虚拟化需要在原有体系结构中加入一个新结构层,即虚拟化层,这个新的层次将为用户和应用系统提供SAN 的虚拟化视图。在用户和应用程序看来,SAN 是一个结构相对简单的、具有统一界面的虚拟存储池。存储池中逻辑存储单元的具体情况只是系统管理员关心的问题,对用户和应用程序则是完全透明的。
(3)多个SAN 之间的虚拟化。随着IP 存储的兴起,FC SAN 和IP 存储结构之间的联系越来越紧密,IP 存储可以作为FC SAN 的重要补充。现在,多个SAN 之间可以通过FCIP 协议实现互连,即多个独立的SAN 可以通过IP 网络连接成一个统一的SAN。如何实现多个SAN之间的虚拟化,这个问题已经摆在人们面前。
(4)广域的存储资源虚拟化。广域的存储虚拟化是存储资源最高的抽象形式,它将全球范围的存储资源统一成一个巨大的逻辑存储池。它的出现将使大规模存储和计算彻底分离,导致存储服务提供商(SSP)和存储服务代理(SSA)的诞生。实现了广域的存储虚拟化,用户的计算机将只需要计算功能和传输功能,当需要使用大规模数据存储时,可以向存储服务代理提出请求;后者将从广域的虚拟存储池中选择合适的存储资源,并向相应的存储服务提供商提出具体的存储需求;存储服务提供商将按需分配相应存储资源给用户,并提供各种功能服务。广域的存储资源虚拟化是数据网格研究的主要内容。
4 SAN虚拟化的实现
在SAN 的范围内,通常存储虚拟化是指将具体的物理存储设备和服务器操作系统分隔开来,为存储用户提供统一的逻辑视图,它是具体存储系统的抽象。一方面,它将应用程序和用户所需要的数据存储操作和具体的存储控制分离;另一方面,它将各个磁盘、阵列等物理存储设备映像成一个逻辑存储池。存储虚拟化要完成三个任务:
①在多个物理存储设备上创建一个抽象层;②屏蔽存储系统的复杂性,简化管理,尤其是在异构环境中;③对存储资源进行优化。
SAN 的虚拟化是通过虚拟化层来实现的。它将可用的存储空间分成虚拟磁盘或虚拟卷,而无须考虑实际存储设备的物理布局和结构。通常情况下,虚拟卷呈现给服务器操作系统一种物理磁盘的抽象,使操作系统像使用磁盘一样使用。整个SAN 内的虚拟卷提供实现重要数据传输功能的SAN 服务,包括远程映像、虚拟磁带等。SAN 的虚拟化层将会取代传统的服务器受限的数据管理系统结构,并且将进一步影响存储器硬件的结构。某些SAN 虚拟化层提供RAID 的功能,它允许按照以单个磁盘为单位扩充存储系统,将RAID 的功能从存储子系统中抽取出来在SAN 中实现。虚拟化SAN 有多种实现方式,根据虚拟化层在体系结构中的位置,可以划分为以下五种虚拟化实现方式:
(1)多主机阵列。它通常采用RAID 控制器硬件在存储子系统级别构建虚拟化层,对SAN 系统进行响应。这种实现通常提供很好的性能,高可用性,可以支持不同类型的主机,但你只能购买与阵列一致的磁盘。最大的缺点是存储池的大小和构成的组件受限于阵列的封闭性,需要增加存储空间就意味着要运行多个存储池与失去分配和集中管理的自由。所以这种方式对不同厂商的产品支持不够。
(2)逻辑单元号掩码。这种虚拟化方式是在每个主机安装特殊的设备驱动程序来防止主机存取不属于它的存储资源。这些逻辑单元号掩码驱动程序通常是一个基于主机或者外置的中央管理程序。这种方法适合小型配置的SAN 环境,而在大型数据中心和企业级SAN环境中会带来意想不到的复杂性和额外开销:!要为潜在的每种服务器平台提供支持和维护,对驱动程序开发商是一个巨大挑战;"每个主机都要安装驱动程序会对主机和网络性能有影响;#要在大量的主机上改变管理设置是让人厌烦、缓慢和开销很大的一项工作。值得注意的是存在潜在的安全性问题:没有安装驱动软件的“欺诈”主机可能突破共享资源的安全性控制来盗取存储池中属于他人的数据。
(3)文件重定向器。这种虚拟化方式是通过一个外部的元数据控制器或者文件系统管理器,将SAN 中的每个主机需要的文件名映射到磁盘的块地址上。这些元数据服务器的目的除了虚拟化存储池空间,还试图降低网络上的磁盘I / 0 传输。虽然这种虚拟化方式能够提供的文件共享服务具有一定的实用价值,但是和逻辑单元号掩码方式(LUN Masking)存在同样的问题:文件系统重定向是与特定的操作系统环境联系在一起的,要在每台主机上安装相应的组件。
(4)专用带内虚拟化引擎。这种方式通过位于主机与物理存储之间的专用平台的整合管理、存储分配和安全功能来提供虚拟化的存储池空间。虚拟化引擎可以支持各种流行的开放系统的服务器,而且不需要在主机上附加软件;它还可以方便地组合进大量的组件和功能:从存储池到硬件地址严格对应映像的、需要交换机和存储设备硬件支持的、简单交换到可选择的支持嵌入式交换功能的应用软件程序包。一般认为带内引擎会降低数据流量,所以虚拟化平台的失败会降低可用性和存在单点失败。但是智能化的引擎可以使用在局域网和广域网已经证明了的网络技术,提供交换路径和多点冗余来避免单点失败,而且可以利用内置在磁盘阵列内中的Cache,提供相应的读写Cache 算法来提高物理磁盘的性能。
(5)存储域服务器。该方式是将一个商业服务器平台专用于磁盘存储池到主机的虚拟化和分配。在专用服务器平台的本地操作系统上构建一个网络存储控制层实现SAN 虚拟化,虚拟化的功能由软件实现。这使它可方便地利用很多操作系统的网络功能、卷管理功能、设备互操作特性和安全特性,就像网络域服务器给网络性能带来显著的提高,存储域服务器也能为SAN 的存储虚拟化带来一样的好处。一些存储域服务器被设计成可在SAN 中互相协调合作,在维护一个巨大的存储池的中央管理功能的同时分担负载和管理工作。因此可根据需要优化存储域服务器的数量和硬件性能。
存储域服务器可以通过一些方法增加I / O 性能,比如增加独立于主机和存储设备的Cache、对带内性能和负载监控、快照和远程镜像服务。随着这些功能的增加,可以不需要考虑SAN 物理设备供应商的因素而很容易地在SAN 的整个存储池上构建与网络无关、与服务器无关的支持、灾难恢复系统和决策支持系统。存储域服务器与专用虚拟化引擎有些相似,很多专用虚拟化引擎就是有相应软硬件插件的简单的存储域服务器,虽然失去一些存储域服务器的性能,但是可以即插即用并且提供必要的虚拟化功能。表1 列出了以上五种虚拟化方式的各种特性的比较。
表1 各种虚拟化方式特性比较
5 一种以网络为中心的SAN存储虚拟化的实现
在USN(统一存储网)项目中,为了实现SAN 和NAS的结合,我们设计了一种以网络为中心的SAN 存储虚拟化的实现方案。图1 为该方案的结构示意图。
图1 SAN 存储虚拟化的结构示意图
这种方案在SAN 互连这一级增加一台元数据服务器专用于提供存储虚拟化。使用非对称结构、数据和命令使用不同的通路,应用服务器的I / O 命令先通过专用的命令通路传送至专用的控制服务器,获得元数据和数据视图后,再通过数据通路得到所需要的数据。在专用的元数据服务器中存放整个虚拟存储池的全局数据视图,处理元数据的访问。应用服务器和元数据服务器既可以通过SAN 以带内方式连接,也可以通过带外方式连接,如以太网。虚拟化软件模块一部分位于元数据服务器,另一部分位于应用服务器。位于应用服务器的虚拟化软件模块称为虚拟代理,它的作用是I / O 重定向。当应用服务器所需要的数据不在本地的数据视图中时,虚拟代理将把I / O 命令发往元数据服务器,后者则把所需的数据视图和元数据返回给应用服务器。这种结构的实现比较复杂,但是因为它具有存储性能和可扩展性方面的优势,因而成为我们虚拟化SAN 的首选。
为了能够实现USN 中NAS 设备与SAN 设备的结合,我们使用两台专用服务器,一台用于块级的卷管理,另一台专用于文件服务。
6 小结
随着存储虚拟化技术和存储管理软件的高速发展,存储子系统将升格为网络应用的核心,服务器将很快降格为应用器具(Appliance),网络计算的系统核心将围绕网络存储展开。同时,存储管理在存储网络中所占的成本越来越高,已经成为困扰IT 管理人员的最大问题。存储虚拟化软件可以应用于各类SAN 系统中,使用户可以在系统中采用单一的控制平台;采用图形化界面管理方式,可以自动识别新装入的存储设备,并自动使其可用;可以按照用户需求进行基于策略和基于OoS 的管理,同时减少了系统中数据的暴露几率,增加了系统的安全性。因此,随着存储网络的发展,存储虚拟化技术具有广阔的应用前景。
核心关注:拓步ERP系统平台是覆盖了众多的业务领域、行业应用,蕴涵了丰富的ERP管理思想,集成了ERP软件业务管理理念,功能涉及供应链、成本、制造、CRM、HR等众多业务领域的管理,全面涵盖了企业关注ERP管理系统的核心领域,是众多中小企业信息化建设首选的ERP管理软件信赖品牌。
转载请注明出处:拓步ERP资讯网http://www.toberp.com/