虚拟化技术基础入门

andylance

贡献于2013-06-22

字数:0 关键词: 虚拟化

虚拟化技术基础入门 虚拟化技术基础入门 虚拟化是当今企业的一个热门话题。它被称为可以解决从服务器快速增长到 CPU 利用 不足的各种问题。虽然虚拟化技术的确带来很多益处,但也不是没有缺点。本指南简要介 绍虚拟化技术、怎么选择虚拟化方式、了解新兴虚拟化技术 VDI(桌面虚拟基础架构)、 如何管理虚拟机蔓延(VM sprawl)以及部署虚拟化时需要注意的问题。 虚拟化概述 虚拟化的许多技术细节都相似,但存在不同的方法解决与不同部署相关的问题。虚拟 化有哪三种架构?哪种虚拟化方法最好? ™ 虚拟化技术概述 选择虚拟化方式 虚拟化如今很流行,你可能也想把你所有的物理机进行虚拟化。考虑到可移植性、部 署和硬件利用等方面的好处,虚拟化的确是非常诱人的。不过,这并不意味着虚拟化是任 何服务器或应用的最好解决方案。 ™ 虚拟化方式及最佳应用的研究 ™ 哪些服务器和应用适合虚拟化? ™ 使用免费产品来实现低成本虚拟化 虚拟桌面基础架构(VDI) VDI,英文全称 Virtual Desktop Infrastructure,即虚拟桌面基础架构,正迅速成 为一个热门词语。在这一系列文章中,TechTarget 中国的特约独立技术分析师 Brian Madden 将探讨什么是虚拟桌面架构,人们为什么使用它以及各厂家在这个领域内正在做些 什么。 ™ 虚拟桌面基础架构(VDI)简介 ™ VDI 与基于服务器计算的桌面 ™ VDI 与传统本地桌面 ™ VDI 何时有用? ™ 什么技术让 VDI 成为可能? ™ 如何在实际中实施动态 VDI 桌面 TT 服务器技术专题之“虚拟化技术基础入门 ” Page 2 of 57 如何管理虚拟机 服务器蔓延(server sprawl)是企业考虑虚拟化时需关注的一个重要问题。在同样 的硬件上运行多台虚拟机可以节省资金和降低管理开销。因为虚拟机(VM)很容易建立、 复制和部署,最后服务器蔓延变成了虚拟机蔓延(VM sprawl)。 ™ 利用虚拟机库管理虚拟机蔓延 ™ 虚拟机的测试与负载分配 ™ 虚拟硬盘有哪些类型? 部署虚拟化的问题 这部分主要解决在部署虚拟化时要注意的一些问题。 ™ 如何规划服务器环境? ™ 虚拟化专家需要具备什么样的 IT 技能? ™ P2V 迁移如何使数据中心转移简易化 ™ 如何设计具有扩展性的虚拟化基础设施 ™ 如何建立虚拟服务级别协议 ™ 虚拟化安全利弊分析 TT 服务器技术专题之“虚拟化技术基础入门 ” Page 3 of 57 虚拟化技术概述 虚拟化是当今企业的一个热门话题。它被称为可以解决从服务器快速增长到 CPU 利用 不足的各种问题。虽然虚拟化技术的确带来很多益处,但也不是没有缺点。 随着新的厂商不断进入虚拟化技术领域,提供给客户的选择范围也较大。不过,选择 符合你需求的合适厂商并非易事。VMware 和其他厂商一样,已经进入该领域多时,并继续 发布新的产品,包括 VMware Player and Server 的免费产品。微软几年前收购了 Connectix 公司及其 Virtual PC 产品,开始进入虚拟化领域。此后,微软推出了 Virtual Server 产品以及 Virtual PC 产品的新版本。 Xen 是一个始于剑桥大学的开源项目,现在已经被许多不同的 Linux 发布系统所采 用,包括 Novell 公司的 SuSE Linux Enterprise Server。Novell 几乎将所有的法宝都押 在 Xen 上,希望 Xen 将吸引更多对公司企业服务器产品的兴趣。 你可以在任何 VMware 产品上运行 Novell 的 NetWare 操作系统,不过,其性能却不如 在 Xen 的 OES 版本运行。Novell 投入很大的精力对 Xen 进行优化,特别是在 Linux 上运行 NetWare 虚拟备份。Novell 的目标是为其客户提供一个迁移路径到 Linux 平台,而无需放 弃 NetWare。 虚拟化技术的区别 虚拟化的许多技术细节都相似,但存在不同的方法解决与不同部署相关的问题。有三 种架构分别被称为单一操作系统内核映像(single OS image),全虚拟化(full virtualization)和准虚拟化(para-virtualization)。 采用单一操作系统内核映像方式的厂商包括 Virtuozo、Vservers 和 Zones。该方法将 用户过程集合成资源容器(container),对物理资源的访问进行管理。虽然这个方法的 扩展性强,但是很难在不同的容器中进行很有效的隔离。 全虚拟化的厂商包括 VMware 和微软,还有开源项目 QEMU。采用这种方法,整个操作 系统和应用程序都作为子操作系统运行在主操作系统之上。这种方法的主要优势在于,你 可以在一个单一主机上运行任何数量的不同子操作系统。缺点是,x86 架构无法进行有效 的虚拟化。 准虚拟化是一个技巧的叫法,指的是你可以对主操作系统进行修改,以支持子操作系 统需要的底层调用。Xen 和 User-mode Linux (UML)采用这种方法。其优点包括性能好、 TT 服务器技术专题之“虚拟化技术基础入门 ” Page 4 of 57 可扩展性以及易于管理型。同时,准虚拟化还有助于利用具有硬件虚拟化能力的更新 AMD 和 Intel CPU 架构的优点。 哪种虚拟化方法最好? 答案取决于你想达到什么样的目标。如果你是一个开发人员,想采用一种灵活的方式 在多种环境下测试你的应用程序,那么可能采用 Virtual PC 或 VMware Workstation 较 好。 如果你想使用 Linux 作为你的主操作系统,那么你肯定要采用 VMware。 如果你想解决基于服务器的问题,如整合或应用隔离,你将采用服务器的解决方案。 接下来,你需要决定什么是关键的要求?在许多情况下,成本、性能、平台的依赖性和操 作系统支持是典型的不容讨价还价的要求。可支持性是另一个主要关心的问题,可能需要 诸如 Novell 的厂商提供像 Xen 的选择。 开源的解决方案几乎每次都可以在成本上占优势,不过,你需要看你需要什么进行部 署,以及到哪里可以得到技术支持。多数企业 IT 组织机构想要的不仅仅只是到互联网新 闻组和 IRC 聊天中得到技术支持。这样,诸如 Novell 的解决方案提供了一个很好满足两 方面需求的解决方案。 (作者:Paul Ferrill 译者:Shirley 来源:TT 中国) TT 服务器技术专题之“虚拟化技术基础入门 ” Page 5 of 57 虚拟化方式及最佳应用的研究 虚拟化是一个笼统的说法,可以适用于许多不同的技术。如存储系统、数据库和网络 都可以通过某种方式进行虚拟化。许多舆论都关注在相同的硬件上允许不同的独立的操作 系统运行的所谓的“虚拟服务器”。Microsoft(美国微软公司) 和 VMware 的产品在这个 方面是领先的。 尽管虚拟服务可以提供巨大的好处,但它并不是虚拟化的唯一选择。在本文中,我将 从正反两方面就各种的虚拟化方式讨论一些细节。目的是对特定的工作找出最佳的虚拟化 方式。 虚拟化方式概述 图 1 高度概括的显示了一个可以被虚拟化处理的标准服务栈。自下而上最底层的是硬 件层,然后是操作系统层,最上面是应用层。 图 1:各种虚拟化层 在深入讨论具体技术细节之前,先回顾一下虚拟化的主要目的。第一是确保彼此独立 的操作系统和应用软件可以在相同的硬件上运行。第二是尽可能多地提供同低层硬件系统 的接口。第三是在性能开销最小的情况下完成上述工作。这可不是一系列简单的目标,但 还是可以达到的(而且有多于一种的方式)。让我们看看是如何实现的。 硬件级别的虚拟化和管理程序 TT 服务器技术专题之“虚拟化技术基础入门 ” Page 6 of 57 我们将从系统的底层,硬件层开始。理论上,直接在硬件上运行的平台应该是用最少 的开销以提供最好性能的。VMware 的 ESX Server 就是一个例子。ESX Server 包括一个最 小的操作系统都直接安装在所支持的硬件平台上。管理员通过可以用网络浏览器访问的网 络应用程序进行管理。 系统管理程序是运行于硬件和操作系统之间的一个很小的层。此外,它的目的是避免 那些与“主”操作系统有关系的开销的产生。Microsoft(美国微软公司)和其他供应商未 来的虚拟平台将会转向基于系统管理程序的模式。 尽管底层的方法看起来是理想的,但还是有一些缺点。最重要的问题是设备的兼容 性。为了在所有的设备上都很好地工作,平台就必须支持所有连接到主计算机上的设备。 目前,ESX Server 之类的产品只能在通过了认证的硬件平台上运行。尽管支持许多主流的 服务器平台,但这种途径的兼容性显然没有其他的方式好。 另一个问题是可管理性。专用的虚拟层必须提供一些管理虚拟服务的方法。虽然有各 种各样的方法,包括操作系统“钩子”和基于网络的管理方式,但这些都要比其他的选择 复杂。 服务器级别的虚拟化 那些知名和好用的都是运行于服务器级别的虚拟化产品。VMware GSX Server 和 Microsoft Virtual Server 2005 就是最好的例子。这些产品都是安装在主操作系统(如支 持的 Linux 系统或者 Windows 服务平台)中的。在这种方法中,虚拟机在某个系统服务器 或者主操作系统的硬件驱动程序与硬件通信的应用程序中运行。 图 2 显示了 Microsoft Virtual Server 2005 虚拟服务器的实例。 TT 服务器技术专题之“虚拟化技术基础入门 ” Page 7 of 57 图 2:一个服务器级别的虚拟栈实例 服务级别的虚拟机带来了管理上的便捷(因为主操作系统的标准管理手段可以被使 用),增加了硬件兼容性(通过使用主操作系统的设备驱动程序)并且集成了文件和网络安 全服务。所以无论在使用桌面电脑还是服务器系统,你都可以在短短几分钟之内开设这些 虚拟机平台。 有一个不足就是需要为必须的主操作系统增加额外的开销。有效的虚拟机使用投入中 必须除去内存、中央处理器、磁盘、网络和其他主机必须的资源的开销。通常,主操作系 统都需要一个许可证。最终,服务级别的虚拟化方法总是没有硬件级别的效益好。 应用级别的虚拟化 在有些时候,运行多个独立的操作系统是没有必要的。如果只是想建立一个允许多个 用户同时运行几个应用程序的实例,就没有必要为每个用户都建立单独的虚拟机。这正是 应用级别的虚拟化方法。 应用级别的虚拟机运行在操作系统的上层,并把标准的应用程序(如包括 Microsoft Office 的应用程序)放在独立的环境中。每个用户通过计算机得到他或她自己唯一的产品 安装配置。在后台,文件系统的修改,注册表的设置和其他细节表现在单独的环境中,并 且独立的显示给各个用户。Softricity 和 SWSoft 是两个提供应用级别虚拟方案的供应 商。 这种方式得主要好处是削减了大量的支出(因为只需要一个完整的操作系统),并改善 了可扩展性(许多用户可以同时在一个服务器上运行同一个程序)。通常只需要一个操作系 统的许可证(用于主操作系统的)。不足是只有软件的设置是独立的。如果一个用户想要改 TT 服务器技术专题之“虚拟化技术基础入门 ” Page 8 of 57 变系统的硬件配置(如内存或者网络配置)或者操作系统版本(通过补丁或升级),那么使用 该系统的其他用户也会产生这些改变。 瘦客户端和远程应用执行 自从大型计算机出现后(当他们以并不太亲切的名字“哑终端”而闻名时),就有了精 简客户端的概念。这个概念是用户们可以通过最简化的软件和硬件与中央服务器建立远程 连接。所有的应用程序都在服务器上运行,只有键盘、显示器和鼠标等输入和输出设备的 数据通过信号线进行传输。Citrix 和 Microsoft Windows Server 2003 Terminal Services 的解决方案就是这种方式。 选择最佳的方法 现在你了解了这些选项,那么,你如何在特定的任务中选择最好的虚拟化方式? 表 1 提供了一些典型任务的实例。一般而言,从硬件级别到服务级别再到应用级别的 虚拟化,使你在获得可控制性的同时,也在牺牲系统的独立性。“最好的”解决方案决定 于特定的任务以及其他相关的细节。底线是,当决定采用虚拟方案时有多种可选项,所以 确保把它们考虑全面。 (作者:Anil Desai 译者:TT 中国 来源:TT 中国) TT 服务器技术专题之“虚拟化技术基础入门 ” Page 9 of 57 哪些服务器和应用适合虚拟化? 虚拟化如今很流行,你可能也想把你所有的物理机进行虚拟化。考虑到可移植性、部 署和硬件利用等方面的好处,虚拟化的确是非常诱人的。不过,这并不意味着虚拟化是任 何服务器或应用的最好解决方案(至少现在还不是)。其挑战是如何判断到底哪些服务器 和应用适合于在虚拟机上运行。 在选择的过程中,主要是根据当前虚拟化所支持的应用信息来判断。你了解的越多越 好。本文中,TechTarget 中国的特约虚拟化专家 Anil Desai 探讨了在评估应用和服务器 是否适合虚拟化时,应该考虑的一些因素:硬件要求、软件兼容性、软件许可证问题、业 务需求和资源利用。 硬件要求 评估虚拟化可行性的第一个考虑因素是计划支持的服务器和应用的硬件要求。通常而 言,你应该考虑到虚拟机的资源需求和物理服务器是基本一样的。例如,如果现在一台物 理服务器良好运行需要 512MB 的 RAM,那么运行同样操作系统和应用的虚拟机也差不多需 要这么大的 RAM。除此之外,你还应该看看 CPU、磁盘和网络方面的要求。大多数虚拟化 方案会提供必要的灵活性以支持一般的业务应用。 有特殊的硬件或驱动程序要求的应用和服务一般不是很适合虚拟化。例如,支持基于 3-D 加速硬件的定制视频驱动程序,大多数虚拟平台都不支持它。通过检查硬件要求,可 以迅速地决定虚拟化是否可行。 软件兼容性 现在的业务软件层出不穷,从简单的可执行文件到分布式多级别的配置。在确定软件 要求时,一定要确保虚拟平台支持你所要运行的操作系统。虽然厂商只为正式支持的平台 提供支持,不过大多数平台都能支持上百种不同的操作系统。你应该记住分布式应用各个 特定组件的要求。可能可以对一些用得少的 Web 服务器进行虚拟化,但让一些后台组件在 专门的硬件上运行。 表 1 的例子说明了如何收集和组织与系统要求相关的信息。 TT 服务器技术专题之“虚拟化技术基础入门 ” Page 10 of 57 软件许可证问题 在很多情况下,软件许可证可能比运行软件的硬件还要贵。企业应该与厂商协商好这 些细节问题。有时,对于在同样硬件上运行的大多数应用或操作系统,减免的那些软件许 可证费用加起来占虚拟化费用的很大一部分。缺少任何信息都可能会使情况恰好相反,不 过,为了确定许可证费用,最好是像对待物理机一样对待虚拟机。 业务需求 向虚拟化平台进行转移的决策应该依据企业的业务需求而定。有时很容易判断出哪些 领域可以立即从虚拟化中受益。以下几个问题可能表示虚拟化是关键: 所需的配置是否一致?当你需要部署几乎具有相同的软件和操作系统配置的大量机器 时,虚拟机可能会有用武之地。 是否需要减少配置次数?在软件测试和培训环境中,让机器迅速运行起来通常要优先 考虑性能和其它相关方面。 硬件的可用性是否有所限制?虚拟化可以更高效地使用现有硬件。 资源利用 性能是选择虚拟化的一个关键考虑因素。任何可用的性能数据都是有用的。在理想情 况下,你会有一个性能监控基准,其中包括 CPU、内存、磁盘和网络使用数据。这些数据 TT 服务器技术专题之“虚拟化技术基础入门 ” Page 11 of 57 可以帮助你确定每台虚拟机可能的运行要求。遗憾的是,没有能把物理性能计算成虚拟性 能的简单公式。如果可能的话,你应该执行性能基准或比较在虚拟机和物理机上运行的模 拟的操作结果。在本系列的后面,我将会涉及到一些监控性能和资源利用的方法。 是否实行虚拟化? 以上信息将帮助你最终决定是否某一个具体的应用或某一台具体的服务器适合 虚拟化。如果你所选的虚拟平台满足应用的硬件和软件要求,那么这就达到了最基 本的要求。如果从资源利用的角度来看是不错的选择的话,那么,至少值得在虚拟 环境下测试一下配置情况。通过考虑硬件、软件、许可证书、资源和业务要求,可 以帮助你确定虚拟化是否是工作的好帮手。 (作者:Anil Desai 译者:涂凡才 来源:TT 中国) TT 服务器技术专题之“虚拟化技术基础入门 ” Page 12 of 57 使用免费产品来实现低成本虚拟化 服务器虚拟化是一项关键的数据中心技术,不过,可能成本不菲。成功的关键在于有 效地控制成本部署和管理虚拟化,在能源、散热、空间、维护费用、硬件购买和升级等方 面受益。幸运的是,有免费的工具可以帮助 IT 经理们打开通向成功之门。 在本文中,TechTargt 的虚拟化专家 Alessandro Perilli 将讨论最流行的免费虚拟化 平台、安全和监测解决方案的特点及长处。希望对那些相信这项技术的好处,但担心投资 回报期可能会过长的公司提供有帮助的信息。毕竟,投资者们通常会投入高额的初期资 金,用于新型硬件,如 SAN(存储区域网络),软件和硬件冗余,更加合理的自动配置过 程以及培训。培训是非常有必要的,因为如果你不具备操作系统、网络、安全和性能故障 排除方面的牢固知识,就无法部署虚拟化。幸运的是,免费工具的广泛选择为公司创造了 一个机会,能够用可靠的方式开展小型的项目。 VMware Server与VMware Player 首先,我们需要一个虚拟化引擎。此处我们有最大的机会来节省资金。在我看来, VMware 的 Server 和 Player 是免费虚拟化平台领域的主导者。 VMware Server 是一个曾经叫做 GSX Server 的企业虚拟化平台,用于 Windows 和 Linux 操作系统上,具有令人印象深刻的特性和管理能力。 2005 年底,VMware 公司决定将其免费发布,没有任何形式的限制,由此占领了很大 的中小企业市场份额。 VMware Server 提供一流的特性,如支持 32 位与 64 位操作系统(包括 Windows、 Linux 和 Solaris 的多个版本);每台虚拟机多达两个虚拟 CPU 和 3-6GB 内存的能力;保 存虚拟机状态的能力;脚本型 API;Web 和丰富的客户管理工具,还有其它更多的特性。 在推出 Server 短短五个月之后,VMware 公司又公布了第二个免费平台:VMware Player。 Player 是 VMware 公司另一个叫做 Workstation 的流行产品的功能限制版。它每次只 能运行一台虚拟机,也没有虚拟硬件的编辑能力。不过,Player 很容易因为免费受到青 睐,而且允许使用像 EasyVMX 之类的第三方工具。 Server 和 Player 可以相互读取对方的虚拟机,因此 VMware 用户可以在 Server 上创 建和测试虚拟机,然后分布给客户、销售人员、合作伙伴等。 TT 服务器技术专题之“虚拟化技术基础入门 ” Page 13 of 57 Microsoft Virtual Server 2005 R2 VMware 公司在免费领域并非独家争鸣。微软紧随其后,开始免费提供 Virtual Server 2005 R2。 微软的 Virtual Server 来自于其 2003 年收购的 Connectix 公司,这个公司原本是一 个提供标准版和企业版商业解决方案的公司。与 VMware 争夺市场的竞争让微软在 2006 年 4 月重新推出该产品的免费高端版本。 在不远的未来,微软可以做的远不止提供免费的产品,与 VMware Server 相竞争。其 下一代虚拟化引擎,Windows Server Virtualization (发布代号为 Viridian),预计于 2008 年中发布。软件巨头计划免费提供。 如果是这样,每个部署新 Windows Server 的公司都将能够开始立刻享用虚拟化带来 的好处,体验即开即用的优点。 Xen 免费的虚拟平台包括 Xen。它最初是在剑桥大学开发出来的,但现在成为一个主要 IT 厂商的参与项目,包括 IBM 、Novell、Red Hat 和其他许多公司。 Xen 是一个开源项目,在 GPL 许可发布下,所以,对任何愿意下载其源码并把它安装 在 Linux 操作系统的人们都是免费提供的。 Xen 在性能和可用性方面仍然落后于 VMware 和微软提供的解决方案,但有两家公司正 在致力于缩小差距:XenSource(后被思杰公司收购)和 Virtual Iron。 这两家厂商都提供各自建于 Xen 之上的提高版本,改善性能或管理功能,并且都提供 免费的精简版。 XenSource 的 XenExpress 能够运行多达四个并行虚拟机(最多两个物理接口,即双 核) ,每个高达 4GB 的内存,而 Virtual Iron 则提供一个无任何限制的 Single Server 版本。 最意想不到的免费虚拟引擎则是 Linux 。由于包括了 KVM(多电脑切换器),开源操 作系统在数月内本身就成为虚拟平台。KVM 仍然非常年轻,不能与以上任何产品相比,但 是有一个既有即用的虚拟化解决方案,这样的想法已吸引了众多的团体和 IT 厂商,例 如,Red Hat 支持这个方案。 从版本 2.6.21 开始,所有内核都包含 KVM,因此任何基于这种内核的 Linux 发行版将 能够充当一个免费的虚拟化平台。 TT 服务器技术专题之“虚拟化技术基础入门 ” Page 14 of 57 Linux 平台还有另一个项目在进行:OpenVZ,SWsof Virtuozzo 的开源版本。 OpenVZ,就像 Virtuozzo 一样,与上面提到的硬件虚拟化解决方案相比,有其不同的 方式。其他产品能够创建隔离的容器,用户可以安装任何类型的操作系统,比如,在一个 Linux 平台上安装 Windows 虚拟机。但 OpenVZ 是“仅仅”能够创建出同一操作系统备份的 隔离容器。这种做法不够灵活,但更适合一些虚拟化的项目,如 ISP(互联网服务供应 商)建立的虚拟主机环境。 除了 Windows 与 Linux ,我发现即使是 SUN 公司也免费提供虚拟化技术,命名为 Solaris Containers,也称为 Zones,包括在 Sun Solaris 10 操作系统中。该操作系统免 费供个人和商业使用。 目前 Solaris Containers 使用与 OpenVZ 相同的方法:建立多个彼此独立的 Solaris 分区。但也有一个改变:SUN 在这两年来一直致力于开发一个新的版本,在无任何修改情 况下能运行 Linux 二进制。 我们仍在期待。 以上的免费虚拟化产品清单远远不够齐全,但显而易见可以得出一个结论:虚拟化正 在成为一种产品,最终所有的操作系统将作为一个标准功能提供虚拟机。 期望利用虚拟化技术的公司,现在有一个很好的机会,不需要花费额外的资金就可以 在企业版本的软件上采用虚拟化。 (作者:Alessandro Perilli 译者:王震 来源:TT 中国) TT 服务器技术专题之“虚拟化技术基础入门 ” Page 15 of 57 虚拟桌面基础架构(VDI)简介 VDI,英文全称 Virtual Desktop Infrastructure,即虚拟桌面基础架构,正迅速成 为一个热门词语。在这些被分为六部分的系列文章中,TechTarget 中国的特约独立技术分 析师 Brian Madden 将探讨什么是虚拟桌面架构,人们为什么使用它以及各厂家在这个领 域内正在做些什么。同时,也将分开讨论目前哪些是真实可行的,哪些是夸大其词的。 VDI 的概念很简单。它不是给每个用户都配置一台运行 Windows XP 或 Vista(后文统 称为 Windows XP)的桌面 PC,而是通过在数据中心的服务器运行 Windows XP,将你的桌 面进行虚拟化。用户通过来自客户端设备(瘦客户机或是家用 PC)的瘦客户计算协议与虚 拟桌面进行连接,用户访问他们的桌面就像是访问传统的本地安装桌面一样。 在后端,虚拟化桌面通常通过以下两种方式之一来实现: ·运行若干 Windows XP 虚拟机的 Microsoft Virtual Server 的 Vmware Server,每 个用户以一对一的方式连接到他们的 VM(虚拟机)。 ·安装 Windows XP 刀片的刀片式服务器,每个用户以一对一的方式连接到刀片服务 器。(这种方法有时被称作"bladed PC(刀片 PC)”) 无论何种方式,都是让终端用户使用他们想使用的任何设备。他们可以从任何地方连 接到他们的桌面,IT 人员可以更易于管理桌面,因为它位于数据中心之内。 VDI 方式最有趣的是,虽然这些技术是新兴的,但把桌面作为一种服务来提供的概念 在十多年前就已经被提出了。传统的基于服务器计算的解决方案,如 Citrix Presentation Server 或微软的终端服务器,在过去十年中一直都提供 VDI 的解决方案。 最主要的区别是基于服务器计算的解决在 Windows 的共享实例提供个性化的桌面,而 VDI 的解决方案是为每个用户提供他们自己的 Windows 机器。 也就是说,基于服务器计算行业在过去几年的发展中,更少地注重基于服务器的计 算,而是更多地关注向用户提供应用。即使是这样,桌面只是另一种 IT 需要提供,用户 需要访问的应用。 我们现在看其意义所在,有很重要的一点需要指出,那就是没有一个人会真正建议摒 弃传统的本地桌面,而由 VDI 解决方案取而代之(就像是十年前没人会建议摒弃传统桌 面,由基于服务器计算的应用来替代它一样)。 TT 服务器技术专题之“虚拟化技术基础入门 ” Page 16 of 57 通过基于服务器计算获得成功的公司都会基于具体的应用或具体的情况来评估需求。 如今大多数使用基于服务器计算的公司将它作为整体解决方案的一个部分来使用。该整体 解决方案融合不同的技术,为正确的情况提供恰当的应用。 VDI 也不例外。它并不是一个最终的根本解决机制。它只是为用户提供桌面的另一个 选项,由此来解决传统的本地桌面或基于服务器计算桌面所面临的一些巨大挑战。 在这个系列文章的第二部分,我们将对VDI、基于服务器计算以及传统的本地桌面各 自相对的优点进行比较,并看看它们各自在哪些情况下最适合。 作者简介:Brian Madden是一名来自华盛顿特区的独立技术分析师和思考者。他已经 出版有关思杰和瘦客户机计算技术的若干书籍和上百篇文章。Brian三次获得微软最有价 值专家(MVP)和一次思杰技术专家(CTP)。他目前在全世界进行演讲和教学。 (作者:Brian Madden 译者:王霆 来源:TT 中国) TT 服务器技术专题之“虚拟化技术基础入门 ” Page 17 of 57 VDI 与基于服务器计算的桌面 本系列共有六个部分,本文是第二部分,探讨的是当今IT环境下的虚拟桌面。 VDI(Virtual Desktop Infrasctructure,虚拟桌面架构)就概念本身而言已经不 新,不过,现在很多人在思考如何使用 VDI 以及在何处使用,这倒是一个全新的问题。特 别是人们对此进行评估,将 VDI 与其它向用户提供桌面的方式进行比较和对比,即基于服 务器计算和传统的本地桌面架构。 本文中,我们将探讨VDI技术和基于服务器计算技术(server-based computing,简 称SBC),如Citrix Presentation Server或Microsoft 终端服务器。在本系列的第一部 分,我已简要介绍过虚拟桌面基础架构(VDI)。 现在,SBC 方式是一种很有趣的实现桌面的方法,因为 SBC 技术在很多方面提供一些 类似 SBC 解决方案已有十年之久。事实上,Citrix 直到 1999 年才推出无缝软件发布,因 此在这之前的一切都是远程桌面。当然,我们当时并不叫它 VDI,但是那就是它的前身。 然而,现在的基于 Windows XP 虚拟机的 VDI 与 SBC 桌面发布有很大的不同,尽管它 们都从根本上解决了同一个业务目标:通过瘦客户机远程协议为用户提供桌面。 下面,我们对这两种技术进行比较,看它们各自的优势在何处。 与SBC相比,VDI有何优势? z 应用多时性能相对较好。在 VDI 环境下,终端用户的 Windows XP 工作站运行 于刀片机上,或是作为几台虚拟机的其中一个运行于服务器上。而在 SBC 环 境下,一台服务器可能同时要支持 50 个、100 个或更多的终端用户。在 VDI 环境中,每台用户虚拟机可利用的资源更多,所以应用繁重时性能比 SBC 好。 z 没有兼容性方面的问题。在实际中,并不是所有的应用都与终端服务相兼 容。在 VDI 环境下,每个用户虚拟机就是一个单独的工作站,因此你不用担 心应用与终端服务的兼容性问题。 z 更好的安全性。由于每个用户都有自己独立的 Windows XP 虚拟机,所以你不 必为加固用户 session 而担心。如果其中一个用户出错,不会影响到其他的 用户。 z 后端服务器的可移植性。在 VDI 中,系统是建立在虚拟机技术之上的,你可 以“暂停”单个虚拟机,然后将其从一台服务器移到另一台服务器上。这在 维护系统时将会很方便。你可以想象,你只需点击管理控制台的一个按钮, TT 服务器技术专题之“虚拟化技术基础入门 ” Page 18 of 57 就可以将用户移到另一台服务器上。可能用户会收到一个弹出的提示框“请 稍等”,然后服务器会将虚拟机的存储内容转移到一个硬盘上,虚拟机将在 另外一个物理硬盘上进行自动配置,最后虚拟机重新联机。整个过程不到 30 秒,用户就恢复到中断时的位置。 z 客户运行软件的“工作站”版。由于 VDI 工作站是基于 Windows XP,而不是 Windows Server sessions 的,因此任何软件和应用都会把 session 作为真正 的工作站。这样,你就可以使用所有软件的“工作站”版。 z 用户控制。同样,由于每个用户都可以得到一个完整的 Windows XP 工作站虚 拟机,所以他们可以根据自己的需求定制自己的虚拟机(或者在你允许的权 限范围内)。但作为管理员,你可以更加灵活地设置用户权限,因为你不必 担忧他们会影响其它用户。这也就意味着,需要自己工作站的管理权限的用 户也可以被虚拟化。 z 用户可离线使用 session。如果你用的是基于虚拟机的 VDI 解决方案,请记 住,不管你的物理硬件如何,虚拟化软件提供给用户的是一个通用的硬件情 况。因此在所有用户桌面都是虚拟机的情况下,用户在办公室时可以使用集 中的后端服务器,而不在办公室需要离线运行时,他们可以使用手提电脑运 行 VMware。有一个“断开连接”选项可以暂停用户 session,然后复制硬盘 镜像和内存到手提电脑,然后可以在手提电脑上恢复虚拟机。你甚至可以用 通用手提电脑,供用户出差时使用。想象一下,VMware ACE 可以灵活采用本 地或远程运行,并且可以轻松地前后切换。 因此,VDI 的确很不错。它带来了一些传统安装的分布式个人桌面的好处,还有基于 服务器计算的很多优点。不过它也有不足之处,因为分布式桌面也存在着很多的缺陷。 与VDI相比,SBC有何优势? z 管理。SBC 的亮点之一在于,你可以在单个终端服务器或 Citrix Presentation Server 上运行 50 或 70 个桌面 session,这个服务器只需管理 一个 Windows 实例。而在 VDI 中,50 到 70 个用户就要 50 到 70 个 Windows 的 副本,然后你还要对它们进行安装、配置、管理、打补丁、查毒、更新和杀 毒。太可怕了! z VDI 需要更多服务器硬件。与 SBC 相比,VDI 潜在的高性能是有代价的。与在 一台终端服务器上给用户分配 session 相比,让每个用户都拥有一个完整的 工作站虚拟机将需要更多的计算资源。一个有 4GB RAM、双处理器的服务器作 为终端服务器可以运行 50 到 100 个桌面 session,而在 VDI 中,你可能就只 能运行 15 到 20 台 Windows XP 虚拟机了。 z VDI 需要更多的软件。除了操作系统和应用软件以外,你还需要虚拟机软件 (VMware 或 Microsoft),而且还要一些为用户提供的管理虚拟机自动配置 的软件(本系列后面将介绍更多)。当然,这些都是要花费更多成本的。 TT 服务器技术专题之“虚拟化技术基础入门 ” Page 19 of 57 你可以看到,VDI 和 SBC 倒不是完全不同。它们都使用瘦客户机协议来分离应用的执 行和用户界面,而且它们都允许用户从任何地方使用任何设备进行连接。唯一真正不同的 在于,VDI 是连接瘦客户机用户到一个 Windows XP 工作站,而 SBC 是连接到一台共享终端 服务器的一个 session。 在本系列的下一篇文章,我们将探讨VDI与传统桌面计算有何异同。 (作者:Brian Madden 译者:涂凡才 来源:TT 中国) TT 服务器技术专题之“虚拟化技术基础入门 ” Page 20 of 57 VDI 与传统本地桌面 本系列共有六个部分,本文是第三部分,探讨的是当今IT环境下的虚拟桌面。 传统的桌面架构是通过复制 Windows,然后本地安装,运行于企业各个部门的 PC 和手 提电脑上。那么,虚拟桌面架构(VDI)解决方案与传统桌面架构各有哪些优势呢?在 VDI 系列的本部分,TechTarget 中国的特约专家 Brian Madden 将回答这个问题。 本系列的第二部分已经对比了VDI方案和基于服务器计算(SBC)方案,如Citrix Presentation Server或Microsoft 终端服务器。 VDI 本质上就是使传统的本地桌面“SBC 化”。用户可以通过任何连接、使用任何设 备访问桌面。你可以享用两者的优点。 与传统本地桌面相比,VDI有如下一些优点: z 可从任何地方访问真实桌面。SBC和VDI最大的优点之一在于,用户可以从任 何地方访问他们的应用(或VDI的情况下指桌面)。任何连接、任何客户端设 备、世界的任何角落都可以访问。你何不把它也应用到桌面架构呢? z 易于管理。如果你要管理 1000 个桌面,你会愿意管理哪种:1000 个四处分散 的物理桌面?还是一个数据中心的 1000 个虚拟机和VMware磁盘镜像?如果客 户“工作站”都集中到数据中心,这将对管理、打补丁、资源分配等工作很 有利。 z 更易于备份。备份“工作站”你需要做的就是备份或快照磁盘镜像文件到服 务器。如果用户丢失某些东西,他们可以轻松地将电脑恢复到任何时刻的状 态。你甚至可以选择自动快照服务,它将会每小时自动快照一次。 z 数据存储。使用VDI,你可以保证重要的文件和数据不用通过网络存储到客户 机设备上。 z 桌面运行于服务器级硬件上。由于桌面电脑分散于公司的各个角落,各台电 脑与服务器级硬件的冗余情况也会不一样。一个停电事故、驱动或内存错误 也可能导致桌面电脑崩溃。当然,服务器也一样。不过,由于公司的服务器 比桌面数量少,从财政和风险角度看,在电力、RAID和其它技术方面花钱以 确保服务器硬件不出问题,这样做也是值得的。 与VDI相比,传统本地桌面有何优势? TT 服务器技术专题之“虚拟化技术基础入门 ” Page 21 of 57 z 离线使用。VDI最大的不足在于,客户机设备必须网络连接到一个运行 Windows XP session的后端服务器上。 z 运行图形丰富的应用时性能好。VDI与各个应用的兼容性更好,因为这些应用 是各自运行于自己的Windows XP工作站的,而不是共享终端服务器。这解决 了许多兼容性方面的问题,如性能独占和非终端服务器兼容应用。然而,VDI 作为核心还是和SBC很类似的,应用的图形画面必须通过网络从后端传输到客 户机。这就意味着,如果应用程序是视频或图形密集型,那么VDI的性能可能 就不太好了,尽管这些应用是运行于Windows XP虚拟机上的。 z 它是实质的标准。就如没有人会因为购买IBM而被开除一样,我们之所以把这 个方法称作“传统本地桌面”,是因为这就是如今做事的方法。我们不需要 执行什么新东西、自寻烦恼,也不需要尝试任何新技术。你只需继续使用现 行的方法,就应用了传统本地桌面。 总之,VDI 不仅拥有传统计算的许多优点,而且具有基于服务器计算的一些优点。当 然,与传统桌面计算相比,VDI 的网络连接要求却是一个很大的缺点。 在本系列的下篇文章中,我们将探讨VDI技术在哪些领域有意义,以及如何判断你是 否需要应用VDI技术。 (作者:Brian Madden 译者:涂凡才 来源:TT 中国) TT 服务器技术专题之“虚拟化技术基础入门 ” Page 22 of 57 VDI 何时有用? 本系列的前几篇文章比较了虚拟桌面基础架构(VDI)解决方法相对于基于服务器计 算的解决方案和传统本地桌面环境所具有的优点。我们已经分析了这些技术各自的优缺 点,现在就来看看 VDI 在实际中的何处有用。 正如我之前写到的,VDI 技术将永远不会取代本地桌面计算技术。但是通过目前可以 使用的 SBC(server-based computing,基于服务器计算)技术,很多人将大多数普通的 应用从桌面转移到数据中心。(也许有 80%?) 那么为什么只有 80%呢?为什么不能将应用的其它部分也转移到数据中心来呢?可能 的原因有: 1、用户需要脱机连接(出差使用的手提电脑等) 2、应用不与终端服务器兼容 3、应用会大量占用资源,导致终端服务器宕机 4、应用使用大量图片,无法通过瘦客户机远程显示协议很好地工作,如 RDP(remote display protocol,,远程显示协议)或 ICA(Independent Computing Architecture,独 立计算构件协议) 5、在 SBC 环境中使用应用软件得不偿失。 正如我所说,VDI 并不是应用的最终根本解决方法。SBC 是一个不错的基础。基于 此,让我们看一看以上列出的几点,再想想 VDI。这些原因中的第二,三和第五点都可以 由 VDI 加以解决。 (重申一下,为什么你“需要”解决以上列出的第二,第三和第五点原因呢?请参考 本系列的第二篇文章。) 目前为止,很明显的一点是任何运行环境都可以从 SBC、VDI 和传统本地桌面的混合 使用中获益。正如创建一个包含 SBC、传统安装的应用以及应用流(application streaming)在内的综合应用解决方法是合理的,你应该把桌面看作仅是“另一种应 用”,可以根据不同的情况,以多种方式进行工作。 在回答 “为什么有人会需要 VDI?”的问题时,经常提到的例子是远程软件开发人员 需要。远程开发人员都有他们自己的 VM(虚拟机)桌面,能够在不影响其他使用者的情况 下做任何他们想做的事。 TT 服务器技术专题之“虚拟化技术基础入门 ” Page 23 of 57 这确实是一个很好的例子,不过,VDI 在其它许多方面也都有用。我担心过多地使用 开发人员的例子会使人们误认为,如果他们没有远程开发人员,就不需要 VDI。 事实上,只要具有超级用户(power user)或者需要使用不熟悉的、不与终端服务器 兼容之应用的用户,而用户仍然需要与传统 SBC 环境相关的灵活性,例如,从任何地方连 接到应用、连接速度缓慢等,任何这样的情况,VDI 技术都是很有用的。 我认为 VDI 几乎在各个方面都有用,不过会受到一些限制。它仅仅是用来为用户提供 桌面的多种方式的一种。VDI 能够在百分之百的公司内发挥作用,但是可能只对公司内 2%~4%的用户有用。的确,VDI 很有用。但是,人们并不会因此而淘汰 SBC 环境或者桌面 计算机。 这系列的下一篇文章我们将讨论什么技术让VDI成为可能。 (作者:Brian Madden 译者:史静 来源:TT 中国) TT 服务器技术专题之“虚拟化技术基础入门 ” Page 24 of 57 什么技术让 VDI 成为可能? 我们已经了解了什么是虚拟桌面基础架构(VDI)及其应用的领域,现在让我们来看 一下这些让 VDI 成为可能的基础技术。 从最基本的层面来讲,你需要在后台有一个虚拟机解决方案,而且还要有让用户远程 访问 Windows XP VM 的方法。 Windows XP 具有终端服务器功能,并支持 RDP(Remote Display Protocol,,远程显 示协议)内置。这称之为“远程桌面”。所以,可以这样说,任何一台可以运行 RDP session 的瘦客户机都可以通过 RDP 和 VM 的的远程桌面功能与 VM 相连接。 如果你以前用过 VMware,你可以想像设置所有的虚拟机,然后给每台机器分配一个网 络名称或 IP 地址,从而使每个终端用户都知道他们应该连接到哪一台 Windows XP VM。 这在理论上可行,但在现实生活中却会是一个噩梦。具体问题包括: 1.所有虚拟机必须一直保持开机状态,因为如果用户想连接到一台已经关机的虚拟 机,就无法连接。用户不可能去告诉 VMware 服务器:“嗨!请帮我打开虚拟机!” 2.缺乏负载平衡系统。如果你在每台 VMware 服务器上同时运行十五台虚拟机,它只 能随机选择用户何时连接哪台虚拟机。 当然 VMware 有一个脚本界面,许多早期 VDI 研发者还写了一些复杂的脚本,并且定 制网页,来查看要求接入的请求,然后通知 VMware 服务器,为用户快速启动虚拟机。 在过去的几个月里,数家公司已经发布了致力于解决这一问题的不同产品。这些产品 可以归纳到一个通用类别:“桌面代理(Desktop Broker)”或“虚拟桌面基础架构代理 (VDI Broker)”,而且它们的工作原理基本上都一样。就像那些早期采用者的粗略脚本一 样,这些虚拟桌面基础架构代理接收用户的接入请求,然后将用户路由到已经准备好为其 服务的 Windows XP 或 Vista 虚拟机。由于篇幅所限,我们在这里就不再详述代理产品的 细节,不过,Ron Oglesby 写过一篇很出色的概述文章。 桌面代理产品可以确保用户连接到他们的桌面管理虚拟机。这很好,现在它就像一个 正常的基于客户端的桌面,每个用户运行自己的 Windows XP 桌面,除了我们有一些基于 服务器计算的优势。 那么存在什么问题? TT 服务器技术专题之“虚拟化技术基础入门 ” Page 25 of 57 问题是如果你有一百名用户,你就必须管理一百个 Windows XP 桌面镜像。一千名用 户就意味着一千个镜像。你一定看出了问题所在。这回到了 VDI 主要的缺点之一:一个 Windows XP 桌面就是一个 Windows XP 桌面,无论它是物理还是虚拟,如果你不对它进行 管理,那就必将会是一场噩梦。 动态桌面 让我们退一步,记得为什么 Terminal Server 和 Citrix Presentation Server 的桌 面好吗?因为我们只运行一个 Windows 实例,来支持 50 至 75 名用户桌面,而不是在本地 桌面或 VDI 解决方案中需要 50 至 75 个 Windows XP 实例。 但是,这是否意味着所有的 50 至 75 名用户会具有完全相同的桌面?当然不是,我们 会使用像 Roaming Profiles 这样的工具来确保每个用户拥有自己的共享份额、打印机、 颜色方案和其它桌面定制等。 然而应用方面又会是怎样呢?所有的那 50 至 75 名终端服务器桌面用户看到的是不是 同样的应用列表?当然也不是!有许多方法可以为每个用户定制应用: z 你可以运行 Citrix PN Agent 软件,使每个用户的“开始”菜单获得一个动 态的应用列表。然后这些图标可以在在其它 Citrix Presentation Server 上 运行的无缝应用启用 ICA(独立计算构件协议)session,。 z 你可以使用一种应用流(Application Streaming)解决方案,如 Microsoft Softricity,Altiris SVS + AppStream,或是 Citrix Streaming Server, 动态地将应用流发送到服务器,应用可以在本地获得,供用户使用。 z 你也可以将应用合法地安装到服务器上,这样可以通过“启动”菜单在本地 进行访问。 这些只是几种可选的方法,但问题是,即使 50 至 75 名用户“共享”Windows 同一个 实例,但每个用户都有他们自己的运行环境。这是为什么呢?因为一个通用的模板桌面仅 仅是一个起点,那个模板动态地使用 Roaming Profiles、PN Agent 应用链接和应用流进 行定制,从而为用户提供了自己独特的桌面环境。 动态VDI桌面 很显然,我们可以看到:一方面,VDI 在许多情况下表现得很出色,可要管理数百个 Windows XP 桌面却不是件易事;另一方面,动态桌面应用在 SBC(基于服务器计算)环境 中,为 Windows 单一实例的用户提供定制桌面。 那么如果我们将这两者结合将会产生什么结果呢? TT 服务器技术专题之“虚拟化技术基础入门 ” Page 26 of 57 你将有“动态 VDI 桌面”,想象一下,在一个 VDI 环境下你可以有这两种选择的优 点。从技术角度来看,这意味着你可以创建一个通用模板磁盘镜像,而不是为每个用户建 立一个 VMware 磁盘镜像。当用户连接时,这个镜像可以按需进行自动配置,动态地与用 户的应用进行定制。你还可以在 SBC 桌面的简易管理下,为每个用户提供一个完全定制的 桌面。这真是一个两全其美的方案。 最重要的是,动态 VDI 桌面还有另一个重要的好处。那就是,事实上我们不需要创建 (或运行)VM,直至用户有所需求。因此,如果你有 1000 名用户,但同时使用的不会超 过 800 名,你就可以将你的运行环境规模控制在 800 名用户,当用户需求时,系统将会自 动配置并启动 VM。 在我们继续往下谈之前,有一个重要点需要指出来。这些动态 VDI 的优势并不意味着 动态 VDI 桌面将取代传统的本地桌面或者是 SBC 桌面。动态 VDI 桌面仍然是 VDI,一个综 合的桌面管理系统方案仍将包括 VDI、SBC 和传统桌面的融合。 这个“两全其美的方案”适合于 VDI 已经有意义的情况下。有的时候,由于迫切的管 理需求,你之前不敢考虑 VDI;这将有助于你决定是否使用 VDI。也就是说,你仍然在 SBC、VDI 和传统桌面之间进行选择,然后对于你认为 VDI 适用环境下的桌面,你再进一步 决定是想静态地一对一映射,还是基于共享模板动态地自动配置桌面。 这系列文章最后一部分将讲述如何在实际中实施动态VDI桌面。 (作者:Brian Madden 译者:王霆 来源:TT 中国) TT 服务器技术专题之“虚拟化技术基础入门 ” Page 27 of 57 如何在实际中实施动态 VDI 桌面? 我们已经了解了什么技术让VDI成为可能,下面让我们来看看如何实现动态VDI桌面 吧。你主要需要做的是如何让每个新用户都连接到通用Windows XP模板。 收到用户的连接请求后,系统会根据 Windows XP 模板硬盘镜像的复本创建一个新的 VM,然后用户连接到那个模板。只要用户完成登陆,会载入漫游配置文件(roaming profiles),定制动态应用,然后用户就准备就绪了。 那么,你应该怎么做呢?很多人以为,因为在 VMware 下创建新的 VM 很简单,从 SAN 中复制 VMware 硬盘镜像也很容易,所以用 VMware 和一些脚本就很容易完成这一切。 遗憾的是,情况远不是如此简单,还有几个需要解决的障碍。最大的障碍可能是你需 要导入每个基于 VMware 硬盘模板的新 VM。由于 Windows 将计算机名和 IP 地址这些信息都 存储在注册表中,而注册表又存储于硬盘上,所以你导入的每个 Windows XP VM 的信息都 要一样的。 当然,你可以通过在 VM 内运行的启动脚本轻松地进行修改。你可以让它检查某个数 据库,然后写入合适的信息。但是如果你修改了计算机名,就必须把它添加到公司域中, 并且需要重启!(你肯定需要添加到公司域中,因为你需要对它进行管理,并使用漫游配 置文件) 可以看出,动态 VDI 桌面概念比较简单,但就实际实施而言,并非“只是复制 VMware 硬盘模板文件就行了”那么简单。 OS 流技术因此应运而生,如 Citrix 的 Ardence。Ardence 让计算机进行 PXE 引导, 在整个网络上挂载硬盘镜像文件。多台客户机可以共享一个硬盘镜像文件的只读复本,而 且 Ardence 确保每台客户机都有自己的计算机名、域 RID(相对标识号)和其它唯一标识 符。由于硬盘镜像是只读的,所以只要计算机关闭或重启,它们就会消失。 简要地介绍了 Ardence 技术,现在我们来进一步了解如何利用 Citrix Ardence 创建 一个动态 VDI 环境。 如果你的 VMware 服务器很大,可以为用户宿主 Windows XP 虚拟机,那么你需要将这 些虚拟机导入到同一个硬盘模板镜像。 使用 Ardence 来配置 VMware 虚拟机,这样,虚拟机可以进行 PXE 引导。当一台新的 虚拟机启动时,它会引导 PXE 启动,并联系 Ardence 服务器。Ardence 服务器会检查启动 TT 服务器技术专题之“虚拟化技术基础入门 ” Page 28 of 57 虚拟机的 ID,然后为它挂载一个共享的虚拟硬盘镜像模板。由于 Ardence 技术是基于运行 在 Windows XP VM 的设备驱动器,所以 Ardence 会截取某些请求,如域 RID 和计算机名, 然后自动到自己的数据库查询客户机的 ID,并为该设备替换为真实的通用模板计算机名和 RID。 成功实现 VDI 的关键在于,你的 VDI 解决方案必须操作管理简单,不要像运行物理本 地桌面的老方法那样复杂。否则的话,你用它还有什么意义呢?通过理解 VDI 的意义之所 在和将多个 VDI 桌面作为一个整体来管理,VDI 就是一个管理多个用户桌面很好的解决方 案。但是它并不是一个根本的最终解决方案,而且也一定不会全面取代基于服务器的计算 或传统的桌面计算。 (作者:Brian Madden 译者:涂凡才 来源:TT 中国) TT 服务器技术专题之“虚拟化技术基础入门 ” Page 29 of 57 利用虚拟机库管理虚拟机蔓延 服务器蔓延(server sprawl)是企业考虑虚拟化时需关注的一个重要问题。在同样 的硬件上运行多台虚拟机可以节省资金和降低管理开销。不过,问题也应运而生。因为虚 拟机(VM)很容易建立、复制和部署,许多公司最后发现服务器蔓延变成了虚拟机蔓延 (VM sprawl)。 同时,用户听过虚拟化,但在建立和部署虚拟机时,却缺乏必要的 IT 知识,也不足 为奇。结果导致出现大量不符合规范的系统。本文中,TechTarget 中国的特约虚拟化专家 Anil Desai 介绍了由此可能造成的一些问题,并对 IT 部门如何控制和管理虚拟机提出建 议。 虚拟机标准化的好处 随着工作站和服务器的虚拟化产品日益受到欢迎,用户可以很容易地建立和部署他们 自己的虚拟机。通常而言,这些虚拟机没有达到以下方面的标准: z 一致性:终端用户很少具有专业技能(或愿意)遵循最佳实践,例如,只启 用必须的服务,加固系统配置。结果是,很多不同种类的虚拟机部署在点对 点的基础上。很快对这些配置提供支持变成一项困难和耗时的工作。 z 安全性:用户自己部署虚拟机很容易忽视一些准则,例如,虚拟机应该及时 进行更新,应用最低优先权的原则等。通常导致的结果是虚拟机成为安全隐 患,可能容易感染病毒、间谍软件和相关问题,从而通过网络感染其他机 器。 z 可管理性:许多IT部门在其机器上包括了标准的备份代理和其他工具。通常 用户不会安装这样的软件,除非他们有具体的需求。 z 许可证:几乎在所有的情况下,操作系统和应用需要额外的许可证。即使终 端用户很小心,但是,涉及到客户访问许可证的情况可能很快会让一个部门 与法规遵从不相符。 基础设施的容量:像网络地址、主机名和其他系统设置的资源必须和环境中的其他计 算机协调工作。当从前只运行一些低负载应用的服务器被升级时,它们将需要更多的能量 (还有更多的散热)。IT 部门必须能够对所有的这些信息加以考虑,甚至是用户创建他们 自己的虚拟机。 创建一个虚拟机库(VM library) TT 服务器技术专题之“虚拟化技术基础入门 ” Page 30 of 57 企业解决虚拟机蔓延的一种办法就是创建一套基础虚拟机镜像。这些镜像可以遵循部 署物理机使用的严格标准和操作。安全软件、配置细节和许可证都应该加以考虑。创建新 虚拟机的流程应该放在企业内部网,用户可以根据指示,请求对虚拟硬盘和其他资源进行 访问。 执行是另一个重要的问题,具体而言,IT 策略应该规定,未经 IT 部门批准,禁止用 户创建自己的镜像。这样可以让 IT 部门对虚拟机进行追踪记录,包括各虚拟机的目的和 功能。也可以有例外,例如,软件开发人员或测试人员需要创建他们自己的配置进行测 试。 设计基础虚拟机镜像(base VM images) 一个基础虚拟机镜像包括什么?这个决定过程可能比较具有挑战性。目标之一应该是 为了让事情简单化和具有管理性,将所需的基本镜像数量最小化。另一个目标是,尽量在 基础镜像中提供所有经常使用的应用和特性。通常而言,这两种需求很难两全其美。下图 1 是可能创建的一些典型基础镜像的示例。基础镜像需要不断进行维护,可以通过使用自 动更新的解决方案,或者通过手动对应用进行打补丁和更新。 图 1: 基础虚拟机镜像及其内容示例 支持镜像复制 在多数虚拟化平台上,复制虚拟机镜像的过程就像复制一个或多个文件一样简单。不 过,在整个过程中,还是有更多的要求。多数操作系统需要独立的主机名、网络地址、安 全标识和其他设置。IT 部门应该让这个过程尽量简单,易于用户管理设置,因为设置冲突 会在整个网络环境中造成严重的混乱。 另一个 IT 部门可行的办法就是在将虚拟镜像交给用户之前,手动配置这些设置。还 有一个办法,就是采用脚本或管理软件进行修改。具体的细节要视具体的操作系统而定, TT 服务器技术专题之“虚拟化技术基础入门 ” Page 31 of 57 不过很多操作系统提供可以用于处理新机器部署的工具。例如,微软的 Desktop Deployment Center(桌面部署中心),它包括很多处理这些设置的工具(注:多数工具 支持虚拟机,尽管未明文指出支持虚拟化)。 建立硬盘级别 许多服务器虚拟化平台支持允许基于其他虚拟硬盘创建虚拟硬盘的功能。其目的是将 可用的镜像最小化,同时仍然尽量更多地提供配置。这样,可以建立基础操作系统,然后 增加用户可能需要的选择。图 2 是一个基于 Windows 环境的示例: 图 2: 包括父子级别的虚拟硬盘级别示例 记住:技术上的限制可能会让这个过程不是很完美。例如,基础虚拟硬盘无法进行修 改,所以,如果你需要增加服务包、安全更新或者新的软件版本,你需要在子级别进行。 总结 总而言之,通过使用虚拟机库,IT 部门可以使终端用户创建和部署虚拟机的过程更 加简单。同时,可以避免不一致和过时的配置(物理计算机也会出现这样的问题)。这 样,对寻求利用虚拟化优势的用户而言,最终的结果是双赢的。 (作者:Anil Desai 译者:Shirley 来源:TT 中国) TT 服务器技术专题之“虚拟化技术基础入门 ” Page 32 of 57 虚拟机的测试与负载分配 管理性能是系统管理的关键任务。随着虚拟化(多个独立的操作系统竞争系统资源) 的应用,衡量和监控你的应用中的实际工作性能更为重要。 但是说起来容易,做起来难。在这篇文章中,TechTarget 中国的特约虚拟化专家 Anil Desai 将介绍有关监控物理机和虚拟机性能的细节和方法。目的是帮助用户在虚拟化 性能和负载分配上做出更好的决定。 监控实际工作性能 当你衡量性能时,牢记重要一点,实际工作的活动能够得到最好的预测。比如,如果 你计划将一个生产业务线应用从物理服务器转移到虚拟服务器上,最好提供有关性能的资 料,尽量详细地描述生产负载的信息。或者,如果你计划开发一个新的应用,预期的负载 信息会有助于做出更好的决定。很常见的是,系统管理员采取折衷的事后解决办法。他们 说:“如果有性能方面的问题,用户投诉后,我们就加以解决。”但这就提出了一个如何 收集实际的性能数据的问题。 有些 IT 企业已经在集中性能监控工具上进行了投资,因此他们能够轻易地收集中央 处理器(CPU),存储器,磁盘,网络以及其它的性能数据。总体来讲,这些信息被储存 在中央存储器上,一旦需要,立刻就能得出相关报告。 另一种办法是手动。因为大多数操作系统都提供能够在不同的时间获取性能数据的方 法,因此需要做的是设置工具,用来收集相关信息。例如,表 1 列举出了使用微软的 Windows Performance Tool 随时间对服务器性能进行追踪。关键的性能数据,如 CPU、内 存、磁盘和网络利用率能够随时收集并进行分析。你所需要的就是对最高值和平均值予以 密切的关注。 TT 服务器技术专题之“虚拟化技术基础入门 ” Page 33 of 57 表 1:使用 Windows System Monitor 工具获取性能数据 运行压力测试(stress-testing) 如果你计划将一个现有的应用迁移到虚拟环境中去,你可以在迁移之前对其当前的性 能状况进行监控。但是如果你是考虑部署一个新的应用,那该怎么办呢?这个时候便需要 压力测试。 有一些应用把性能测试的功能作为源代码的一部分。不具备这项功能的应用可以选择 市场上已有的多种负载测试工具。这些工具从免费或低价,到完整的企业性能测试套件, 都有所选择。比如,微软提供的 Application Center Test 工具测试 Web 应用的性能,并 且基于若干有用的测试指标提供报告。 你可能通过在虚拟机上运行某个应用,并且基于各种不同的负载衡量常见操作的反映 次数来预测大概的性能。你的目标首先是保证能够支持可预见的负载。其次,保证不会出 现无法预料的稳定性或性能上的问题。 TT 服务器技术专题之“虚拟化技术基础入门 ” Page 34 of 57 使用基准程序(benchmark)测试 众所周知,虚拟化解决方法会产生一定程度的开销,从而导致虚拟机性能的下降。额 外的负载是因上下文转接和通过虚拟层重新引导请求的成本而产生的。遗憾的是,很难用 一个数字或公式来预测应用在虚拟环境中的表现将会如何。 复合性能基准(synthetic performance benchmark)测试可以提供帮助。这里的关键 词是“复合”,也就是说这些测试不会提供实际的使用信息。相反,在预设的工作负载 下,它们会给你硬件性能最大化的信息。基准程序测试工具的一个例子是 SiSoft Sandra 2007(SiSoftware 提供的一个免费版本)。其它的许多有用工具是第三方的厂商提供的。 重要的是选择一种工具,并且坚持使用它,而不是总在不同的工具间进行转换,因为来自 不同的产品(通常情况下是版本)的结果不能够进行精确地比较。 图表 2:安装了 SiSoftware’s Sandra 2007 的物理磁盘基准程序产生的结果 TT 服务器技术专题之“虚拟化技术基础入门 ” Page 35 of 57 一般的解决办法就是在物理硬件和虚拟机内运行相似的测试。对于在相同或者相似的 硬件配置中运行的测试,它们的比较相对可靠。表格 1 提供了一个例子,是通过在物理环 境和虚拟环境中测试某个单独的操作系统和应用程序而获得的典型的基准测试结果。每一 个子系统功能的量化比较可以帮助确定可预见的“虚拟平台开销”量。 表格 1:虚拟机和物理机运行数据比较 分配虚拟机负载 可移植性是虚拟化最重要好处之一。通常来说,把虚拟机从一个主机服务器移动到另 一个相当简单。理想情况下,一旦规划好物理机和虚拟机,就能够确定常用的资源配置要 求。基于这些细节,就可以在主机上混合搭配虚拟机,获得使用物理硬件的最好性能。 表格 2 是一些假定的虚拟机负载的高级要求。理想情况下,这些负载将会被分配开 来。例如,将 CPU 要求高的虚拟机安装在相同的磁盘集中的物理主机上。最后的结果就是 根据每一种负载的需求,对虚拟机进行更有效的分配。 表格 2:比较不同的虚拟机工作负载的高层次信息 做出更好的虚拟化决策 只有少数性能测试能长期保证虚拟机在虚拟环境中运行正常。将实际工作中的性能测 试数据与压力测试结果和复合基准程序结合,才能得到虚拟机最佳配置的方法。 TT 服务器技术专题之“虚拟化技术基础入门 ” Page 36 of 57 (作者:Anil Desai 译者:史静 来源:TT 中国) 虚拟硬盘有哪些类型? 虚拟机之所以很不错的部分原因是因为虚拟硬盘(virtual hard disk,缩写 VHD)非 常灵活。与物理硬盘相比,虚拟硬盘的特点是它可以在虚拟机中简单快速地创建、加载和 移除。虚拟硬盘还能支持不同的配置,这可以让你高效地利用物理硬盘空间。在本文中, TechTarget 中国的特约虚拟化专家和我们一起探讨 Microsoft Virtual Server 所支持的 不同类型的虚拟硬盘,以及如何使用它们。 虚拟硬盘主要有两种类型:固定大小虚拟硬盘(Fixed-size VHD)和动态扩展虚拟硬盘 (Dynamically-expanding VHD)。两种类型都有一个最大值,具体说明硬盘在基于 Virtual Server 的虚拟机中显示的大小。不过,固定大小虚拟硬盘会自动占用主机文件系统的物理 硬盘空间,而动态扩展虚拟硬盘只在需要的时候分配空间。总体上来看,动态扩展虚拟硬 盘操作起来更容易一些(特别是可用的物理硬盘空间有限时),不过固定大小虚拟硬盘的 性能最好(它可以避免文件增多所带来的一些开销和分片问题)。 连接硬盘是映射到主机上的一个单独的物理硬盘。这类硬盘主要用来将物理硬盘转化 为虚拟硬盘。首先,创建连接虚拟硬盘,然后将它转化为固定大小的或动态扩展的虚拟硬 盘。注意,如果你设置虚拟机可访问连接硬盘,那么虚拟机可以更改主机物理硬盘上存储 的数据。 TT 服务器技术专题之“虚拟化技术基础入门 ” Page 37 of 57 图 1 比较了三种基本类型的硬盘。 使用虚拟机的一个好处是可以将虚拟机恢复到原来的状态。在 Virtual Server 中, 你可以通过启用“撤销磁盘(Undo disk)”完成该功能。选中此框后,Virtual Server 会自动为虚拟机的每个虚拟硬盘创建一个附属虚拟机的.vud 文件。这将会使.vhd 文件为 只读文件,并且所有写入操作都会记入撤销文件中。当关掉虚拟机后,你可以保留撤销磁 TT 服务器技术专题之“虚拟化技术基础入门 ” Page 38 of 57 盘,应用变更(这将更新基本虚拟硬盘文件),或者不应用变更(这将有效地使虚拟机恢 复到启用撤销磁盘之前的状态)。 差分磁盘(differencing disks)要么是基于固定大小虚拟硬盘,要么是基于动态扩 展虚拟硬盘的。差分磁盘储存所有的变更信息,然后以另外的方式写入父级虚拟硬盘。你 可以基于父子关系来配置差分磁盘,这样会形成多等级的虚拟硬盘类型(见图 2)。需要 记住最重要的一点是,所有的父级虚拟硬盘文件都必须是只读的。差分磁盘可以增强管理 性(尤其是当多个虚拟机的配置相似时),而且可以大大减少对 Virtual Server 主机的 硬盘空间需求。缺点是差分磁盘可能比较难管理,而且复杂的磁盘等级可能会导致性能问 题(尤其当所有的虚拟硬盘物理文件都存储于同样的硬盘或阵列时)。在 Virtual Server 内,你可以将一个差分磁盘与它的父级合并,这个操作会应用所有的变更信息,或者更新 虚拟硬盘原有文件,或者建立一个新的虚拟硬盘文件。 虽然差分磁盘与撤销磁盘概念相似,但也有一些重要的区别。首先,差分磁盘是基于 单个虚拟硬盘,而撤销磁盘是针对整个虚拟机的。其次,差分磁盘可以用来创建不同等级 的虚拟硬盘,而撤销磁盘总是基于单个基本硬盘。最后,当关闭使用差分磁盘的虚拟机 时,你不可以选择应用或是不应用差分磁盘--合并操作必须用手动进行。你可以在一台虚 拟机上使用差分磁盘和撤销磁盘,但最好使用一个有用的命名规则,以免造成混淆。 TT 服务器技术专题之“虚拟化技术基础入门 ” Page 39 of 57 最后,记住这一点很重要,虚拟硬盘可以在虚拟机之间移动和复制(假设虚拟机都已 关闭)。而且,不同类型的虚拟硬盘之间可以相互转换。总体上来说,Virtual Server 虚 拟硬盘架构的灵活性可以帮助你管理好虚拟机,同时有效地利用硬盘空间。 (作者:Anil Desai 译者:涂凡才 来源:TT 中国) TT 服务器技术专题之“虚拟化技术基础入门 ” Page 40 of 57 如何规划服务器环境? 选择服务器是一项重大决策,通常费时费钱。错误的决策会导致不良后果。在本文 中,我们将首先谈谈一些在规划时需考虑的问题,然后进一步讨论如何在 Windows 和 Unix 之间做出选择。 规划考虑因素 在选择服务器时,一个关键的考虑因素是确定采用什么操作系统。这里有几点考虑: 服务器是否要增加到现有的服务器/计算机环境? 现有或所选的应用对 OS 选择有哪些限制? 把服务器增加到一个现有环境,通常意味着新服务器必须使用和现有服务器一样的操 作系统,这是因为应用有所限制以及现有操作人员的技能也有限。 如果需要新的应用,软件厂商可能会要求或强烈推荐使用特定的 OS。 Windows vs. Unix和Linux 除非你不得不使用某种专有的 OS(如某些 IBM 系统的 OS/40 或 Z/OS,甚至是 Novell 的 Netware),你一般有三种选择:Windows、Linux 或 Unix。这里说的 Unix 包括系统厂 商提供的所有 Unix 系统,如 IBM 的 AIX、惠普的 HP/UX 或 SUN 的 Solaris。同样,Linux 系统也有一些选择。 第一个选择是,使用 Windows,还是 Unix 或 Linux 的扩展系列。上面已经提到,有时 你可能会被迫只能用某种操作系统,但如果你可以自由选择,最好基于产品在扩展性、、 强健性和使用成本方面的标准,对产品进行比较。 服务器必须支持多少台客户机? 服务器选择的第一个基本步骤是判断服务器必须同时支持多少台客户机。不同的应用 使用的服务器资源量不同,在配置服务器时需要用到这些信息。 无论这些客户机和应用的数目是多少,都只是最初的数目。随着时间的推移,业务活 动的增多,或基于计算机的活动增多。这种自然增长使得系统的扩展性显得尤为重要。 TT 服务器技术专题之“虚拟化技术基础入门 ” Page 41 of 57 扩展性是衡量系统在不同方面升级能力的一个标准,包括处理能力、存储容量、主存 大小和网络连通性与带宽。与更换为更大的系统相比,可以进行扩展的系统是一个更省 钱、间断性小的选择。 扩展性很关键,但如何合理地估计服务器系统的扩展性,目前并没有太多的信息,也 没有什么实用的经验方法。而且,也没有既定的衡量扩展性的测试标准。 请注意很重要的一点,经过长时间测试、试验、再测试的 OS 具有更好的功能性。尤 其是多处理器的操作系统,历史越久的操作系统通常比新推出的系统提供更好的特性。 必须支持哪些应用? 在考虑哪个 OS 最适合你的应用时,最好将这些应用分成四大类: 文件、打印或通信服务器 数据库服务器 应用服务器 计算密集型服务器 这个分类并不是说不同类的应用不能同时存在于同一个服务器。但是,不同用途的系 统很容易达到它们的极限,因为很难在不同类别的应用之间确定资源分配优先顺序,除非 使用资源管理程序。 为了评估客户机的资源使用情况,首先弄清楚哪些客户机会使用每个应用。每个应用 可能需要服务器提供不同的资源组合。 工作性质 下一个要说明的问题是服务器支持的工作性质。它将用于关键业务型的应用,还是工 作组,部门范围或企业范围的应用,或是其它应用? 一台服务器可以专用于一个工作组、一个部门或整个公司内一定数量的应用。显然, 把所有需要的应用部署到同一台服务器看上去节省了成本,但这会增加系统的脆弱性,因 为一旦有一个应用造成系统崩溃,所有的应用将停止运作。 我们之前也提到过,当一台服务器运行不均匀的工作负载时,很难平衡各应用的资源 需要。尽管有可以解决这个资源分配难题的应用,但问题还是很难解决。 一般来说,最好是部署多台服务器,每台服务器专门负责一项或一小部分活动。这 样,可以降低系统的脆弱性,因为如果拥有多台服务器,万一一台服务器出现故障,你还 可以将工作转移到其它的机器上。服务器冗余性的使用是高可用性系统的基础。 TT 服务器技术专题之“虚拟化技术基础入门 ” Page 42 of 57 财务问题 虽然服务器和必要软件的购买成本明显是总成本的一个很大组成部分,不过我们也强 烈推荐在做购买决策时对总体拥有成本(Total cost of ownership,简称 TCO)进行评 估。 TCO 包括直接成本和间接成本。 主要直接成本包括: 软件和硬件的购买成本 运行和管理系统 应用开发、支持和通信 运行和冷却系统的电力费用 系统占用空间费用 间接成本更难以量化,包括系统停机的成本。停机成本不仅包括处理系统不可用性的 成本(例如失去生产力),还包括不可用性导致的软性成本。由于系统停机,客户或供应 商突然无法与你进行业务,可能转向你的竞争者。 当系统宕机或反应很慢时,用户可能什么事都做不了,只能等待系统恢复。更经常发 生的是,他们可能通过彼此通话,寻求帮助,来解决问题。无论是哪种情况,他们都要耗 费时间和资源来了解怎么做,这也会增加公司的成本。 对系统价格和性能进行比较是有基准(benchmark)可遵循的。但是由于这些基准是用 特定的方法来衡量服务器的,所以你的用法很可能是不同的。虽然结果的基准数是真实 的,但使用时必须要注意。建议只把这些基准作为一个指示,或是用于对大量的各种可能 进行筛选。千万不要单靠这些基准就做出购买决策。 具有较好扩展性的系统比那些不具有扩展性的系统要贵许多。但是,当你的服务器无 法运行必要的工作负载时,购买你所需的更多计算能力通常比升级更换系统更加便宜。 作者简介:René J Chevance是一名独立顾问,曾出任Bull公司的首席科学家。该公 司是一家位于欧洲的全球IT供应商。Pete Wilson是Kiva Design公司的首席科学家。该公 司公司是一家小型顾问和研究公司,专注于向多核计算平台转换的研究,尤其是嵌入式空 间计算机。在此之前,他在Motorola/Freescale工作了七年。 (作者:René J. Chevance and Pete Wilson 译者:涂凡才 来源:TT 中国) TT 服务器技术专题之“虚拟化技术基础入门 ” Page 43 of 57 虚拟化专家需要具备什么样的 IT 技能? 虚拟化技术被采用的比率不断增加,这意味着企业需要能够设计新架构、掌握新工具 和分析新结果的专业人员。本文中,TechTarget 中国的特约专家 Alessandro Perilli 将 探讨传统 IT 所需技能与虚拟环境所需 IT 技能的一些差别。 许多公司没有意识到,虚拟化技术要求更专业的技能。最后,公司采用系统工程师或 架构师的标准去聘用虚拟化专业人员,殊不知操作虚拟系统并非只是与操作系统和应用有 关。服务器虚拟专家尤其应该有一份令人印象深刻的简历。在招聘管理虚拟基础架构的 IT 专家时,应该看重什么?本文将对此提供一些建议。 技能全面的价值 普通的系统工程师对一种或多种操作系统有深入的了解,并且具有牢固却有限的网络 知识。但是虚拟环境要求更多。现在的虚拟化项目都涉及多种存储、网络和安全性等许多 需要认真考虑的方面,无论是从零开始建立新的基础架构,还是迁移已有的物理架构,情 况都是这样。可用的硬件更强大,虚拟机自动控制软件愈发成熟,这些方面也将更加重 要。 现代的虚拟化专家需要在多方面都具有很强的能力。他们应该了解一些主要技术之间 有何差别,例如在存储方面,存储区域网络(SAN)与网络附加存储(NAS)的差异,网络 连接方面的 Gigabit 以太网和 InfiniBand,验证模式的 Radius 和 LDAP,还有传统的机架 系统与刀片系统的比较。 对于每一个选项,虚拟化专业人员都必须清楚了解预见的实施问题和性能结果,以便 能根据客户的需求和预算做出最佳的选择。 显然,这仅仅是招聘经理需要了解的候选人所需具备的最基本知识。在筛选的过程 中,还要考察其它更专业的能力。 由于虚拟化还涉及到物理整合,因此企业必须谨慎设计和实行可靠的基础架构。作为 一个虚拟化专家,必须要有一些高可用性的不同解决方案,而且熟知每种方案将对虚拟网 络、操作系统或应用层有何影响。 同样,虚拟化专家必须掌握多种不同的备份技术,并且十分了解这些备份技术对虚拟 机性能和可用性有什么样的影响,以及哪种虚拟产品可以采用哪种第三方的解决方案。 TT 服务器技术专题之“虚拟化技术基础入门 ” Page 44 of 57 进一步而言,由于虚拟平台难免存在着漏洞,虚拟化专家必须有能力使用不同的脚本 语言填补该差距,这就需要他们自己具有一整套的专业技能。 如果某个项目的目标是为数百或上千的现有用户提供一个精瘦计算环境(通常叫做虚 拟桌面基础架构或 VDI),候选者就还需要有丰富的终端服务经验,以便能处理好一些复 杂情况,因为一个小小的失误甚至会严重破坏业务的生产力。 性能问题 架构师和工程师的最大差别在于他们分别负责完成不同的确切使命:设计好和维护 好。为了设计好一个虚拟基础架构,就必须有能力规划出一个具有扩展性、可靠和性能良 好的系统。如今,性能问题大概是服务器虚拟项目中最关键的因素了。 对性能影响最大的既不是硬件也不是你选择的虚拟平台,而是部署到每台虚拟机的应 用。每台虚拟机都提供一个独立的环境,但是内宿的应用会间接地影响物理资源的整体可 用性。例如,有的虚拟机内寄宿着一些很占内存的程序(如 OLAP 引擎),工程师必须为 虚拟机预留很大的 RAM 空间,或者有的虚拟机寄宿着许多 I/O 工作程序(如一些数据 库),那么工程师就不得不为虚拟机分配专门的物理磁盘。 大体上而言,资源要求不仅要看应用的类型还要看它的设计。常见的是,一个软件解 决方案从文字上看起来应该不会太占资源,实际中却相反。这可能取决于产品的内存泄露 缺陷情况。 考虑到上述情况,如果没有足够的技术背景,一个虚拟化专家很可能会把多个资源消 耗很大的虚拟机整合到一台宿主服务器,从而导致性能下降,而同时其它服务器的资源却 未得到充分利用。之后,虚拟机以及其应用所部署的环境特性将进一步让这种操作的后果 更加明显。 即使是最小的资源密集型软件,如果同时受到几千个连接访问,要满足它的资源需求 也是相当困难的。因此,最好的虚拟化专家都会研究客户的环境如何工作,监控每个应用 的工作高峰期,然后规划虚拟化基础架构,不在同一物理机部署相同高峰期的的产品。 由于上述这些原因,所以虚拟化架构师应该对不同厂商的各种应用有丰富的经验(从 数据库到邮件服务器,从网络服务器到应用服务器)。虚拟化架构师需要清楚每个产品需 要多少资源,它们在正常的环境下如何运转,哪些需要特别注意。 上面所说的这些都是在产品文档中找不到的东西,只有通过多年在数据中心的工作才 可以学到。 结论 TT 服务器技术专题之“虚拟化技术基础入门 ” Page 45 of 57 应用虚拟化的企业需要清楚,其虚拟化员工必须具备哪些技能,这些技能有什么价 值。如果只是将新的虚拟化架构师和工程师与传统的系统架构师和工程师进行比较,将严 重制约到企业寻找和聘用正确的专业人员。在短期和中期,如果企业的 IT 人员没有先进 的技术,将会影响虚拟架构的性能和企业的执行力,从而影响企业的业务,增加昂贵的外 包服务需求。为了避免这些,公司管理层和人力资源部门应该重新考虑一下他们所需员工 的条件,了解具有广泛技术背景的真正价值。 (作者:Alessandro Perilli 译者:涂凡才 来源:TT 中国) TT 服务器技术专题之“虚拟化技术基础入门 ” Page 46 of 57 P2V 迁移如何使数据中心转移简易化 P2V(Physical-to-virtual,物理到虚拟)迁移软件是 x86 虚拟化工具箱的新“瑞士 军刀”。的确,在数据中心必须转移时,它可以算是所有工具中最容易使用的一个。 物理地转移数据中心及其包含的所有资产是绝非廉价、简易或毫无风险的。除了可能 会由于计划不当、停机和数据丢失带来一些预料不到的损失以外,即使是对最老练的 IT 专业人员而言,数据中心迁移也是一项很艰巨的工程。这并不是一件需要经常做的事情, 也没有哪个团队专门来执行这样的任务。 但是,随着 x86 虚拟化技术的进步,对服务器和附加存储进行迁移日趋简易化,由此 降低了风险、减少了成本、缩短停机时间和降低暴露风险。你不必再通过货车转移物理机 箱,保佑转移后机器能够运行。虚拟化技术允许你通过 IP 网络进行大部分的转移操作, 过程灵活、省时、省钱,降低暴露风险。TechTarget 中国的特约虚拟化专家 James Geis 在本文中探讨了 P2V 迁移如何使数据中心转移简易化。 先减负,然后转移或迁移 过去,数据中心转移的可选几个方法之一就是通过货车物理转移服务器或资产。另一 个方法用的少一点,就是用把数据储存到磁带,在目标站点进行恢复,然后手工输入更新 的变更数据。 如今,更多强大的网络功能,加之 P2V 技术和网络存储,使得企业能够通过 IP 网络 传输整个服务器及其应用和数据。 现在,又有一些可供选择的方案进入了市场,它们取得的成功和集成都不仅限于 P2V 领域,还延伸到 P2P(物理到物理)、V2P(虚拟到物理)和 V2V(虚拟到虚拟)迁移等技 术领域。 x86 服务器的广泛接受性、集成简易性和服务器蔓延可能造成了大多数的数据中心在 连通性、HVAC、管理和技术转化等方面出现问题,因此,在数据中心转移的情况下,服务 器这种类型的资产成为围绕需要转移多少箱子的根源问题。 那么,在计划迁移的时候,哪些是受到影响的应用?什么是服务器和依赖应用之间已 经创建好的关联关系?迁移本身可能是更新技术或在这个过程中迁移到虚拟服务器的很好 时机。甚至,你可能会把它看作是对公司灾难恢复能力和业务连续性的一次测试或证明。 TT 服务器技术专题之“虚拟化技术基础入门 ” Page 47 of 57 使用 P2V 软件,通常可以保持源服务器和目标服务器同步,直到你决定好确切的同步 点为止。这样不用你担心服务器,应用程序或数据是否会同步的问题。迁移的时间要依据 数据量和站点之间的网络连接容量而定,因此,迁移是可以控制调节的。 与任何 IT 一样,数据中心迁移还带来了一些机会和附带的好处。如果你不知道确切 的资产清单和在数据中心内部有意识或无意识建立的一些相互依赖,那么,这将是进一步 走向面向服务架构(SOA)或信息技术服务管理(ITSM)模式的绝佳机会。 不仅要了解迁移列表,还应该分析数据中心的性能以及服务器如何紧凑地部署到迁移 组的问题。哪些资产是充分利用,有效利用了资源;哪些是闲置的资产,占用着空间,消 耗能量和浪费管理周期? 在迁移之前,就采用此步骤了解服务器的性能特征可以让你对资源分配与已耗资源有一个 很好的基本了解,并且能够找到进行技术升级和虚拟化的充分理由。 何人、何事、何时、何地、怎样以及为什么 当你有对所需的应用性能有一个很好的基本了解后,P2V 软件要求站点之间的网络容 量大,尤其是传输的数据量巨大或应用的数据变化率比较高时。当然,距离也是一个考虑 因素。 值得庆幸的是,P2V 软件并不是一个全有或绝无的概念,你可以自己选择要迁移的服 务器和迁移的方式。你可以决定服务器保持同步多久,及精确的断开同步时间点,或者交 换目标服务器和源服务器,确保原有的服务器在适当的位置。如果你在目标网站建立一个 新的环境,不论是物理还是虚拟,你都可以选择何地以及如何迁移服务器或者是慢慢地传 输服务器。如果你要引进新的硬件(异构或同构),那么服务器迁移决策要依容量/性能 而定。 这个软件和方法对用户和商家双方都是有利的,因为他们都希望,即使是采用了新的 硬件技术,数据流也是一致稳定的,而且可以议定对业务影响最小的断开时间。 不要什么都迁移 以我的经验,我见过在迁移过程中服务器整合率高达 14:1 的。一旦服务器运行性能 达到百分之几,服务器整合就不难实现了。 一定要了解迁移内容的容量要求,确保按照时间计划将基本的应用进行集成。数据中 心迁移从高层次的角度来看,应该是这样: 详细的物理库存:弄清楚你有什么,不要去猜。性能特点需加以考虑,这样如果实行 整合或虚拟化,你有一个基准。只物理转移你不得不需要物理转移的设备。 TT 服务器技术专题之“虚拟化技术基础入门 ” Page 48 of 57 物理还是虚拟?哪些可以虚拟迁移,哪些必须物理转移,哪些两者均可?谨慎的性能 监控可能会显示某一个应用需要一台独立的、非虚拟的服务器,不过你可以选用P2V软件 通过网络迁移服务器。在物理转移其他设备之前,逐步将服务器和应用迁移到新的站点。 做好备份计划:决定哪些数据可以通过存储阵列技术进行复制,以便做或完善减负计 划。如果可以复制(不论同步或异步),万一迁移不能完成,就可以增加你的恢复选择计 划。 x86 服务器平台受到广泛采用,产生了数据中心中的服务器蔓延。物理重新转移项目 的复杂性怎么强调也不算夸张。P2V 软件和虚拟化技术刚刚兴起,但出乎意外的成熟,可 以令物理迁移的过程不是那么的头疼和昂贵。 (作者:James Geis 译者:涂凡才 来源:TT 中国) TT 服务器技术专题之“虚拟化技术基础入门 ” Page 49 of 57 如何设计具有扩展性的虚拟化基础设施 当规划虚拟化基础设施时,将要进行虚拟化的服务器对处理器和内存的需求通常会作 为决定主机服务器的资源需求。但是,这样的数字有可能具有欺骗性,因为他们只代表了 在某一个时间点或者最多是某一个时间段内一个应用的资源使用,。 设计一个可以处理短期成长的虚拟化基础设施是很有可能的,但是真正建立一个强壮 的虚拟环境,长期的成长也必须要加以考虑。这就是为什么应用的扩展性特点不容忽视。 所有的应用具有一个共同的标准:如果一个应用的负载超出了节点的能力,那么该应 用以及(或者)其节点必须进行扩展,满足增长的需求。但是,并非所有的应用都具有相 同方向的扩展能力。有的应用的设计初衷就是为了进行水平扩展;对额外的节点进行自动 配置,使得应用能够分布其负载。有的应用在垂直方面做得更好,额外的资源分配到应用 所在的节点。 本文将讨论如何设计一个虚拟化基础设施,能够让应用同时在水平和垂直方向进行扩 展。 向上扩展(scale-up)或垂直扩展 数据库服务器几乎都要求进行垂直扩展。主流产品,如 Oracle 10g,,Microsoft SQL Server 和 MySQL,都支持各种能够进行水平扩展性的方式,包括连续复制(Continuous Replication),联合数据库设计(Federated Database Design)或数据库负载均衡 (Database Load Balancing)。 但是,所有的这些方法都分别存在以下问题: • 连续复制不使用实时的数据,并不是所有的数据库产品支持冲突解决。 • 联合数据库设计仅以最慢的成员速度来运行,只要有一个服务器宕机,整个数据库 就无法工作。设计联合数据库时,有办法确保高可用性(HA),但是成本很高,因 为这意味着为每一个联合成员服务器提供一个冗余的节点。 • 数据库负载均衡的工作原理是,同步实现一次性所有的数据库写入到多个节点,读 取操作由负载均衡节点的任何成员来进行。但是,如果写入操作完成不恰当,那么 读取操作可能会返回错误数据。 对一个数据库进行向上扩展为其自身带来挑战。如何为数据库提供更多的资源,最简 单的办法就是向上扩展。有一派观点认为采用向上扩展的应用不应该进行虚拟化,因为它 TT 服务器技术专题之“虚拟化技术基础入门 ” Page 50 of 57 们将最终消耗所有可用的主机资源。对于虚拟化向上扩展的应用而言,这种观点是正确 的,但仅适合于应用程序只安装在一台物理服务器上的情况。 虽然向上扩展存在这些问题,但是,对这种类型的应用进行虚拟化仍然不失为一个好 的办法。但是在设计基础设施时,需要认真和谨慎。 对于每一个向上扩展的现有应用而言,在单一主机上需确保有足够的资源来处理潜在 的应用负载。同时,如果应用需要额外的资源,还需要确保其他节点有足够的资源来应对 可能被迫从节点迁移的虚拟机。虚拟化软件允许创建策略,将具有向上扩展的应用的虚拟 机与主机服务器相连,最大化利用可用的资源。因为虚拟化创建了一个新的应用移动层, 所以,不需要购买一台巨大的服务器。相反,最开始可以使用小型机,随着业务的增长需 要应用进行扩展,再将垂直应用的虚拟机迁移到更大的主机服务器。这样同时可以解决水 平扩展应用的问题,但是,如果有更好的其他方法,建议不要采用这种解决方案。 向外扩展(scale-out)或水平扩展 每个人至少都可以意识到一种平行的应用类型,这样的应用可以很好地进行水平扩 展:Web 服务器。Web 服务器的工作是为网页提供服务,这个工作本身是一项资源轻的任 务。 随着网站使用的增长,Web 服务器所在的节点无法分配足够的资源给 Web 服务器,这 个时候,为网页提供服务就变成了一项资源密集型的任务。这种情况下,有两种选择: 一,为节点增加更多的资源,或者二,增加另外一个安放 Web 服务器的节点。 像之前提到的数据库应用,第一个选择是向上扩展,这对于增加一个 Web 服务器能够 服务的网页数量是最好的有效方法。但是,与数据库应用不同的是,Web 服务器可以很容 易就进行向外扩展,几乎没有或有很少的问题。这只是需要一个网站的数据能够放在共享 存储上,例如,NAS。而且,由于主要的 Web 服务器,如 Apache 和 IIS,都可以在共享的 文件系统、服务器或过程存储它们的状态(state)。这样,一个 Web 服务器就成为一个 数据访问网关。 这让 Web 服务器易于水平扩展:简单地增加另一个节点,安装在 Web 服务器上,然后 配置 Web 服务器访问现有的文件和状态数据。 像 Web 服务器这样易于向外扩展的应用最适合于虚拟化,因为它们利用了许多现有虚 拟化解决方案的优点,例如,共享内存访问、快速虚拟机自动配置和管理能力。设计一个 与向外扩展应用互补的虚拟化基础设施很简单,只是不要太过。只是购买所必需的。向外 扩展应用不倾向于需要 64GB 的 RAM 和八路处理能量。很多较小的虚拟主机服务器也可以 运行良好,较多的节点将提供额外的冗余,以防止主机服务器硬件出现故障。 TT 服务器技术专题之“虚拟化技术基础入门 ” Page 51 of 57 也有一些应用可以采用任何一种的扩展方式,例如文件服务器。如果存在这样的选择 时,最好是选择向外扩展,而不是向上扩展。理由是额外的节点会提供额外的冗余性。总 之,目前多数的应用可以采用任何一种方式进行扩展,但肯定存在更适合的选择。当设计 虚拟化基础设施时,请考虑好应用的扩展性特点,认真计划虚拟环境。重要之重是要注意 细节。 (作者:Andrew Kutz 译者:Shirley 来源:TT 中国) TT 服务器技术专题之“虚拟化技术基础入门 ” Page 52 of 57 如何建立虚拟服务级别协议 如果 IT 部门的目标没有很好的和它的客户相符合,会发生什么事情呢?当你和技术支 持热线的团队通电话时,你只需要问问就可以得到答案。 大部分 IT 公司遇到的棘手问题之一就是:如何定义他们客户的需求以及如何根据他 们的需求来提供服务。在这篇“如何来做”的文章中,我会详细地告诉你如何定义服务级 别协议,并且告诉你如何用它们来更好地管理虚拟化以及如何减少成本。 接受服务级别协议 尽管目前虚拟化变得越来越流行,但是仍然有许多人对它表示怀疑。你经常能够看到 人们对它的排斥,以及人们对使用虚拟机的潜在成本以及管理优势缺乏相应的知识。 使用服务级别协议是用来定义、划分优先级以及记录管理所必要的需求。IT 部门经常 在一个相对真空的世界中工作,他们只关心技术层面的东西。虚拟化这个领域也不例外— —创建和部署虚拟机比决定公司的策略更加容易。因此,问题包括:小到不能正确的管理 及实现用户的目标;大到那些巨大的成本,而这些成本并不会直接引起公司面临巨大的挑 战。因此,在采用虚拟化的决定中最基本的一点就是要能忍受一定由此带来的成本问题。 这一点要牢记在心。 当采用服务级别协议时,最重要的方面就是需要整个团队的参与。经理、IT 员工 、 最终用户都应当参与在这个过程中。一个典型的步骤如图 1 所示: TT 服务器技术专题之“虚拟化技术基础入门 ” Page 53 of 57 定义服务级别协议的目标和方法 服务级别级别的目标定义了服务级别的目标,而这些目标是 IT 部门所期待的。而方 法包括特殊的统计以及数据,这些统计和数据可以被评估来确定是否这个级别是适合的。 一些例子可能包括: 部署:提供一个新的虚拟机所需的时间 性能:能确保适当的应用和服务响应时间 可用性:验证虚拟机的启动时间 改变管理:有效的管理虚拟机的配置更新 一个定义好的服务级别协议应该详细地包括服务质量如何被测量。比如,启动时间的 目标对于一个特殊的虚拟机需要精确到 99.9%。这些可以用标准的企业管理工具来测量。 另外一个例子是:对一个虚拟机标准配置的部署目标从请求开始到结束共花费 4 个小时。 减少服务级别协议的成本: 如果你还没有创建过服务级别协议,那么也许你会考虑建立以及遵循相关方法所付出 的时间和精力。创建服务级别协议确实需要付出一定的成本,但是你同时也获得了巨大的 好处。很重要的一点就是你可以在一些方面很容易地看到相应的好处。比如,如果商业上 发现在部署完虚拟机后大大的加快了整个操作过程,在自动化方面上的投资就是值得的。 表 1 提供了一些假设的例子: 产品或服务 假设的投资 目前的成本和服 务级别 新的成本或服务 级别 所带来的好处 虚拟机的部署 在自动部署方面 所花的投资 每一个虚拟机 120 美元 每个虚拟机 40 美 元 节省了 80 美元 主服务器的部署 在自动服务部署 以及配置工具上 的投资 每个服务器 450 美元 每个服务器 125 美元 节省了 325 美元 完成基本的虚拟 管理需求所花的 平均时间 购买一个帮助控 制台系统 4 个小时 1.25 个小时 减少了 3.75 个小 时 服务期补丁管理 自动安全管理解 决方案 每年每台服务器 12 小时 每年每台服务器 2 小时 减少了安全风险 表 1 基于自动化的潜在节省成本的例子 TT 服务器技术专题之“虚拟化技术基础入门 ” Page 54 of 57 总结 那些经常发现自己与虚拟化相关的需求紧密结合在一起的 IT 公司可以从服务级别协 议中受益。当这些很正确地做好后,它将帮助他们始终可以满足用户的期待(例如虚拟机 的部署和服务器的加固)。总体上来讲,这将帮助整个公司对于虚拟化设施做出更好的决 定。 作者简介:Anil Desai 是美国得克萨斯州奥斯汀的独立顾问。他专长于评估、实现 以及管理解决方案基于微软的技术。他一直以来专注于微软服务器产品以及.NET 开发平台 并且他还管理过数据中心环境,这个数据中心可以支持成千上万的虚拟机。Anil 获得过 MCSE,MCSD,MCDBA 一级微软 MVP。 (作者:Anil Desai 译者:TT 中国 来源:TT 中国) TT 服务器技术专题之“虚拟化技术基础入门 ” Page 55 of 57 虚拟化安全利弊分析 长期以来,企业往往在部署新技术之后,才开始对安全方面进行思考。虚拟化提供了 如此之多具有吸引力的优点,所以,很容易被应用到 IT 架构中。但是,使用虚拟化技术 需要注意哪些安全问题呢?在本文中,TechTarget 的虚拟化专家 Anil Desai 将针对使用 虚拟化技术时存在哪些与安全相关的利弊进行探讨。目的是让你大致了解你应该知道的不 同类型的安全问题。 虚拟化技术的安全好处 与在物理服务器上运行相比,在 VM(虚拟机)上运行工作具有众多潜在的好处。这里 是对这些益处的总结,并且附有一些简要的解释: 由于虚拟机是在独立和隔离的环境中创建的,所以系统管理员能够很容易用各种方法 进行配置。比如,如果某个特定的虚拟机不需要连接到互联网或是其它生产网络,那么配 置该虚拟机时,就会对它与其他环境的连通性加以限制。这样,某一被感染的单独系统影 响大量用于生产的计算机或是虚拟机的风险就能够降低。 如果发生安全冲突(例如安装恶意软件),虚拟机可以恢复至某个特定的时间点。虽 然对文件和应用服务器进行疑难诊断时,这个方法可能不一定奏效,但是,对于包含相对 静态信息的虚拟机(例如网络服务器负载)来说,这个方法非常有用。 理论上讲,虚拟化产品是在虚拟机和底层的物理硬件之间增加了一个抽象层。这样能 够有助于限制可能发生的破坏量,例如,恶意软件试图修改数据。即使整个虚拟硬盘都被 毁坏,但位于主机上的物理硬盘也不会受到影响。这一点对于其它组成部分也适用,例如 网络适配器。 虚拟化通常被用来执行备份和灾难恢复。由于虚拟化解决办法与硬件独立开来,复制 或移动工作负载的过程能够被简化。一旦发现安全漏洞,位于一个主系统的虚拟机会被关 闭,同时,安装在另一个系统的另一个“备用”虚拟机启动。这样,在快速恢复对系统的 访问同时,可以为查找和解决问题提供足够的时间。 最后,通过虚拟化,跨多种操作系统分配工作负载变得更为简单。由于受到成本、能 量和物理空间的限制,开发者和系统管理员可能会倾向于在同一台电脑上安装一个包含许 多组件的复杂应用。通过将不同的功能(如中间件,数据库以及前端 Web 服务器)分布到 不同的虚拟环境中,IT 部门可以为每个组件进行最好的安全配置。例如,数据库服务器的 防火墙设置可能可以允许与中间层服务器进行直接交流以及与内部的备份网络建立连接。 另一方面,通过标准的 HTTP 端口,Web 服务器组件可能能够获得所需的访问。 TT 服务器技术专题之“虚拟化技术基础入门 ” Page 56 of 57 虚拟化安全的优势远远不止于此,不过,这算是对潜在的虚拟机安全提供了一个简明 的介绍。 虚拟化的潜在安全风险 和很多技术解决方案一样,使用虚拟机在安全方面存在潜在的风险。有些风险是系统 架构本身所固有的,而有些风险则可以通过改善系统管理得以减轻。采用虚拟机技术普遍 存在一个共同关心的问题,就是如何在一个单独物理计算机上安装各种不同的工作负载。 硬件故障及相关问题可能潜在地影响许多不同的应用和使用者。在安全领域,恶意软件很 有可能给系统资源造成相当大的负荷。这些问题很有可能影响到安装在同一台计算机上的 其它虚拟工作负载,而不仅仅影响一个单独的虚拟机。 虚拟化的另一个主要问题是,在虚拟环境中倾向部署许多不同配置的系统。在物理服 务器部署中,IT 部门通常会在部署之前执行一套严格的审查流程。他们保证只有得到支持 的配置才能安装在生产环境中,并且保证系统符合企业的安全标准。在虚拟机环境下,许 多没有支持的操作系统和应用可以由环境中的任何一个用户进行部署。对于 IT 部门来 说,通常很难知道他们正在管理什么,更别说如何管理一个复杂的异构环境。 当不同的工作负载在系统上运行的时候,主机的安全变得更为重要。如果一个未经授 权的使用者获取了主操作系统的访问权限,他/她便有可能将整个虚拟机复制到另一个系 统。如果这些虚拟机里包含敏感的数据,那么这些数据被破坏也只是时间长短的问题了。 同时,恶意的使用者可以通过改变网络地址,关闭关键的虚拟机以及进行主机层的重新配 置,造成很严重的服务中断。 如果考虑每一个子操作系统的安全性,就必须记住,虚拟机也很容易受到攻击的。如 果某个虚拟机能够访问生产网络,那么它通常会具有和物理服务器相同的许可权。不幸的 是,它们并不具备限制物理访问的优势,例如通常用于数据中心环境的控制。每一台新的 虚拟机都有潜在的安全问题,因此 IT 部门必须确保遵守安全策略,保持系统及时更新。 总结 以上分析很可能会给虚拟化安全图景蒙上一层阴影。解决安全处问题第一步是理解某 一具体技术存在的潜在安全问题。下一步是寻求解决方案。不过不要担心,总有可以找到 降低安全风险的方法。 (作者:Anil Desai 译者:史静 来源:TT 中国) 想了解更多关于虚拟化安全的信息,点击技术专题“虚拟化安全”,链接地址如下: http://www.searchsecurity.com.cn/guides/virtualization/index.shtm TT 服务器技术专题之“虚拟化技术基础入门 ” Page 57 of 57

下载文档,方便阅读与编辑

文档的实际排版效果,会与网站的显示效果略有不同!!

需要 6 金币 [ 分享文档获得金币 ] 2 人已下载

下载文档

相关文档