微软虚拟化解决方案概述.doc_第1页
微软虚拟化解决方案概述.doc_第2页
微软虚拟化解决方案概述.doc_第3页
微软虚拟化解决方案概述.doc_第4页
微软虚拟化解决方案概述.doc_第5页
已阅读5页,还剩20页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

Windows虚拟化: 技术概览 David Chappell, Chappell & Associates 2007年7月 版权所有 Microsoft Corporation 2007.保留所有权利.目录 虚拟化技术3硬件虚拟化4表现层虚拟化6应用程序虚拟化9其他虚拟化技术10管理虚拟化世界11硬件虚拟化13Virtual Server 2005 R214Virtual PC 200716展望: Windows Server 虚拟化16表现层虚拟化19Windows Server 2003 终端服务19展望: Windows Server 2008 终端服务21应用程序虚拟化: SoftGrid 应用程序虚拟化23System Center Operations Manager 200727System Center Configuration Manager 200729System Center Virtual Machine Manager 200731了解虚拟化毫无疑问,虚拟化已经成为如今信息技术中的热门,这是预料之中的事情。它所涉及的的大量技术,正显著的改变着IT 世界。本文集中介绍了微软公司在虚拟化技术的三个方面:硬件虚拟化、表现虚拟化和应用程序虚拟化。由于必须对每个技术、虚拟或其他进行有效地管理,本文还为一个虚拟世界探讨了 Microsoft 的管理产品。目标是阐明这些产品的功能、描述他们如何来做的,并展示他们协同工作的方式。虚拟化技术要了解最新的虚拟化技术,首先要考虑没有这些技术的系统。 举例来说在独立桌面计算机上运行的Microsoft Word程序。如 图 1 所示。 图 1: 无虚拟化的系统应用程序可直接安装并运行在操作系统上,而操作系统运行在计算机的硬件上。通过连接到这台机器的显示器,应用程序的用户界面直接显示出来。以前使用过 Windows的任何人,都很熟悉这个简单的方案。但这不是唯一的选择。 实际上,这不是最好的选择。操作系统与硬件,应用程序与操作系统,用户界面与本地计算机,与其将这些组件锁定在一起,倒不如降低这些部分彼此之间的直接依赖性。这样做,就意味着对这个环境实行虚拟化,我们可以通过各种不同的方法来完成。当物理硬件以硬件虚拟化的方式运行时,操作系统可以从中分离出来,例如,应用程序虚拟化允许操作系统和使用它的应用程序之间进行一个类似的分离。同样,表现层虚拟化允许将应用程序的用户界面从运行应用程序的物理计算机中分离。所有这些虚拟化方法可在不太严格的组件之间建立链接。因此硬件和软件的使用方法可以更为多样,并且更改起来也更容易。假定大多数 IT 专业人员的大部分时间都用于已安装的部署而不是新的部署,那么使他们的世界变得更具延展性,这不失为一件好事。每种虚拟化类型的都给它们所针对的问题带来了收益。为了理解这些,就需要我们对技术的本身有更多了解,所以在下面的章节中,我们将对每个类型进行更为细致的介绍。硬件虚拟化对今天大多数 IT 人士来说,“ 虚拟化 ”这个词使人们提出了一个构想:在一台物理计算机上运行多个操作系统。硬件虚拟化尽管不是虚拟化唯一重要的类型,但毫无疑问它是现在最成熟的技术。硬件虚拟化的核心思想很简单:使用软件创建一个可以模拟物理机的虚拟机 (VM)。通过一次提供多个虚拟机,这种方法允许在单个物理计算机上同时运行多个操作系统。如图 2 所示。 图 2: 硬件虚拟化举例当在客户端计算机上使用时,此方法通常称为桌面虚拟化;服务器系统上使用它时,被称为服务器虚拟化。 桌面虚拟化在多种情况下都是有用的。 最常见的一种情况就是处理应用程序和桌面操作系统之间不兼容。 例如,假设运行 Windows Vista 的用户,需要使用一个应用程序,而这个应用程序只能在带有Service Pack 2 的Windows XP 上运行。那么,我们只要创建一个运行此旧版操作系统的VM,然后在该 VM 中安装该应用程序,就可以解决此问题。桌面虚拟化是很有用的,但在硬件虚拟化方面,真正令人兴奋的重点却是服务器。 这种情况的主要原因是经济:如果每个服务器都用于特定的工作负荷,那么这些服务器的工作效率是很低的,为了减少在这些服务器上的巨大花费,服务器虚拟化允许将这些工作负荷完全合并到较少的使用率更高的计算机。 这意味着管理这些计算机的人员更少,存放它们的空间更小,运行它们所需的功率更小,所有这些都将会节省大量资金。服务器虚拟化也会使失败系统的恢复更容易。由于VM以文件的形式存储,因此恢复一个失败的系统,可以像将其文件复制到新计算机上一样简单。 因为虚拟机可以通过运行它们的物理计算机获得不同的硬件配置,这种方法还允许将一个失败的系统还原到任何可用计算机上。而无需使用物理特性相同的系统。硬件虚拟化可以通过各种方式完成,微软公司提供了三种不同的技术: Virtual Server 2005 R2: 通过在Windows上附加软件的方法实现硬件虚拟化。 顾名思义,虚拟服务器提供服务器虚拟化,以可缩放的多用户方案为目标。 Virtual PC 2007:和虚拟服务器一样,这项技术也是通过在Windows上附加软件的方法实现硬件虚拟化。 Virtual PC 提供了桌面虚拟化,但它的目的是在单用户计算机上支持多个操作系统。 Windows Server 虚拟化:和虚拟服务器一样,Windows Server 虚拟化提供服务器虚拟化。不同的是,这个方法不依赖于加载项,而将硬件虚拟化的支持直接置于 Windows 本身内。 Windows Server 虚拟化是 Windows Server 2008 的一部分,并且计划在新的操作系统发布后不久一起提供。所有这些技术在不同情况都很有用,本概述会在后面对所有技术进行更详细的描述。表现层虚拟化人们使用的应用程序,大多是为了在同一台计算机上,运行并显示他们的用户界面。Microsoft Office 是一个较为常见的示例,当然还有很多其他例子。 很多情况下,使用这种方式没有什么不良影响。 但在管理着许多台式机的企业,他们必须确保这些台式计算机上的任何敏感数据的安全。所以不得不花费大量的时间和金钱,来管理保留在这些计算机上的应用程序。那么, 让应用程序在一个远程服务器上执行,并在本地显示其用户界面,将会有助于解决这些问题。这其实就是表现层虚拟化。 如图 3所示。 图 3: 表现层虚拟化举例如图所示,这种方法允许创建虚拟会话,每个会话都可与远程桌面系统相互作用。 在那些会话中执行的应用程序,将利用表现层虚拟化,远程映射他们的用户界面。 每个会话只能运行单个应用程序,那么它就可以向它的用户展现多个应用程序的完整桌面。 无论在哪一种情况下,多个虚拟会话可以使用相同的、已安装的应用程序副本。在这样的共享服务器上运行应用程序,会得到几个优点,包括:l 数据可以是集中的、安全的存储于中央服务器,而不是多个桌面计算机上。这就提高了安全性,因为信息没有分布在多个不同的系统。l 可以极大地减少应用程序的管理成本。无须每个单独的桌面上更新每个应用程序,例如,只有在服务器上的单个共享副本需要进行更改。 表现层虚拟化还允许使用更简单的桌面操作系统映像或专门的桌面设备,通常称为瘦客户端,这两种方法都可以降低管理成本。l 企业无需再担心应用程序和桌面操作系统之间的不兼容问题。如前所述,当桌面虚拟化也可以解决此问题时,在中心服务器上运行该应用程序就很简单了。表现层虚拟化可以使应用程序访问运行任何操作系统的客户端。l 在某些情况下,表现层虚拟化可以提高性能。 例如,一个客户端/服务器应用程序,需要从中央数据库中提取大量数据到客户端。 如果客户端和服务器之间的网络链接速度较慢或阻塞,此应用程序将也会很慢。 一种提高其性能的方法是,在高带宽连接到数据库的计算机上运行整个应用程序,包括客户端和服务器, 然后使用表现层虚拟化,为用户提供应用程序。微软公司 的表现层虚拟化技术是 Windows 终端服务。 在Windows NT 4中首次发布,现在是Windows Server 2003 的一个标准组成部分。 终端服务允许普通的 Windows 桌面应用程序在共享的服务器上运行,同时还可将其用户界面显示在远程系统上,如台式机或瘦客户端。如果不要求通过虚拟化窗口持续查看远程界面,那么这种技术为表现层虚拟化的广泛使用,提供了一种非常好的途径。应用程序虚拟化虚拟化提供了一些计算资源的抽象视图。这不同于在物理计算机上直接运行应用程序。例如,硬件虚拟化允许一个操作系统在一台及其的软件抽象层上运行。 同样,表现层虚拟化允许远程设备提取应用程序的用户界面。 这样,虚拟化就使组件之间的联系不再紧密。可以从更多抽象中获益的另一点是,应用程序和运行它的操作系统之间的连接。 每个应用程序所能提供的一系列服务,都要依赖于其操作系统,包括内存分配、 设备驱动程序和更多的内容。 如前所述,我们可以通过硬件虚拟化或者表现层虚拟化,来解决应用程序与其操作系统之间的不兼容。但在操作系统的同一实例、不同应用程序之间的不兼容问题,又该如何解决呢?应用程序通常与系统上的其他应用程序共享各种事情,这些共享可能会产生问题。 例如,应用程序可能会需要特定版本的动态链接库 (DLL) 才能运行,而该系统中的另一个应用程序可能需要同一DLL 的不同版本。 安装这两个应用程序就会导致通常所说的DLL 灾难,其中的一个覆盖了其他所需版本的位置。 要避免这种情况,企业通常会在安装新的应用程序之前进行全面的测试,这可以是一种解决办法,但耗时且昂贵。应用程序虚拟化解决方案通过创建所有共享资源的应用程序特定的副本解决了这一问题,如图 4 所示。一个应用程序可能与其系统上的其他应用程序共享的有问题的操作:注册表项、 特定的 DLL以及更多, 可与其一同打包,创建虚拟应用程序。 当部署一个虚拟应用程序时,它会使用自己这些共享资源的副本。 图 4: 应用程序虚拟化举例应用程序虚拟化极大地简化了部署。 由于应用程序不再与DLL 版本或其环境内的其他共享资源竞争,因此在它们部署之前,不需要测试新的应用程序是否与现有的应用程序冲突。 如图 4 所建议,这些虚拟应用程序可与普通的应用程序一同运行,而不用对每个应用程序都进行虚拟化。SoftGrid 应用程序虚拟化是 微软公司在此领域的应用技术。 一个 SoftGrid 管理员可以创建虚拟应用程序,然后根据需要部署这些应用程序。 通过提供系统关键部分的抽象视图,应用程序虚拟化减少了部署和更新应用程序所需的费用和时间。其他虚拟化技术本文主要介绍了三种类型的虚拟化:硬件、 表现层和应用程序。但是,类似抽象观念在其它环境中也会使用,这其中最重要的是网络虚拟化和存储虚拟化。术语网络虚拟化用来描述大量不同的操作。最常见的可能是虚拟专用网络 (VPN) 的构想。 VPN 抽取网络连接的本地标记,只要一个远程用户与一个企业的内部网络有物理连接,就可以对其进行访问。 VPN 是一种广泛实施的做法,并且可以使用各种技术。 在 微软产品系列中,目前主要的 VPN 技术是 Internet Security and Acceleration (ISA) Server 2006 和 Internet 应用程序网关 2007。术语存储虚拟化的使用也很广泛。从普通意义上讲,它意味着为物理存储设备提供逻辑的、 抽象的视图,因此除了本地连接的磁盘驱动器,其余的存储介质都应该被考虑进来。 一个简单的例子就是 Windows的文件夹重定向,这使得文件夹中的信息可存储于任何可访问的网络驱动器中。更有效的 (和更复杂的) 方法也适合此类型,包括存储区域网络 (SAN) 以及其他。 但存储虚拟化完成后,它的优点与每个其他类型的虚拟化类似:更多的分离以及组件之间更少的直接联系。管理虚拟化环境虚拟化技术具有许多优点。 同时企业的计算环境还能获取更多的虚拟化和更多的分离。分离增加,复杂性也会增加,这使IT 工作人员更难控制他们的IT环境。结论非常清楚: 如果不能很好地管理一个虚拟化的环境,它的优点就会很难体现。试想几台现有服务器的工作负荷,移动到一台运行虚拟计算机的服务器上时,会发生什么?现在对企业来说,这台物理计算机与它所取代的所有计算机同样重要。如果它失效了,那么就会发生极大的破坏。这表明:一个没能很好管理的虚拟化环境是不可靠的,而且比起没有虚拟化的环境可能来的更昂贵。为了解决这一问题,微软公司为系统管理提供了一系列工具。在很大程度上,虚拟化环境管理的特点与物理环境管理相同,因此可以使用相同的工具。这是一件好事,因为它使得管理环境的人可以使用相同的技能和知识。通过System Center Operations Manager 2007、 System Center Configuration Manager 2007和System Center Virtual Machine Manager 2007,微软公司提供了解决这两种情况的产品。系统管理中的一个基本的问题是在分布式环境中监控和管理硬件和软件。System Center Operations Manager 2007 是微软公司解决这一问题的旗舰产品。Operations Manager允许操作人员同时监控物理计算机和在其上运行的软件, 这样就可以知道在他们的环境中发生的事。它还允许这些用户进行适当的响应、运行任务以及采取其他操作来解决出现的问题。由于物理和虚拟环境之间在很大程度上具有相似性,所以Operations Manager 也可用于监控和管理虚拟机以及虚拟化环境的其他方面。对于管理分布式环境人员来说,另一个不可避免的问题是安装软件和管理该软件的配置方式。虽然可以手动执行这些任务,但在大多数环境中,自动解决方案是更好的方法。为了实现这个方案,微软公司提供了System Center Configuration Manager 2007。 像 Operations Manager一样,Configuration Manager用处理物理环境相同的方式,处理虚拟环境。两种情况也可以使用相同的工具。Operations Manager和Configuration Manager都适用于具有较多专用 IT 人员的大型企业。那么中型公司呢?当然也可以同时使用这两个产品,但微软公司还为不太复杂的环境提供了一个更简单的工具。这一工具就是System Center Essentials 2007,它可同时实现 Operations Manager 和Configuration Manager的最重要功能。与它的“老大哥”一样,它认为虚拟化技术非常象物理系统,因此它也可以用来管理这两种系统。在物理和虚拟这两个领域中工作的工具极具吸引力。 但需要考虑的问题是,一个环境中可能安装了几十或甚至几百个虚拟机。 如何创建这些机器?如何撤消?以及其他特定的 VM管理功能如何执行? 解决这些问题需要一种特别着重于管理硬件虚拟化的工具。 对于运行在 Virtual Server 2005 上的虚拟机,管理它们的工具是System Center Virtual Machine Manager 2007。 除其他功能外,此工有助于操作人员选择虚拟化的工作负荷,创建将运行这些工作负荷的虚拟机,并将应用程序传到新的环境。了解虚拟化的大体情况需要查看如何管理虚拟化的环境,同时还需要了解虚拟化技术本身。为了更好地阐述这一技术,下一章将进一步叙述Microsoft 虚拟化提供的每个方面。微软虚拟化技术每项虚拟化技术都是以某种方式抽取计算资源,以使其更为有用。 无论被抽取的是一台计算机、 应用程序的用户界面还是运行此应用程序的环境,虚拟化都可以归结于这种核心思想。在硬件虚拟化获得了更多关注的今天,所有这些技术都很重要。因此,我们把它作为技术章节的开始部分。硬件虚拟化计算中的大多数趋势依赖于一个基本规律:处理能力的指数增长(摩尔定律)。有一点能够让您感受到这个增长趋势,那就是在未来两年内,处理器的能力将再增长一倍。 按照这一增长速率,让计算机保持高效运作会越来越困难。同时,在一个操作系统系统上运行的不同应用程序可带来不同的工作负荷,这两者相结合就会造成大量服务器的利用率低下。这些服务器都要花费金钱来购买、存放和操作,因此增加服务器利用率的技术将非常有吸引力。硬件虚拟化正属于这种技术,并且毫无疑问是非常具有吸引力的。 虽然硬件虚拟化是一个己提出40年的构想,但它现在才成为主流计算环境的主要部分。在不远的将来,希望看到大多数的应用程序被部署在虚拟化的服务器上,而不是专用的物理机器。这个特性所带来的收益无法忽视。为了让 Windows 客户获得这些收益,如今微软公司提供了两种硬件虚拟化技术:对于服务器的Virtual Server 2005 R 2和对于台式计算机的Virtual PC 2007。在 Windows Server 2008 发布后, 微软公司还将为该系统提供Windows 服务器虚拟化。以下各章提供了每个技术的简要描述。Virtual Server 2005 R2 在一台物理计算机上支持多个虚拟机的一种方法是在操作系统上运行虚拟化软件。开发这种软件具有很大的挑战性,特别是对于不支持内置硬件虚拟化的旧处理器。 然而实事证明,这的确是一个十分成功而且可行的解决方案。成功的案例是 Virtual Server 2005 R 2,一种免费的用于Windows Server 2003的技术。 图 5 说明了虚拟服务器如何在单个物理计算机上支持多个虚拟机。图 5: Virtual Server 2005 R2举例如图所示,虚拟服务器在Windows Server 2003 上运行。它提供了可支持其自身来宾操作系统的虚拟机。 每个VM与其它VM都完全隔离,每个VM上的工作负荷就像在它自己的物理服务器上运行一样。Virtual Server提供了基于浏览器的工具来管理它的虚拟机。Virtual Server可以承载多个不同的 x 86 操作系统。受支持的来宾系统的列表包括 Windows Server 2003、 Windows Server 2000、 Windows NT 4.0 和其他版本的Windows,还包括SUSE Linux 和 Red Hat Linux。任何正在运行的来宾操作系统,都需要存储。 为了解决这个问题,微软定义了一种虚拟硬盘 (VHD) 格式。VHD 实际上只是一个文件,但对于虚拟计算机,它表现为附加的磁盘驱动器。来宾操作系统及其应用程序依赖于一个或多个 VHD,以用于存储。事实上,所有微软硬件虚拟化技术都使用相同的 VHD 格式,这样就便于它们之间信息的传递。为了鼓励行业采用这一技术,微软公司 已在其Open Specification Promise (OSP)中包含了VHD 规范,这样其他人可以自由地使用这种格式。Virtual PC 2007今天硬件虚拟化的大多数重要商业用途,是将多个物理服务器的工作负荷整合到一台计算机上。这项技术也可用于在桌面计算机上运行来宾操作系统。Virtual PC 2007正是为这种情况设计的。Virtual PC 在结构体系上与Virtual Server一样。 二者都可免费下载,都可在另一个操作系统上大量运行,并且都可以承载大量的 x 86 操作系统,还可使用相同的 VHD 格式存储。但这两个产品还是有着重要差别。 因为它适用于服务器,显然Virtual Server的伸缩性比Virtual PC更强,并且支持更广泛的存储选择。 Virtual Server还包括面向 IT 专业人员的管理工具,而Virtual PC 则需要由用户管理。 虽然 Virtual PC 会提供Virtual Server中缺少的一些功能,如声卡支持,但公平来讲,它的还是为桌面用户的硬件虚拟化提供了一种更简单的方法。展望: Windows服务器虚拟化今天Virtual Server 2005 R 2 己在许多企业中成功应用。同时由于大量的技术体验产生了更好的方法。 Windows 服务器虚拟化,这一内置于Windows Server 2008 中的硬件虚拟化技术,就是很好范例。 如图 6 所示,此新方法在某些重要的方面不同于虚拟服务器。 图 6: Windows服务器虚拟化举例除了与虚拟服务器一样,可在Windows上大量添加虚拟化代码,Windows服务器虚拟化还可支持Windows 本身的虚拟机部分。 此新方法提供了一个可直接在硬件上运行的管理程序,在管理程序之上可以创建一个或多个分区。 其中一个父级分区,必须运行 Windows Server 2008,而子分区(实际上只是虚拟计算机)可以运行任何其他受支持的操作系统,包括各种版本的Windows和Linux,如 SUSE Linux。 要创建和管理新的分区,管理员可以使用在父级分区中运行的 MMC 管理单元。此方法从根本上不同于 微软较早的硬件虚拟化技术。一个重要的区别是,通过 Windows Hypervisior提供底层支持,从而让虚拟化工作在一种更有效的模式,提供更好的性能。 Windows 服务器虚拟化还以其他方式改进了虚拟服务器,其中包括: 由于 Windows服务器虚拟化是一种纯64 位技术,它比32 位虚拟服务器支持更大的物理内存空间。当多个虚拟机在单个物理服务器上运行时,这是很有用的。 Windows服务器虚拟化还允许虚拟机本身拥有更多的内存,每个虚拟机的上限大于 32 GB。 虽然虚拟服务器仅支持32位虚拟机,但Windows 服务器虚拟化对32 位和 64 位VM均可支持。这两种类型的VM可在Windows Server 2008机器上同时运行。 每个虚拟机除了与虚拟服务器一样可支持单个 CPU,Windows服务器虚拟化允许将多个 CPU 分配给单个 虚拟机。Windows Server 2008 有一个安装选项叫做Server Core,其中仅安装了系统功能的有限子集。 这即降低了该系统的管理工作,又减少了可能的安全威胁,在服务器上部署 Windows服务器虚拟化时推荐使用这一选项。 使用此选项的系统没有图形用户界面支持,自然它们也不能在本地运行 Windows 服务器虚拟化管理管理单元。但是,可以通过远程使用虚拟机管理器管理虚拟机。此外,还有可能实在传统的非虚拟配置中部署 Windows Server 2008。如果发生这种情况,没有安装 Windows Hypervisor,操作系统就可以直接在硬件上运行。Windows 服务器虚拟化预计在Windows Server 2008 发布后180 天内发布。 这种技术可用于此新操作系统的所有三个 64 位版本:标准版、企业版和数据中心版。 因为 Windows服务器虚拟化与Virtual Server 2005 R 2使用相同的 VHD 格式,所以从早期技术中迁移工作负荷,相对而言较为简单。今天硬件虚拟化是一种主流技术。微软公司 的决定使得它成为 Windows 的一个基本部分,更凸显其重要性。 今后,或者说在计算历史中相当长的一段时间,这个构想将逐步趋于成熟。表现层虚拟化Windows 终端服务已经应用了多年,却一直没有被看作是一种虚拟化技术。 但从此方面看它还是有用的,因为该角度有助于阐明发生的实际情况:被提取的资源,只能提供其用户所需。 就像硬件虚拟化提供了一个它所需要的操作系统真正的硬件的假象表现层虚拟化提供了用户的真正所需: 一个用户界面。 本节提供 了Windows 终端服务的简要说明,关于此技术2003 和 2008 的版本。Windows Server 2003 终端服务软件今天通常与用户通过屏幕、 键盘和鼠标进行交互。 为了完成此任务,应用程序可以给本地用户提供一个图形用户界面。 在多数情况下,如果用户访问远程应用程序,可以像访问本地应用程序一样,将会是比较好的解决方案。 实现应用程序的用户界面远程访问,表现层虚拟是执行此操作的有效方法。 如图 7 所示, Windows Server 2003 终端服务可以完成这个任务。 图 7: Windows Server 2003 终端服务举例您无需改变什么,即可使用标准 的Windows 应用程序和终端服务一起运行。而所有应用程序的用户界面则跨越网络,通过远程桌面连接完整的展示出来。这样,运行于客户端计算机上的软件通过远程桌面协议 (RDP)与终端服务通信,只需要发送按键、 鼠标移动和屏幕数据。这样最低限度的通信方法,允许 RDP 在低带宽连接上工作,如拨号线路。 另外,RDP 也可加密通信,从而允许更安全的访问应用程序。运行在 Windows XP 和 Windows Vista上的远程桌面连接,以及Windows的早期版本都可提供终端服务客户端。其他类型的客户端同样可以使用终端服务,包括 Pocket PC 和 Apple Macintosh。 为了便于浏览器访问,支持 RDP 的客户端可以作为 ActiveX 控件发挥作用,这允许基于Web访问应用程序。表现层虚拟化可将大部分应用程序的工作从用户桌面移动到共享服务器。根据用户的需求,他们可能需要处理大量的资源,尤其是在较大的环境中。为了完成这个任务,可以创建终端服务的服务器场,从而在多台计算机之间实现负载均衡。终端服务还可保持用户连接的路径,当用户连断开接或连接意外丢失时,用户仍然可以重新连接到同一系统。展望: Windows Server 2008 终端服务Windows Server 2008 包括一个新版Windows终端服务,具有 Windows 服务器虚拟化和更多技术。 此新版本添加了几个有用的功能。 图 8 显示了其中的重要部分,一种称为Terminal Servers (TS) 远程应用程序的功能。图 8: Windows Server 2008 终端服务中的TSRA举例如同在 Windows Server 2003中一样,Windows Server 2008 终端服务可以通过一个完整的桌面创建一个虚拟会话。 这在 2003 版中是唯一选择,但新的 TS RemoteApp 功能还允许一个2008 的用户创建虚拟会话,这个虚拟会话只包含一个远程应用程序,如图所示。 如果一个 Windows 用户通过一个完整的桌面创建虚拟会话,该桌面及其所有应用程序都可以显示在其本地桌面的窗口上。当然,通过 TS RemoteApp,可以直接在本地桌面上显示应用程序的用户界面,就如同该应用程序是在本地运行一样。事实上,通过 TS RemoteApp 访问的应用程序,就如同本地应用程序一样,出现在任务栏中,而且它也可以像这样启动: 从 开始 菜单、通过快捷方式,或以其他某些方式。Windows 终端服务的下一版本,还将为通过Web使用应用程序提供更好的支持。除了要求完整的远程桌面连接客户端,例如,一项新的终端服务 Web Access 功能允许从 Web 浏览器访问单个应用程序 (通过 TS RemoteApp) 和完整的台式机桌面。这个新版本还包括一个在HTTPS封装 RDP流量的终端服务网关。 这为企业防火墙以外的用户无需使用VPN,就可以更为安全的访问其内部应用程序。应用程序虚拟化: SoftGrid 应用程序虚拟化硬件虚拟化和表现层虚拟化是很多人所熟悉的构想。应用程序虚拟化虽然是一个较新的概念,但它并不难理解。 如前所述,这种技术的主要目标是避免在同一台计算机上运行的不同应用程序之间的冲突。为此,特定应用程序所需要的共享资源副本包含在每个虚拟应用程序中。 图 9 说明了Microsofts SoftGrid 应用程序虚拟化的运作机制。图 9: SoftGrid 应用程序虚拟化和流举例虚拟应用程序都存储在中心计算机的 SoftGrid 服务器上。用户第一次启动虚拟应用程序时,此服务器通过一个称为流式的进程,将应用程序的代码发送到用户系统。然后虚拟应用程序开始执行,这个虚拟应用程序可以在同一台计算机上,与其他非虚拟应用程序同时运行。初始化下载完成后,应用程序存储在计算机本地 的SoftGrid 缓存中。以后再次使用该应用程序,将基于此缓存的代码,所以流仅在第一次访问应用程序时是必需。从用户的角度来看,虚拟应用程序与其他任何应用程序一样。可以从 Windows 开始菜单、桌面图标、或其他一些方法启动。应用程序在任务管理器中出现,并且可以在计算机上使用打印机、网络连接和其他资源。这样做很有意义,因为应用程序确实在本地计算机上运行。此外它所使用的所有资源都是虚拟应用程序本身的一部分,不会与此系统中的其它应用程序发生冲突。例如,如果该应用程序写入注册表项,那么这种变化实际上是更改了存储于虚拟应用程序中的注册表项,物理机器的注册表是不会受到影响的。为了完成这个工作,应用程序在通过 SoftGrid 服务器下载之前,必须调用序列化过程打包。 使用 SoftGrid 基于向导的排序器(Sequencer)工具,管理员可以为普通的应用程序,创建一个虚拟应用程序。排序器(Sequencer)不会修改应用程序的源代码,但是会查看应用程序会如何运行,以及它会使用什么共享配置信息。 随后,此应用程序连同它的配置信息一同被打包成 SoftGrid 格式。集中存储虚拟应用程序,然后根据需求下载到每个用户的系统中,这个机制让管理更加容易。但是,如果虚拟应用程序在启动前,需要用户等待整个虚拟应用程序完全下载,那么她第一次访问此应用程序可能会非常缓慢。 要避免此问题的发生,SoftGrid 的流式进程将只获取该应用程序运行所需的最少代码(通过这个方式,正好可以确定应用程序的哪一部分是序列化过程的一部分), 然后根据需要可以在后台下载应用程序的其余部分。因为在SoftGrid缓存中存储已下载的虚拟应用程序,它们可以多次执行而无需重复下载。 当用户启动一个缓存的虚拟应用程序时,SoftGrid 自动检查该应用程序与当前存储在中央 SoftGrid 服务器上的版本是否相同。 如果在服务器上有新的版本,那么该应用程序被更改的部分会被传输到用户的计算机上。 这样,存储于中央服务器上的虚拟化应用程序副本,就可以很方便的更新安全补丁和其它更新,同样也可以给所有缓存的应用程序副本自动分发补丁。SoftGrid 也可以在断开连接的情况下使用虚拟应用程序。 例如,客户端是在使用便携式计算机。 用户可以访问他需要的应用程序,然后把它们下载到 SoftGrid 缓存中。 完成后,便携式计算机就可以断开网络连接,正常使用了。 此时,虚拟应用程序将从该计算机的缓存中启动。不管它们复制到的系统,是桌面计算机还是便携式计算机,虚拟应用程序会得到一个许可证。 SoftGrid服务器会跟踪这些使用应用程序的计算机,并为它们提供一个许可证管理中心。 每个应用程序即将过期时,把应用程序下载到他的笔记本电脑上的用户,就需要连接到中央 SoftGrid 服务器,重新获取这些应用程序的许可证。另一个所面临的问题是, SoftGrid 的创建者需要确定哪些虚拟应用程序可以对每个用户可见。 要解决这个问题,可以将虚拟应用程序分配给属于特定 Active Directory 组的用户。例如,如果一个新的用户被添加到一个组,他可以从此域中的任何计算机访问他所需要的 SoftGrid 应用程序。在台式计算机和便携式计算机上使用虚拟应用程序的优点是显而易见的。但还有另一个不太明显的优点。 就像在单用户计算机上不同应用程序之间的冲突,使用Windows 终端服务的应用程序之间也会发生冲突。 例如,组织在同一个终端服务器上安装两个应用程序, 却需要同一个 DLL 的不同版本。 这种冲突会在用户的桌面上带来更多的问题,因为它会影响所有依赖此服务器的终端服务客户端。 如果这两个应用程序必须同时使用,通常的解决方案是在单独的终端服务器上部署它们。遇到这种情况时,可以使用应用程序虚拟化。 如果应用程序在加载到终端服务器之前进行虚拟化,就可以避免需要使用不同服务器的典型冲突。将虚拟应用程序运行在终端服务器上,远胜于创建单独的服务器,却又无法充分利用服务器。 通过应用程序虚拟化,组织就可以使用较少的服务器计算机,从而减少硬件和管理成本。实际上,相对于已经安装的应用程序,虚拟应用程序更像一个 Web页面。 虚拟应用程序可以像Web页面,按需从服务器上下载。在访问或者部署它们之前,无须为了潜在的冲突而进行测试。应用程序虚拟化的构想是比较抽象的:为应用程序的配置信息提供一个虚拟化视图。与其他虚拟化类型一样,应用程序虚拟化的优点在于分隔计算环境中的各个元素。管理虚拟化的Windows 环境在大多数 IT 组织中最大的开销是薪水。 如果虚拟化降低了其他成本,却导致了管理工作增加,那么它可能是一个净损失人的成本多于计算机。所以,有效地管理虚拟化技术非常重要。 此部分描述如何 使用Microsoft System Center 工具Operations Manager,Configuration Manager,Virtual Machine Manager管理虚拟化的 Windows 环境。System Center Operations Manager 2007除了很小的组织,用于监视和管理在分布式环境中的系统工具是一个很迫切的要求。 微软公司提供了面向 Windows 的环境的Operations Manager以解决此问题。 重点管理在台式计算机上的、 服务器和其他设备上的硬件和软件,并为系统管理提供了一个广泛的方法。计算环境包含许多不同的组件: 客户端和服务器计算机、 操作系统、 数据库、 邮件服务器和更多内容。 针对这些多样性,Operations Manager 的管理借助于各种管理包 (MP)。 每个 MP 附带知识库和有关如何管理某一特定组件。 例如,Microsoft 提供了用于管理 Windows、 SQL Server、 Exchange Server,和几乎所有其他企业产品的MP。 HP 和 Dell提供的每个 MP 都可以管理他们的服务器计算机,其他供应商也为他们的产品提供 MP。 通过安装适当的 MP,组织可以利用他们的创建者的知识,更有效的管理他们的环境。 使用虚拟化管理环境,如图 10 所示。图10: 虚拟化环境中的Operations Manager 如左边所示的系统,Operations Manager 可以管理虚拟机以及物理计算机。 事实上,产品在这两种情况下的工作方式相同。 Operations Manager依赖运行代理程序管理。例如,在上图,左侧系统需要两个代理: 一个用于物理计算机,一个用于虚拟服务器提供的VM。 从 Operations Manager 控制台运营的角度来看,它们看起来都像是普通的 Windows 计算机,都以相同的方式管理,无须部署不同的工具去分别管理物理和虚拟环境,所以对于这两个区域Operations Manager 使用相同的用户界面和相同的 MP。虽然可以通过相同的 MP管理物理和虚拟机,但是还会有一些特定 MP 用于管理虚拟化技术。例如,为虚拟服务器的MP,允许枚举一个特定物理计算机上正在运行的虚拟机、监视这些虚拟机和更多的状态。 同样 MP 为 Windows 终端服务允许跟踪性能和表现层虚拟化技术的可用性。 SoftGrid即将推出的 MP 将支持相似类型的管理操作。 通过将相同的技术应用于物理和虚拟环境,Operations Manager 提供了统一的方法来管理这些两个领域。System Center Configuration Manager 2007将正确的软件部署到正确的计算机上,然后始终保持软件运行,可能是最费力的任务。另外,维护软件资产的记录,也是另外一项挑战。为了解决这些难题,Microsoft 提供了Configuration ManagerSystem Center 系列的另一个成员。如同在物理环境中的挑战一样,一旦出现虚拟化,软件配置的管理可能会变得更具挑战性。创建更多的虚拟机,意味着更多的计算机必须更新其中的软件。在这种环境中,有效的配置管理变得更加重要。像 Operations Manager一样,Configuration Manager处理物理和虚拟世界的方式也是相同的。 Configuration Manager为这两种环境提供了相同的技术,并没有使用单独的工具来管理这些环境中的软件配置。 如图 11 所示。图 11:虚拟化环境中的 Configuration Manager 如该图中最左边的系统所示,Configuration Manager将一个 VM 等同物理计算机。 软件可以安装在这台机器,根据需要更新而且显示为资产清单维护的配置管理器的一部分。 同样,此工具适用像任何其他一个终端服务器上运行的应用程序。Configuration Manager也适用 SoftGrid,如最右侧的系统所示。 SoftGrid 为虚拟应用程序,但是,因为这两种技术之间的关系需要提供它自己的分发机制。 一种方法是使用Configuration Manager来部署 SoftGrid 虚拟应用程序。同往常一样,应用程序放在 SoftGrid 缓存,它依赖 SoftGrid 的 SMS 连接器。(Configuration Manager是 Systems Management Server 2003的新一代产品。) 连接器允许Configuration Manager可以访问存储在 SoftGrid 服务器上的虚拟应用程序然后与普通的应用程序一样将它们部署。 这种方法不允许进行流式处理,它允许使用Configuration Manager部署虚拟应用程序。另一种方法是使用 SoftGrid 的 SMS 连接器使用虚拟应用程序,同时仍然允许他们进行流式处理从 。SoftGrid 服务器中可见到Configuration Manager。 这种方法可以提供一个控制台,同时仍保留流式使用应用程序的所有优点。 连接器还使虚拟应用程序可以兼容Configuration Manager的资产跟踪功能。管理软件配置是每个组织中最重要的工作。随着虚拟化的浪潮继续向IT世界推动,管理虚拟化的软件会越来越多。 Configuration Manager的目标就是为解决物理和虚拟环境中的问题,提供一个共同的解决方案。System Center Virtual Machine Manager 2007管理一个虚拟化环境的要求,大多数与物理环境的相同。 Operations Manager和Configuration Manager这两个产品利用这一事实,使用相同的方式管理这两种环境。 但虚拟化也有一些它自己独特的管理挑战。比如,源于硬件的虚拟化和过多的虚拟机器,由于允许创建和使用更多的虚拟机,同时需要一种管理工具来管理它们的增长。Virtual Machine Manager是微软针对此需要所作出的举措。 顾名思义,该工具完全用于管理虚拟机。 在其第一个版本,Virtual Machine Manager仅是用来支持Virtual Server上的虚拟机。 Windows 服务器虚拟化发布之后,该工具的功能将会被扩展,以用于管理这项新技术创建的虚拟机。 图 12 提供Virtual Machine Manager的一个简单说明。 Figure 12: Virtual Machine Manager虽然Virtual Server和 Windows 服务器虚拟化同时提供工具来管理他们的虚拟机,但这些工具只在一台物理计算机上工作。 一旦组织的虚拟机分布在不同的物理计算机,一个集中式的控制台来管理它们很可能极具吸引力。 如图所示,Virtual Machine Manager提供此中央控制台,允许从单个点管理多个虚拟机。 管理员可以使用此控制台检查一个 VM 的状态,监控运行的虚拟机,将虚拟机从一台物理计算机移动到另一台物理计算机,以及执行其他管理任务。 控制台提供了一个图形界面,这个界面完全基于 Microsoft 的 PowerShell 脚本编写工具

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论