| 服务器虚拟化的历史、价值和问题 |
| 作者/andy519 时间/2006-10-26 10:22:00 类别/服务器 查看/ |
| 标签: |
|
什么是服务器虚拟化? 不同的厂商有不同的定义,但其核心思想是一样的,即它是一种方法,能够通过区分资源的优先次序并随时随地能将服务器资源分配给最需要它们的工作负载来简化管理和提高效率,从而减少为单个工作负载峰值而储备的资源。 由于大多数厂商宣传得较多的都是一种基于分区技术的虚拟化,导致很多人会理所当然地认为虚拟化技术就是分区技术。但实际上,虚拟化技术可以通过两个方向来帮助服务器更加合理地分配资源,一种方向就是把一个物理的服务器虚拟成若干个独立的逻辑服务器,这个方向的典型代表就是分区;另一个方向,就是把若干个分散的物理服务器虚拟为一个大的逻辑服务器,这个方向的典型代表就是网格。只不过网格现在还处在试验阶段,没有开始大规模商业应用。 本文主要阐述前一种服务器虚拟化的发展历史、带来的好处和存在的问题,以帮助我们的读者对虚拟化有一个更清晰的认识。 服务器虚拟化的历史 虚拟化技术源于大型机。大型机上的虚拟分区技术最早可以追溯到上世纪六、七十年代。早在上世纪60年代,IBM公司就发明了一种操作系统虚拟机技术,允许在一台主机上运行多个操作系统,让用户尽可能地充分利用昂贵的大型机资源。随着技术的发展和市场竞争的需要,大型机上的技术开始向小型机或UNIX服务器上移植。IBM、HP和SUN后来都将虚拟化技术引入各自的高端RISC服务器系统中。30多年来,应该说虚拟化技术以及在上述高端产品上的应用日臻成熟。但真正使用大型机和小型机的用户毕竟还是少数,加上各家产品和技术之间并不兼容,致使虚拟化曲高和寡。 随着X86处理器性能的提升和应用普及,人们开始考虑将这一技术导入用户面更广泛的X86平台。早在1998年,通过运行在Windows NT上的Vmware来启动Windows 95的做法让人们惊叹不已。许多发烧友和工程测试人员也开始在PC和工作站领域开始运用这种虚拟方案。近年来,人们开始把这团火烧向PC服务器。 当人们认识到服务器资源的利用率低下以及服务器整合的必要性越来越强,加之64位、多核X86处理器的出现,让单台X86服务器的性能越来越强大,虚拟化开始吸引更多厂商的关注。特别是在Intel和AMD相继宣布将推出内建虚拟技术的处理器,以实现硬件辅助虚拟化,从而改善原来仅通过软件实现虚拟化所带来的性能和稳定性方面的不足。 进入2006年,从处理器层面的AMD和Intel到操作系统层面的微软的加入,从数量众多的第三方软件厂商的涌现到服务器系统厂商的高调,我们看到一个趋于完整的服务器虚拟化的产业生态系统正在逐渐形成。这也使得在过去的一两年时间里,虚拟化开始成为广受关注的热点话题。 服务器虚拟化的价值 通过将服务器资源分配到多个虚拟机,虚拟化支持不同的应用,甚至不同的操作系统在同一企业级服务器上同时运行。每个虚拟机就像一台独立的服务器,但实际上在同一物理服务器内运行。在一台服务器上运行多个应用能够提高服务器效率,并减少需要管理和维护的服务器数量。当应用需求增加时,可以迅速创建更多虚拟机,从而无需增加物理服务器即可灵活地响应不断变化的需求。而且,利用虚拟技术,IT管理员可以在服务器之间移动正在运行的虚拟机,同时保持服务器持续可用。总体来看,各厂商宣传的服务器虚拟化能带来的好处主要有以下几个方面: 1. 减少服务器的数量,提供一种服务器整合的方法,减少初期硬件采购成本 2. 简化服务器的部署、管理和维护工作,降低管理费用 3. 提高服务器资源的利用率,提高服务器计算能力 4. 通过降低空间、散热以及电力消耗等途径压缩数据中心成本 5. 通过动态资源配置提高IT对业务的灵活适应力 6. 提高可用性,带来具有透明负载均衡、动态迁移、故障自动隔离、系统自动重构的高可靠服务器应用环境 7. 支持异构操作系统的整合,支持老应用的持续运行 8. 在不中断用户工作的情况下进行系统更新 9. 支持快速转移和复制虚拟服务器,提供一种简单便捷的灾难恢复解决方案 而且,随着虚拟化技术的创新发展和应用成熟,相信会有更多的价值被发现——因为虚拟化不是指某一种具体的技术,而是一种新的理念————如何最大化地利用资源、提高效率和降低成本。 服务器虚拟化存在的问题 我们说,虚拟化不是灵丹妙药,不可能解决所有的问题,也不是适用于所有的用户。而且,就目前的发展现状来看,服务器虚拟化仍然存在不少问题。笔者通过回顾各方观点资料,将其面临的一些问题总结如下: 1. 业界还没有统一的虚拟化标准平台和开放协议,提高用户投资风险; 2. 硬件级虚拟化和软件级虚拟化要相互结合才能使系统使用率最大化; 3. 用户导入虚拟化是一个长期的过程,绝非一蹴而就; 4. 虚拟化层面还比较低,目前技术上还达不到虚拟化的理想境界; 5. SOA是开发虚拟化应用管理软件的最好方式,但由于需要投入大量成本对已有软件进行改造,因此,只有非常有实力的ISV才会做,从而导致ISV的热情不高,制约其大规模的商业应用; 6. 虚拟化也存在一定风险,把多个应用放到一台服务器上类似于多个鸡蛋放在一只篮子,一旦出现重大硬件故障可能会影响到所有的应用,这种威胁很难消除,除非你在服务器出现故障前,有能力迅速将虚拟服务器转移到另外一台新的物理服务器上; 7. 改用虚拟数据中心,最大的困难在于应用迁移,可能是个费时又费钱的过程,而且会面临不少问题; 8. 服务器合并和虚拟化,使用户购买的硬件减少,从而导致服务器硬件厂商的销售量和收入下降; 9. 虚拟化并不是一个百分之百兼容的解决方案,它并不能和所有的应用程序或者所有硬件协调工作,大多数虚拟机都是模拟一个基本的PC环境,而不是让应用程序直接访问主机的硬件资源; 服务器虚拟化存在的问题 我们说,虚拟化不是灵丹妙药,不可能解决所有的问题,也不是适用于所有的用户。而且,就目前的发展现状来看,服务器虚拟化仍然存在不少问题。笔者通过回顾各方观点资料,将其面临的一些问题总结如下: 1. 业界还没有统一的虚拟化标准平台和开放协议,提高用户投资风险; 2. 硬件级虚拟化和软件级虚拟化要相互结合才能使系统使用率最大化; 3. 用户导入虚拟化是一个长期的过程,绝非一蹴而就; 4. 虚拟化层面还比较低,目前技术上还达不到虚拟化的理想境界; 5. SOA是开发虚拟化应用管理软件的最好方式,但由于需要投入大量成本对已有软件进行改造,因此,只有非常有实力的ISV才会做,从而导致ISV的热情不高,制约其大规模的商业应用; 6. 虚拟化也存在一定风险,把多个应用放到一台服务器上类似于多个鸡蛋放在一只篮子,一旦出现重大硬件故障可能会影响到所有的应用,这种威胁很难消除,除非你在服务器出现故障前,有能力迅速将虚拟服务器转移到另外一台新的物理服务器上; 7. 改用虚拟数据中心,最大的困难在于应用迁移,可能是个费时又费钱的过程,而且会面临不少问题; 8. 服务器合并和虚拟化,使用户购买的硬件减少,从而导致服务器硬件厂商的销售量和收入下降; 9. 虚拟化并不是一个百分之百兼容的解决方案,它并不能和所有的应用程序或者所有硬件协调工作,大多数虚拟机都是模拟一个基本的PC环境,而不是让应用程序直接访问主机的硬件资源; |
| 查看该用户更多文章>> |