Chinaunix首页 | 论坛 | 博客
  • 博客访问: 11594041
  • 博文数量: 8065
  • 博客积分: 10002
  • 博客等级: 中将
  • 技术积分: 96708
  • 用 户 组: 普通用户
  • 注册时间: 2008-04-16 17:06
文章分类

全部博文(8065)

文章存档

2008年(8065)

分类: 服务器与存储

2008-07-08 16:31:52

提要早在二三十年前,为了将内存空间或者一串直连的物理组织成一个逻辑实体,以便于和访问,一些主机(MainFrame)操作系统(例如IBM的MVS)中就有了关于存储的原型。而多年来Unix系统中常用的逻辑卷管理(Logical Volume Manager),同样也是典型的存储虚拟化工具,只是长期没有引起业界的重视而已。尽管“存储虚拟化”伴随存储区域(SAN)的出现而流行起来,在实质上,它却仍旧不是一个崭新的概念,而是典型的 “老歌新唱”。

  随着存储技术的发展,人们对于SAN的逐渐认可,成为当前存储虚拟化热潮的主要推动力。通过网络存储技术,SAN正急剧地改变着传统的存储模式,与此同时,它也相应地带来了新的挑战,这些挑战包括了如下的几点:

  1.大量的异构和存储系统

  2.多重冗余的光纤机连结

  3.相互交织在一起的应用系统

 

  以上情形都需要全面的存储管理。而在另一方面,IT领域应用的飞速发展,也对存储提出了新的要求,譬如:

  1.某些公司爆炸式的数据增长导致对存储容量的需求增长极快,管理这些存储环境的成本远远高于硬件的采购成本。在这个角度上,数据管理人员需要更好的工具来管理增长的数据量。

  2.一些独立的研究报告披露,磁盘存储系统的平均利用率仅有35%到50%,某些情况下,磁带系统的利用率就更低。由于很多存储设备是被固定连结在某个主机服务器上,它的多余空间无法被其它主机利用,并且,也会形成很多存储系统的孤岛。

  3.在电子商务盛行的今天,对业务的持续性有着更高的要求。由于存储扩容或者改变配置而造成的计划内或计划外的停机,将越来越令人无法接受。

  于是,人们发现,存储虚拟化技术正是解决这些问题的理想。因而,便成为了各个厂家和用户的新宠。

  

虚拟化平台分述

  存储的虚拟化可以在三个不同的层面上实现,包括了基于专用卷管理软件在主机服务器上实现,或者利用阵列控制器的固件(Firmware)在磁盘阵列上实现;再或者是利用专用的虚拟化引擎在存储网络上实现。而具体使用哪种方法来做,应根据实际需求来决定。

  基于主机的虚拟化

  如果仅仅需要单个主机服务器(或单个集群)访问多个磁盘阵列,就可以使用基于主机的存储虚拟化技术。此时虚拟化的工作通过特定的软件在主机服务器上完成,而经过虚拟化的存储空间可以跨越多个异构的磁盘阵列。

  这种类型的虚拟化通常由主机操作系统下的逻辑卷管理软件(logical volume manager)来实现,在主机系统和Unix服务器上已经有多年的广泛应用,目前在Windows操作系统上也提供类似的卷管理器。

  基于存储设备的虚拟化

  当有多个主机服务器需要访问同一个磁盘阵列的时候,可以采用基于阵列控制器的虚拟化技术。此时虚拟化的工作是在阵列控制器上完成, 将一个阵列上的存储容量划分为多个存储空间(LUN),供不同的主机系统访问。

  智能的阵列控制器提供数据块级别的整合,同时还提供一些附加的功能,例如:LUN Masking、缓存,即时快照、数据复制等。配合使用不同的存储系统,这种基于存储设备的虚拟化模式可以实现性能的优化。

  基于存储网络的虚拟化

  以上都是一对多的访问模式,而在现实的应用环境中,很多情况下是需要多对多的访问模式的,也就是说,多个主机服务器需要访问多个异构存储设备,目的是为了优化资源利用率—多个用户使用相同的资源,或者多个资源对多个进程提供服务,等等。在这种情形下,存储虚拟化的的工作就一定要在存储网络上完成了。这也是构造公共存储服务设施的前提条件。

  

如何进行存储网络虚拟化

  在存储网络层面进行虚拟化的方法已经成为虚拟化的明确方向,这种虚拟化工作需要使用相应的专用虚拟化引擎来实现。目前市场上的SAN appliances 专用存储服务器,或是建立在某种专用的平台上,或是在标准的Windows、 Unix和 Linux 服务器上配合相应的虚拟化软件而构成。在这种模式下,因为所有的数据访问操作都与SAN Appliance相关,所以必须避免它的单点故障。在实际应用当中,SAN Appliance 通常都是冗余配置的。

  SAN appliances 可以两种形式来控制存储的虚拟化:直接位于主机服务器和存储设备的数据通道中间 (In-Band);或者位于数据通道之外(Out-of-Band),仅仅向主机服务器传送一些控制信息(Metadata),来完成物理设备和逻辑卷之间的地址映射。

  In-Band 虚拟化引擎

  In-Band虚拟化引擎位于主机和存储系统的数据通道中间,控制信息和用户数据都会通过它 ,而它会将逻辑卷分配给主机,就像一个标准的存储子系统一样。

  因为所有的数据访问都会通过这个引擎,它就可以实现很高的性。就象一个存储系统的,只有它允许的访问才能够通行,否则就会被拒绝。

 

  这种方式的虚拟化,不需要在主机上安装特别的虚拟化驱动程序,比Out-of-Band的方式易于实施。并且支持广泛的异构存储系统,具有很好的互连性。.

  Out-of-Band虚拟化

  In-Band 虚拟化引擎是一个数据访问必须经过的设备,通常利用Caching技术来优化性能。

 

  Out-of -Band 虚拟化引擎物理上不位于主机和存储系统的数据通道中间,而是通过其它的网络连接方式与主机系统通讯。于是,在每个主机服务器上,都需要安装客户端软件,或者特殊的主机适配卡驱动,这些客户端软件接收从虚拟化引擎 传来的逻辑卷结构和属性信息,以及逻辑卷和物理块之间的映射信息,在SAN上实现地址寻址。存储的配置和控制信息有虚拟化引擎负责提供。

  这种方式的实施难度大于In-Band模式,因为每个主机都必须有一个客户端程序。也许就是这个原因,目前大多数的SAN Appliance 都是采用In-Band的方式。

  

方兴未艾的虚拟存储

  遵循新的虚拟存储概念,IBM推出了虚拟化引擎——TotalStorage SAN Volume Controller 和 SANIntegration Server。惠普虚拟产品主要包括VA、EVA系列。美国飞康公司推出了 IPStor 智能网络存储软件,能够针对异构的混合存储平台成功进行虚拟化的的产品。

  我们相信,全面的存储虚拟化技术——包括设备虚拟化和服务整合,将是继存储区域网络(SAN) 后的又一次革命。我们也期待着更多、更好的存储虚拟化产品问世,改善我们的存储世界。

阅读(1027) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~