虚拟化概述:模式的观点 |
发布时间: 2012/9/21 18:49:23 |
虚拟化是如何工作的? 虚拟化可以通过很多方法来证实。它不是一个单独的实体,而是一组模式和技术的集合,这些技术提供了支持资源的逻辑表示所需的功能,以及通过标准接口将其呈现给这些资源的消费者所需的功能。这些模式本身都是前面介绍过的各种不同虚拟形式的重复出现。 下面是在实现虚拟化时常常使用的一些模式和技术: 1. 单一资源的多个逻辑表示 这种模式是虚拟化最广泛使用的模式之一。它只包含一个物理资源,但是它向消费者呈现的逻辑表示却仿佛它包含多个资源一样。消费者与这个虚拟资源进行交互时就仿佛自己是惟一的消费者一样,而不会考虑他正在与其他消费者一起共享资源。虚拟机就是这种模式的一个例子。硬件物理分区和逻辑分区(如 IBM System p、System z 和 System i 服务器)或软件产品(如 VMware、Microsoft Virtual Server 和 Xen)都实现了服务器的虚拟化。数据库视图的使用将数据与消费者隔离开来,这样可以基于消费者的角色和身份验证对资源进行访问,即使在所有消费者同时访问相同的数据库时,也不会出现任何问题。另外,网格使用虚拟化技术来管理网络上的数据,并在逻辑上将其作为一个系统呈现给消费者。 多个资源的单一逻辑表示 这种模式包含了多个组合资源,以便将这些资源表示为提供单一接口的单个逻辑表示形式。在利用多个功能不太强大的资源来创建功能强大且丰富的虚拟资源时,这是一种非常有用的模式。存储虚拟化就是这种模式的一个例子。IBM 的 SAN Volume Controller 可以将几个存储卷组合在一起,将它们呈现为一个大型的单一存储设备。消费者并不知道自己的数据被分散到了多个磁盘上。在服务器方面,集群技术可以提供这样的幻想:消费者只与一个系统(头节点)进行交互,而集群事实上可以包含很多的处理器或节点。实际上,这就是从 IT 技术设施的角度看到的网格可以实现的功能。多种资源集都是通过一个简化的用户界面呈现出来,例如用户使用的门户,或应用程序使用的标准接口。从计算角度来看,网格在接受任务请求,对任务负载进行调度和管理,并在提供资源和返回结果的同时提供任务负载虚拟化的能力。 在多个资源之间提供单一逻辑表示 这种模式包括一个以多个可用资源之一的形式表示的虚拟资源。虚拟资源会根据指定的条件来选择一个物理资源实现,例如资源的利用、响应时间或临近程度。尽管这种模式与上一种模式非常类似,但是它们之间有一些细微的差别。首先,每个物理资源都是一个完整的副本,它们不会在逻辑表示层上聚集在一起。其次,每个物理资源都可以提供逻辑表示所需要的所有功能,而不是像前一种模式那样只能提供部分功能(例如,前一种模式是文件的一部分,这种模式是文件的一个完全副本)。这种模式的一个常见例子是使用应用程序容器来均衡任务负载。在将请求或事务提交给应用程序或服务时,消费者并不关心到底是几个容器中执行的哪一个应用程序的副本为请求或事务提供服务。消费者只是希望请求或事务得到处理。一个具体的例子是 IBM 的 WebSphere? Application Server Extended Deployment.另外一个例子是文件虚拟化,其中为了满足冗余或性能的需要,可能为数据维护提供多个副本。当消费者访问文件时,文件系统(如通用并行文件系统 (GPFS))就会定位这些文件众多副本中的一个,但是消费者并不知道正在使用的文件副本的具体位置。 单个资源的单一逻辑表示 这是用来表示单个资源的一种简单模式,就仿佛它是别的什么资源一样。启用 Web 的企业后台应用程序就是一个常见的例子。在这种情况下,我们不是修改后台的应用程序,而是创建一个前端来表示 Web 界面,它会映射到应用程序接口中。这种模式允许通过对后台应用程序进行最少的修改(或根本不加任何修改)来重用一些基本的功能。也可以根据无法修改的组件,使用相同的模式构建服务。 复合或分层虚拟化 这种模式是刚才介绍的一种或多种模式的组合,它使用物理资源来提供丰富的功能集。信息虚拟化是这种模式一个很好的例子。它提供了底层所需要的功能,这些功能用于管理对资源、包含有关如何处理和使用信息的元数据以及对信息进行处理的操作的全局命名和引用。IBM WebSphere Information Server 就是这样一个例子,它提供了一些利用到异构资源和统一元数据的广泛连接来集成、丰富和传递信息所需的功能,有些体系架构或框架,例如 Open Grid Services Architecture(OGSA)或者 Grid Computing Components,实际上都是虚拟化的组合或虚拟化的不同层次。这个框架中的每一层都是更低一层的抽象,它为上层提供了一个定义好的接口。随着我们在这个架构中的层次(或框架堆栈)的上升,底层提供的资源都组合成了更复杂的功能。例如,任务负载虚拟化和信息虚拟化就为已经虚拟化过的基础设施(系统、存储和网络)提供了更高级的虚拟化。 关于虚拟化管理 对于任何虚拟化环境来说,一个非常重要的方面是减少动态的和复杂的 IT 基础设施的管理和维护需求。另外,通过软件和工具实现的模式和技术都支持这些管理任务。这些模式和技术的组合可以实现以下功能: " 为 IT 基础设施中所有资源的管理访问提供单一且安全的接口 " 允许管理员对所有资源进行诊断 " 对所有资源进行配置和修改管理 " 发现并维护可用资源目录 " 监视资源并记录它们平时的健康状况 " 当某个条件达到已建立的上限值时,触发器就会执行相应操作;此时执行的操作可能包括通知管理员手工作出响应,也可能会根据正确的条件自动进行响应 " 根据资源的使用情况、可用性和服务级别要求提供资源或收回资源;资源的提供可以手工、半自动或根据建立好的策略自动完成 " 获得并维护资源的使用和检测信息,并提供适当的报告,例如对资源消耗进行记录 " 提供补充最终用户或应用程序安全性的安全机制 " 为满足最终用户和应用程序 SLA 而记录所有资源的性能信息 结束语 " 虚拟化是资源的逻辑表示,它不会受物理限制的约束。虚拟化的主要目的是简化对资源的访问和对这些资源的管理。消费者通过受虚拟资源支持的标准接口来对资源进行访问,这消除了从这些资源的物理实现对它们进行的访问。这些交互是通过一些虚拟化的基本模式来阐述的。虚拟化允许 IT 基础设施管理员动态管理资源的配置,同时还可以减少任何变化对最终用户和应用程序的影响。 本文出自:亿恩科技【www.enkj.com】 |