【IT168 应用技巧】虚拟化已经从一种需要解释的异类技术演进成为我们大多数人生活中必不可少的可行技术。或许您早已将此技术应用于质量保证测试、开发、Web 设计或培训等领域。也许您是尝试新技术的前驱,通过部署虚拟基础结构,甚至部署使用 Amazon.com、Rackspace Inc. 或其他云计算供应商提供的“云”虚拟化的基础结构,引领技术潮流。
无论您当前是否正在使用虚拟化技术,只要您曾经使用过,您无疑都会认识到此种技术自身面临着一些挑战,正如维护物理硬件也处于两难境地那样。很多问题是不同的,但也有一些问题是相似的。
处理虚拟机监控程序
您或许听说过一度流行甚广的“虚拟机监控程序”(hypervisor) 一词。它已经成为虚拟化领域的一大热门术语。但虚拟机监控程序并非新鲜事物。只要我们使用过虚拟机 (VM),就必然使用过虚拟机监控程序。事实上,IBM 早在上世纪七十年代就创造了“虚拟机监控程序”一词。
虚拟机监控程序是一种软件,它为在系统上“虚拟”运行的来宾提供一套虚拟化硬件。它为来宾操作系统实现抽象的物理硬件。在过去几年中,在 x86 平台上运行的“1 类虚拟机监控程序”(包括 Microsoft Hyper-V 和 VMware ESX Server)得到了很大发展,这也导致产生一些混淆。大多数人使用的虚拟机监控程序(特别是对于客户端系统)被称为“2 类虚拟机监控程序”。两种虚拟机监控程序的差异何在?
1.1 类虚拟机监控程序直接在主机硬件上运行,而无需“主机操作系统”。Microsoft Hyper-V 和 VMware ESX Server 是 1 类虚拟机监控程序的常见例子。
2.2 类虚拟机监控程序需要运行主机操作系统。通常,2 类虚拟机监控程序主要作为用户模式应用程序在其主机操作系统上运行。Microsoft Virtual PC 和 VMware Workstation 是 2 类虚拟机监控程序的常见例子。
在大多数情况下,对于任何“始终运行的”工作负载(例如,虚拟化 SQL 或文件服务器),您都希望使用 1 类虚拟机监控程序。至少,1 类使用的资源要比 2 类少。但是,它可能需要用户登录才能启动(取决于主机),这对关键任务系统而言并非一个好的选择。相反,2 类虚拟机监控程序更加适用于“按需”虚拟机。这种类型的角色包括用于测试、应用程序兼容性或安全访问的虚拟机。
虚拟化可以节省哪些资源?
显而易见,虚拟化可以节省花费在硬件上的资金,但事情并非这么简单。如果您有两个可机架安装的 1U 规格的服务器系统,您运行这两个相同的工作负载,将它们都加载在一个 1U 系统中,当然可以节省前期的硬件成本,但其中还有奥妙。如果您使用这两个相同的服务器系统,两者可以在两台具有双核 CPU、2GB RAM 和 160GB SATA 硬盘的 1U 服务器上正常运行。
现在,您要将这两个工作负载放在一台具有相同硬件配置的服务器上运行,则必须将资源平分。对于 2 类虚拟机监控程序,您通常需要更多资源。
在规划如何将工作负载从物理机整合到虚拟机时,要考虑到 CPU、RAM 和硬盘所需的成本。虚拟化整合通常称为“垂直堆栈系统而不是水平堆栈系统”,因为您将消除对 OEM 提供的多个 物理系统的依赖。因而,您对单个系统的要求远高于虚拟化之前的要求。这会导致系统管理成本急剧攀升,而很多组织在仓促采用虚拟化技术时并未考虑到这一成本。