前言:随着存储的需求呈螺旋式向上增长,公司内的存储服务器和阵列都无一例外地随之成倍增长,存储设备多种多样,存储网络系统与环境也越来越庞大与复杂。那么,如何简化存储设备的安装和配置?如何有效地管理和利用数目众多的异构性存储设备?如何充分地利用众多存储资源而提高利用率?如何使得存储资源的分配更加合理化?如何满足不可预见的存储资源需求……
对于这种存储管理困境的一种解决办法便是应用存储虚拟化技术。存储虚拟化可以使管理程序员将不同的存储作为单个集合的资源来进行识别、配置和管理。存储虚拟化是存储整合的一个重要组成部分,它能减少管理问题,而且能够提高存储利用率,这样可以降低新增存储的费用。
关键词:存储虚拟化技术, 存储管理
一、概念:什么是存储虚拟化
所谓存储虚拟化是将实际的物理存储实体与存储的逻辑表示分离开来,应用服务器只与分配给它们的逻辑卷(或称虚卷)打交道,而不用关心其数据是在哪个物理存储实体上。在网络存储系统中,虚拟化存储就是要解决管理人员所面临的一系列复杂问题。
SNIA(存储网络工业协会)对存储虚拟化是这样定义的:通过将一个(或多个)目标(Target)服务或功能与其它附加的功能集成,统一提供有用的全面功能服务。典型的虚拟化包括如下一些情况:屏蔽系统的复杂性,增加或集成新的功能,仿真、整合或分解现有的服务功能等。虚拟化是作用在一个或者多个实体上的,而这些实体则是用来提供存储资源或服务的。
事实上,存储虚拟化分布于存储网络中的各个地方。基于主机的虚拟化软件提供独立于存储网络的互连能力和存储资源,但必须一个服务器范围内进行管理;基于存储设备的虚拟化能够利用厂家存储的特定功能和特点,但缺乏异构存储环境的互操作能力;采用应用形式或居留于交换机中的基于存储网络的虚拟化提供虚拟功能的集中,但为了防止出现元件失效需要采用冗余来提供高可用性。
1
、存储虚拟化技术的原理
虚拟存储实际上是一种逻辑存储方式,它可以智能地、有效地管理存储数据的形式。它克服了物理存储的局限,因为它可以把物理设备变成完全不同的逻辑镜像;这样既充分利用了物理设备的优势,如高性能、高可用,又打破了物理设备本身不可克服的局限性。
从专业的角度来看,虚拟存储是介于物理存储设备和用户之间的一个中间层。这个中间层屏蔽了具体物理存储设备(磁盘、磁带)的物理特性,呈现给用户的是逻辑设备。用户对逻辑设备的管理和使用是经过虚拟存储层映射,来对具体物理设备进行管理和使用的。
从用户的角度来看,用户所看到的是存储空间不是具体的物理存储设备,用户所管理的存储空间也不是具体的物理存储设备。用户可随意使用存储空间而不用关注物理存储硬件(磁盘、磁带),即不必关心底层物理设备的容量、类型和特性等,而只需要把注意力集中在其存储容量及安全模式的需求上。
2
、存储虚拟化技术的重要性
毫无疑问,虚拟化已经改变了数据中心中心的面貌。虚拟化意味着更少的硬件,更低的成本和更高的IT效率,而且虚拟化这项技术和它的优点开始渗透到数据中心的其他领域。我们已经听到和看到许多服务器虚拟化,同时存储虚拟化正在成为数据中心的主流。
数据增长的管理是所有大小规模的公司都要面临的挑战,但是对于中小型企业来说,数据增长管理这个问题尤其严重。中小型企业所面临的数据增长和与数据增长相关的问题的水平和大型企业类似,但是中小企业的IT预算和人力资源要少得多。存储虚拟化可以帮助这些公司降低单位存储容量成本,而且可以简化目前正在消耗他们有限IT资源的许多数据管理任务。
存储虚拟化为成本敏感的中小企业提供了一种方法来合并资源,创建利用效率更高的环境,从而最终减少IT成本。一旦虚拟化的合并的存储环境准备就绪,IT管理人员可以在大幅减少的成本的基础上提供一系列差异化的存储服务,包括数据保护服务,比如针对灾难恢复的备份和复制。
二、存储虚拟化的特点
存储虚拟化技术具备的七大特点:
1
、存储管理的自动化与智能化
在虚拟存储环境下,所有的存储资源在逻辑上被映射为一个整体,对系统来说是单一视图的透明存储,而单个存储设备的容量、性能等物理特性却被屏蔽掉了。无论后台的物理存储是什么设备,服务器及其应用系统看到的都是系统管理员非常熟悉的存储设备的逻辑映像。系统管理员不必关心自己的后台存储,只要专注于管理存储空间本身,所有的存储管理操作,如系统升级、改变RAID级别、初始化逻辑卷、建立和分配虚拟磁盘、存储空间扩容等比从前的任何存储技术都更容易,存储管理变得非常轻松。
通过实现存储虚拟化,可以统一管理所有的存储设备,大大降低系统存储管理的复杂性,减少管理人力投入,提高管理效率。
2
、提高存储效率
提高存储效率主要表现在释放被束缚的容量、整体使用率达到更高的水平。存储虚拟化技术解决了这种存储空间使用上的浪费问题,它把信息系统中各个分散的存储空间整合起来,形成一个连续编址的逻辑存储空间,突破了单个物理磁盘的容量限制,几乎可以100%地使用磁盘容量,而且由于存储池扩展时能自动重新分配数据和利用高效的快照技术降低容量需求,从而极大地提高了系统存储资源的利用率。
3
、降低成本,增加投资回报
由于历史的原因,许多信息系统不得不面对各种各样的异构环境,包括不同操作平台的服务器和不同厂商不同型号的存储设备。存储虚拟化技术兼容各种存储协议和技术,如SCSI、FC SAN、IP SAN等。采用存储虚拟化技术,可以支持物理磁盘空间动态扩展,这样现有的设备不必抛弃,可以融入系统中,保障了已有投资,从而降低了TCO(Total Cost of Ownership,总拥有成本),实现了存储容量的动态扩展,增加了ROI(Return on Investment,投资回报)。
4
、避免设备品牌限制
对于存储设备单一的部门,所有主机系统均连接到唯一的存储设备中存取数据。由于部分厂商的技术屏蔽性较强,其存储设备和其它品牌的设备存在互不兼容的问题,因而未来新增存储设备容易受到品牌限制。设备供应商一家独大和采用封闭性技术的情形下,容易滋生采购成本和售后服务费用居高不下的问题,甚至会导致售后服务质量下降的现象出现。
采用存储虚拟化技术,能够兼容不同品牌的存储设备,未来新增的存储设备不再受到品牌限制,从而打破厂商设备和技术锁定,降低采购成本和服务费用,保证售后服务质量。
5
、满足高级数据管理需求
随着政府行业信息化的发展,对数据的可用性、稳定性等都提出了更高的要求。中高端的存储设备一般均具备高级数据管理功能,但需花费高额费用才可使用。尤其当存在多台存储设备时,每台设备的数据管理功能均须单独购买,费用成本更为巨大。存储虚拟化技术却能够很好的解决这个问题。存储虚拟化引擎具备了丰富的数据管理功能,如复制、容灾、快照等,可以直接使用,满足信息系统各种需求,而无需花费高额费用来使用多个存储设备本身的功能,从而打破厂商存储系统的封闭给数据管理带来的壁垒,大幅降低采购成本。
应用存储虚拟化后,未来增加存储设备无需再额外购买数据管理功能,只需要考虑容量、性能和可靠性,连接上存储系统中即可使用,同样可以分享存储虚拟化引擎的高级数据管理功能,简单、快捷、方便。
6
、保障系统持续运行
信息系统数据存放在存储设备上,实时进行读写访问。如存储设备本身或连接链路出现故障,均会导致系统停机和服务中断。部署存储虚拟化后,通过虚拟化引擎来管理多台存储设备,而对于主机系统而言物理的存储设备是透明的。因而,当任何一台存储设备或连接链路发生故障时,对系统不会产生任何影响,保证系统7×24小时持续运行。
虚拟化引擎本身也支持HA高可用技术,可采用双引擎运行的方式,即时虚拟化引擎出现故障也不会产生任何影响。同时利用虚拟化引擎的高级数据管理功能,可以满足即时快照、异地备份、远程容灾等需求,全面保护信息系统数据安全,保障系统运行的持续性。
7
、实现数据共享和整合
对部分政府部门而言,要求跨设备、跨地域进行数据交换、共享和整合,而传统的存储技术把数据资源局限于单个存储设备内或局域网内,无法满足全面的信息资源共享和整合的要求。存储虚拟化技术屏蔽了存储设备的物理特性,使得数据资源突破了限制,可以跨设备、跨地域甚至跨网络进行传播和共享。根据预先设置的规则和权限,数据可以在不同部门间自由的流动,方便实现数据的整合和交换。
三、存储虚拟化的两种结构模型
1
、对称式虚拟存储技术
对称结构(Symmetric)虚拟存储,又称为带内(In-Band)虚拟化存储,它是在数据通路中插入虚拟存储层,即在主机服务器节点和存储设备之间插入运行有虚拟化管理软件的虚拟化控制器。虚拟化管理软件对存储设备和服务器主机进行配置和管理,存储数据和控制信息使用同一条通路。
虚拟化存储控制器位于主机与存储设备之间,在二者数据交换过程中起核心作用。由虚拟化存储控制器内嵌的存储管理系统将存储池中的物理硬盘虚拟为逻辑存储单元(LUN),并进行端口映射(指定某一个LUN能被哪些端口所见),主机将各自可见的存储单元映射为操作系统可识别的盘符。当主机向存储设备写入数据时,用户只需要将数据写入位置指定为自己映射的盘符(LUN),数据经过虚拟化存储控制器的高速并行端口,由存储管理系统自动完成目标位置由LUN到实际物理硬盘的转换。在此过程中主机见到的只是虚拟逻辑单元,而不关心每个LUN的具体物理组织结构。
在对称式虚拟存储中,所有的数据流都将经过虚拟化存储控制器,因此可以在虚拟化存储控制器上采用各种技术提高数据传输的速度。如采用大容量高速缓存,对写入数据进行缓存,对读出数据进行预取,合并小块命令减少磁盘寻道时间等等技术。
对称式虚拟存储内嵌在数据通路上实现,因此可以在数据通路的各种层次上实现。根据虚拟化层在存储网络体系结构中的实现位置,对称式虚拟化存储可以分为三种:基于主机的虚拟化、基于存储设备的虚拟化和基于网络的虚拟化,这三种虚拟化的实现各有优缺点。
2
、非对称式虚拟存储技术
非对称结构(Asymmetric)虚拟存储,又称带外(out-of-band)虚拟存储,其方法是:将装有虚拟化存储软件的主机或控制器独立地接入存储网络,对网络进行管理,存储数据和控制命令分别走两个不同通路。应用服务器节点的I/O请求先通过控制通路访问专用的元数据服务器或控制器,获得元数据和数据视图后再直接通过数据通路获得需要的数据。
在非对称式虚拟存储中,每一台主机和元数据服务器(虚拟化存储控制器)均连接到磁盘阵列,其中主机的数据路径通过存储网络直接到达磁盘阵列;虚拟化存储控制器对存储网络上连接的磁盘阵列进行虚拟化操作,将各存储阵列中的LUN虚拟为逻辑卷,并为存储网络上的每一台主机指定对每一个逻辑卷的访问权限(可写、可读、禁止访问)。当主机要访问某个逻辑卷时,首先要访问虚拟化存储控制器,读取逻辑卷信息和访问权限,然后再通过存储网络访问实际的存储设备中的数据。在此过程中,主机只会识别到逻辑卷,而不会直接识别到物理硬盘。
非对称存储技术通过把数据和控制信息路径分隔开来,不会在原有的数据通路上增加多余设备,因此不会影响数据的读写速度,同时使得管理变得简单,对应用和操作系统都是透明的,可以提供并发访问的串行化,是目前存储行业中功能丰富且完善的SAN虚拟存储的实施技术。
3
、两种结构的比较
对称虚拟存储结构的控制流和数据流都要经过虚拟化服务器的处理,由于所有数据都流经虚拟存储的控制交换设备,导致命令的读写延迟大大增加,性能损失较大。而且,控制虚拟存储控制设备很容易成为系统的I/O瓶颈;如使用多个设备,则设备间的管理和通信也会比较复杂。而且,因为一个设备仅控制与它所连接的存储系统,采用带内虚拟化无法跨设备虚拟化。因此对称虚拟存储结构容易造成网络拥塞而形成系统瓶颈,降低系统性能。另外,这种结构的虚拟存储系统容易出现服务器到存储设备的单点故障。因此对称虚拟存储结构在实际使用中往往要做冗余配置。但是,对称虚拟存储结构可方便采用各种优化技术(如大容量高速缓存、数据分布、命令合并、命令分级处理等等)来提高访问速度、消除热点数据分布、增加系统稳定性、延长磁盘使用寿命等,同时对称虚拟存储提供对前端主机完全透明的服务,对异构平台具有良好的适应能力。
而非对称式虚拟存储结构在异构环境下需要为不同主机实现不同的代理,增加了系统的复杂性和用户投资。但在非对称性虚拟存储结构中,存储数据在专用的数据通道上传输,因此减少了网络延迟,增加了带宽的可升级性,从而提高了系统性,另外,其虚拟化的开销较小,扩展性强等。同时这种结构还避免了系统单点故障和瓶颈。
四、存储虚拟化技术在不同层次的实现
1
、基于主机的虚拟化存储
基于主机(或服务器)的虚拟化,也称基于系统卷管理器的虚拟化,其实现一般是通过逻辑卷管理(Volume Manager)。逻辑卷管理为从物理存储映射到逻辑上的卷提供了一个虚拟层。卷管理在系统和应用级上实现多机间的共享存储、存储资源管理、数据复制和数据迁移、远程备份和灾难恢复等任务。
目前主流操作系统都有自己的卷管理器,如单机版的虚拟化管理软件有Linux平台下的LVM、LVM2、EVMS,以及支持HP-UX Solaris平台的Veritas Volume Manager (VxVM)和支持FreeBSD平台的Vinum。有些平台还拥有支持集群的卷管理器,如Linux平台下的CLVM(Cluster LVM),Cluster EVMS和SUN的SVM等, 它们采用的是对称结构的构架,机群中的任何一个节点都可以进行存储资源的虚拟化管理操作。
基于主机的虚拟化存储不需要额外的特殊硬件,虚拟化层以软件模块的形式嵌入到应用服务器的操作系统中,将虚拟化层作为扩展驱动模块,为连接到存储网络上的各种存储设备如磁盘、磁盘阵列等提供必须的控制功能,主机的操作系统在运行应用程序的时候就好像与一个单一的存储设备直接通信一样。
既然虚拟化软件运行在服务器上,它就必然要占用服务器的CPU、内存等资源,给服务器带来额外开销。而且基于主机的虚拟化存储必然和服务器的硬件平台和操作系统紧密相关,这使得基于虚拟化软件的移植性比较差,难于应用在异构服务器环境上。
由于基于主机的虚拟化是在操作系统级别上完成虚拟化工作,因而不需要任何硬件支持,也不影响现有存储系统的基本架构,该方法最容易实现,成本最低。因此一般来说,卷管理器级别的虚拟化具有容易实现,开销低,性能好等特点,并且也给用户提供了一定的便利。
目前已经有成熟的基于主机的虚拟化软件产品,这些软件一般提供了便于操作的图形化管理界面,可以方便地用于存储虚拟化管理。从这个意义上看,基于服务器的存储虚拟化是一种性价比较高的方法,但是这种级别的虚拟化方案往往具有扩展性差,不支持异构平台等特点。对于支持集群的虚拟化方案来说,为了保证元数据的一致性和完整性,各主机间往往需要频繁通信以及采用锁机制,导致性能下降,可扩展性也较差。而且,由于其往往采用对称结构,使其很难支持异构平台,例如CLVM只能支持特定版本的Linux平台。
2
、基于存储设备的虚拟化存储
基于存储设备的虚拟化,也称为基于存储控制器的虚拟化。它是在存储设备的适配器、控制器上实现虚拟化功能。目前很多存储设备(如磁盘阵列等)内部都有功能较强的处理器,并带有专门的嵌入式系统,可以在存储子系统内部进行存储虚拟化的工作,对外提供的磁盘已经是虚拟化过的磁盘,常见的如支持RAID的磁盘阵列等。这类存储子系统与前端主机基本无关,对系统性能的影响很小,容易管理,同时它对用户或管理人员都是透明的。
由于受特定厂商的限制,客户的选择权往往受到一定的局限。正是由于这个致命的缺陷,使得基于存储控制器的虚拟化方案往往不被认为是完整的虚拟化技术实现。
基于存储设备的存储虚拟化方法依赖于提供相关功能的存储模块。如果没有第三方的虚拟软件,基于存储设备的虚拟化经常只能提供一种不完全的存储虚拟化解决方案。对于包含多厂商存储设备的SAN存储系统,这种方法的运行效果不是很好,并且这种设备的规模往往是有限的且无法进行级联,这使得具有特定配置的虚拟存储设备的扩展性往往较差。
这种方法直接在存储设备上实现虚拟化,实现相对比较简单,对用户或管理人员都是透明,管理方便。
3
、基于网络的虚拟化存储
基于网络的存储虚拟化方法是在主机和存储之间的网络设备上实现存储虚拟化功能。这是目前主流的虚拟存储方式,它可以实现网络设备间的在线虚拟存储,具有多方面的优点。此种方法通过网络互连设备,在服务器与服务器间、服务器与客户机间自由交换并存储数据;并且通过服务器、虚拟存储设备、网络互连设备以及客户机,形成一个庞大的虚拟存储网络。
按照其实现位置的不同,又可以具体分为以下几种方式:
(1).基于交换机的虚拟化
基于交换机的虚拟化是将虚拟化层直接嵌入交换机上。通过改造或添加交换机的中间件,使其同时具备交换功能和虚拟化功能。
基于交换机的虚拟化将存储网络中的交换功能和虚拟化功能放在同一个设备上实现,这能够改善系统性能,同时,这种结构无需在应用服务器上运行虚拟化软件,减少了应用服务器的负载。另外,这种结构使得系统的可扩展性大大提高了。
(2).基于路由器的虚拟化
基于路由器的虚拟化是将虚拟层放在存储网络的路由器上。路由器具备交换机的交换功能,同时它具有不同协议的转换功能,使得不同协议的存储网络能够连接到一起。基于路由器的虚拟化通过改造存储路由器的中间件,使其具备虚拟化功能。
与基于交换机的虚拟化类似,这种结构的虚拟化能够有效提高系统性能,减少应用服务器的负载,可扩展性更好。在存储网络环境中,采用多个路由器,分布式的存放元数据和全局逻辑视图,还解决了单点失效和瓶颈问题。
(3).基于元数据服务器的虚拟化
基于元数据服务器的虚拟化方法是一种带外的虚拟化方法。这种虚拟化方法在存储网络中连入一台专用的服务器用于实现虚拟化功能。这台专用的服务器称为元数据服务器或者元数据控制器。在这种虚拟化方法中,应用服务器上驻留一个小的虚拟化代理软件模块用于维护本地的数据视图和I/O重定向。元数据服务器则负责管理存储网络环境中的虚拟化数据管理工作。元数据服务器维护着整个存储网络的虚拟化视图,当应用服务器所需数据不在本地视图中时,它将通过代理软件模块向元数据服务器发出请求,元数据服务器把相关的数据视图和元数据返回给应用服务器,应用服务器再根据这些元数据去取得相应的数据。
目前基于存储区域网络的虚拟化根据其数据通路和管理通路的耦合情况可分为带内虚拟化技术(对称结构)和带外虚拟化(非对称结构)。
4
、小结
从实现的层次来看,基于主机的虚拟化、基于存储设备的虚拟化和基于网络的存储虚拟化这三种层次的虚拟存储适用于不同的环境。
目前已经有多个成熟的虚拟化存储系统在市场上销售,而各大网络存储系统的提供商均有其专门的虚拟化系统软件。例如EMC公司、IBM公司、INTEL公司等,虚拟化系统从单个服务器上的虚拟化软件到专门用于海量网络存储系统的虚拟化管理软件都有实现。他们的功能大多相当,都具备了上述的一些功能。
五、存储虚拟化技术的未来发展
目前,虚拟化存储系统的发展朝着功能增强,操作简单化和接口规范化的方向发展。今后的虚拟化系统将能够管理兼容多种规格的存储产品,并且融合存储系统的容灾功能与数据快速恢复功能。同时,虚拟化系统不仅在存储空间上满足顾客的需求,而且在存储质量上满足用户的不同种类需求,例如针对某些重要的部门和重要的数据提供吞吐性能更好的虚拟逻辑卷,而对于一些不是经常使用的数据提供普通性能的逻辑卷进行存储,使得存储资源不仅在空间上,而且在存储质量上更加合理分配,使得现有的存储系统能够发挥最大的效益。
1
、变化中的存储虚拟化技术
从存储虚拟化格局改变的角度来看,存储虚拟化将走服务器虚拟化所走过的路。几年前,服务器虚拟化的焦点还在虚拟机管理器。现在,虚拟机管理器已经变成商品。所有的虚拟化公司都在关注管理性,以便为虚拟化客户提供成本节约和灵敏性。在我看来,几年后,存储虚拟化也将接着服务器虚拟化进入成熟期。
尽管服务器虚拟化已经成为主流,但是存储虚拟化离主流还有一定距离。现在的主要焦点是证明存储虚拟化技术是有效的。几年后,管理性将更加重要:如何充分利用现有的硬件,如何在不同主机上动态迁移VM(虚拟机)等。
存储虚拟化的第一阶段是要能够整合和处理来自不同厂商的存储硬件的I/O命令。Chang表示,在存储虚拟化的下一阶段,下列这些问题将变得更加重要:向外扩展存储,分层和虚拟化存储,针对云数据中心的虚拟化存储,以及负载均衡。
在虚拟化环境中使用向上扩展存储只会增加容量和导致不必要的资源浪费;只有向外扩展架构可以提高存储性能和获取来自虚拟化的好处。虚拟化存储可以提供不同层次的存储管理服务,包括SSD、SAS、SATA甚至VTL(虚拟磁带库)。
至于云服务要求,虚拟化的存储可以提供不同的好处,包括可扩展性、无宕机数据管理以及更低的成本。他表示另一个关键问题将是当多个存储控制器引入一个虚拟化存储池的时候如何平衡控制器工作负荷和主机带宽。
2
、存储虚拟化技术和趋势
目前与存储虚拟化相关的最热门的技术和趋势是什么?重复数据删除和云存储是两个值得关注的对象。由于数据继续快速增长,许多企业不断寻找可以进一步降低存储成本的方式。存储虚拟化是这些技术的关键因素之一,因为它可以排除这些技术应用的主要障碍。存储虚拟化可以自动化哪些数据适合哪些存储类型的判别流程,而且可以在不干扰用户和应用程序的情况下根据预先定义的政策迁移数据。
一些值得关注的新技术潮流包括异质虚拟存储环境下同质数据保护服务,改善SAN(存储局域网)性能的SSD应用,根据QoS(服务质量)要求所进行的自动化的在存储架构上进行的数据迁移。存储虚拟化可以在IT界中广泛应用为一种最佳实践。虚拟化SAN将成为存储环境部署和管理事实上的标准。
中小企业预计可以看到更多的异质存储虚拟化解决方案,以及对新协议的支持,比如光纤通道以太网--在IP上提供高性能服务。
许多人将关注虚拟化在哪里部署:基于主机,基于网络还是基于存储。这些选择都有各自的优点和缺点。许多人强调的是让存储虚拟化合并异质存储系统,将这些系统合并到一个公共的存储池并采用共同的管理和保护。存储虚拟化的目标是让用户有向不同厂商选择存储阵列的能力,向用户提供各种企业级功能,比如动态配置和动态数据迁移等。
转自志文工作室,计算机学习技术博客