分类: 服务器与存储
2008-07-31 12:53:54
虚拟化存储发展路径图 基于网络的虚拟化示意图 IBM存储虚拟化解决方案图 虚拟存储技术概述 随着人们对数据存储的安全性、完整性、快速性的要求越来越高,存储系统已经成为了IT应用系统中除网络、软件、服务器之外重要的一环。不过随着存储系统越来越复杂,存储系统的管理也成为了企业IT部门中管理的难点。IT部门在不同时期购入的存储设备往往属于不同的厂商,就是同一厂商也可能属于不同的产品序列。在不同的产品之后其系统结构是完全不同的,IT部门要面对的是一个分割的存储系统。为了维持这样的系统稳定的运行,IT部门要对存储系统的利用率和性能瓶颈进行日常监视就成为繁重的任务。这样复杂繁琐管理机制的不仅不利于存储系统效率的提高,企业存储系统的安全稳定运行都成为了一个问题。 为了解决这样的问题,存储设备厂商提出了虚拟化存储的概念。最初虚拟存储的概念基本只局限于存储管理方面,然而随着企业存储系统的复杂化和厂商技术的进步,虚拟化存储扩展到了存储系统各个不同的方面。存储设备厂商也推出了各种各样不同的设备适应用户不同需求。 虚拟存储将底层存储设备进行了抽像化,将存储设备的硬件不同细节屏蔽起来,只向用户提供逻辑意义上的存储设备。这样用户可以对存储设备进行集中的管理,从而使得IT部门的日常管理工作简单化。在这里虚拟化存储承担用户和存储设备之间的接口,对下管理着不同接口不同结构的实际存储设备,对上提供用户接口和用户资源。 物理设备虚拟化成为逻辑设备的例子是很多的。比如我们在使用磁盘阵列的时候,我们可能需要将不同RAID等级的磁盘组来重新组合成不同的卷,而你发现如果这样做必须重新构建RAID,你必须现备份数据然后重构RAID再将数据恢复,这样的过程可能十分漫长以至于不能接受。然而再虚拟存储的帮助下,你可以随意更改卷的大小和组成卷的RAID磁盘组,甚至在不同的磁盘阵列之间建立卷而不必关心后台的存储设备具体细节。 虚拟存储的另外一层含义还有转换存储系统结构,目的是为了扩展当前设备和技术的应用范围。我们在这里举了一个更加容易理解的例子。原来的磁带机速度备份恢复相对较慢,如果使用了磁盘并虚拟成为磁带机就是虚拟磁带库产品。对于备份服务器来说,虚拟磁带机就像是一个纯粹的磁带机,只不过这个磁带机的容量不能无限扩展但是速度超快而且不用换带。反过来说,原来磁带只能进行顺序读写,而不能进行随机读写,但是虚拟化以后磁带也可以成为能够随机读写的块设备。 另外一个典型的例子就是卷管理软件。许多操作系统平台上都有一种甚至多种卷管理软件层,读者最常见Windows就提供动态磁盘功能,这就是一种虚拟化;与此类似还有Linux平台上的LVM,这些卷管理软件的功能就是模拟物理磁盘的结构,把多个磁盘组或者多个磁盘条带组织起来,虚拟成一组统一的数据块集,这样操作系统就可以统一而方便地使用所有的磁盘了。这类软件的工作机制和管理思想,是现今虚拟存储技术的一个重要组成部分。 虚拟存储的概念 虚拟存储的概念现在已经扩展的相当广泛,从原来的存储管理的方面扩展成为了提高系统性能、提高系统容量、转换存储系统结构等等应用。不同的厂家有着不同的表述形式,笔者在这里不敢说谁的最准确,只能在他们的定义里面找出共性,力图给读者一个解答。 虚拟存储目前有三个共同要素,即“abstracting 抽象”、“hiding or isolating,隐藏或隔离”、“simulate,模拟”。抽象就是提取各种存储技术和存储设备的共性,将多个资源抽象成为单一资源;隐藏就是将设备或服务等资源的无关特性细节屏蔽,从而隐藏资源的部分或全部特征。模拟就是将一种存储设备或逻辑设备虚拟成另外一种存储设备或者逻辑设备。 虚拟存储的三个问题 虚拟存储要实现的问题不外乎三个问题Who?Where?How? Who?就是问虚拟化的对象是什么,这个很好理解也容易回答。虚拟化存储的目标是实现具体物理存储设备和存储服务的抽象、隐藏和隔离,那么虚拟化的目标就很明确了,那就是所有的磁带、磁盘、存储网络、文件系统等等。虚拟化的对象可以是具体设备也可以是逻辑设备。从技术上说,不仅仅可以将物理设备虚拟成逻辑设备,也可以将逻辑设备虚拟成逻辑设备。比如现在可以将多个物理硬盘虚拟成一个卷,也可以将一个逻辑分区虚拟成一个物理硬盘。 Where?也就是问虚拟化实现的位置?虚拟化的过程一定是在主机和存储设备之间的完成的,那么就有三个位置:主机、存储网络和存储设备。这样我们就有了三种虚拟化的技术:基于主机的虚拟化、基于网络的虚拟化和基于存储设备的虚拟化。 基于主机的虚拟化基本上都是以软件方式实现的,这种实现方式不影响目前存储系统的结构也不需要购入新设备,实现成本最低。但是由于是基于软件方式,软件对平台的依赖性比较大,不同的平台要开发不同的版本,而且软件运行对主机的软硬件资源占用也是一个问题。 基于网络的虚拟化在开放性方面的优势是独特的,不同的主机、不同的存储设备只要通过虚拟化存储网络就可以进行虚拟化。网络端实施虚拟具有其合理性,因为它的实施既不是在服务器端,也不是在存储设备端,而是介于两个环境之间,可能是最“开放”的虚拟实施环境,最有可能支持任何服务器、任何操作系统、任何应用、任何存储设备。也许,在网络中实施虚拟存储最主要的原因是虚拟实施在所有数据传输的路径中。这类虚拟化的产品目前比较少,但是发展前景应该是最好的。 基于存储设备的虚拟化在效率方面是最好的,但是由于存储设备厂家实现的方法各不相同,而且厂家只对自家的产品提供支持;也就是说,不同厂家产品之间进行虚拟化的可能性基本很小。 现在我们来到最后一个问题,How?如何虚拟化可以分为带内和带外两类实现机制。这两类实现机制的区别就是在于实现虚拟的过程是否在数据读写的过程中同步进行。带内虚拟就是在数据读写的过程中在主机到存储设备之间实现虚拟化,而带外虚拟是在数据读写之前就做好虚拟化,不在主机和存储设备之间的数据存储的过程中实现虚拟化。 虚拟存储的发展 在虚拟存储提出来之后的几年之内,虚拟存储从原来的存储管理的分支迅速扩展,虚拟带库、虚拟磁盘管理等等新虚拟化存储产品层出不穷。展望未来,虚拟化存储一定会成为数据存储的一个主要发展方向。 |