何为服务器虚拟化技术?
虚拟化代表着把物理资源转变为逻辑上可以管理的资源、打破物理结构之间壁垒的一个巨大趋势。在未来,所有的资源都透明地运行在各种各样的物理平台上,资源的管理都将按逻辑方式进行,完全实现资源的自动化分配,而虚拟化技术是我们实现这一理想的惟一工具。
虚拟服务器技术正是虚拟化技术的代表,它为人们带来了前所未有的体验。关于服务器虚拟化的概念,各个厂商都有自己不同的定义,然而其核心思想是一致的,即它是一种方法,能够通过区分资源的优先次序,并随时随地能将服务器资源分配给最需要它们的工作负载来简化管理和提高效率,从而减少为单个工作负载峰值而储备的资源。用更加直白的语言来讲,所谓虚拟化技术应该有两个方向来帮助服务器更加合理地分配资源,一种方向就是把一个物理的服务器虚拟成若干个独立的逻辑服务器,使用户可以在这些看似独立的虚拟服务器上运行不同的操作系统和应用,这个方向的典型代表就是分区;虚拟技术的另一个方向,就是把若干个分散的物理服务器虚拟为一个大的逻辑服务器,使用户可以像使用同一台服务器的资源一样支配这些物理上独立的服务器,从而达到最大化利用资源的目的,这个方向的典型应用就是网格。
现在的虚拟服务器技术绝不是什么精巧的小玩意,它可以带来实实在在的好处。一套精心设计的虚拟化解决方案的作用包括简化IT管理、降低硬件成本、提高系统敏捷性、提高生产率等方面:
合并硬件管理,降低成本;根据需求情况进行资源分配;安装和配置新系统的时间极大缩短;应用程序以及操作系统的错误不至于影响系统的整体状态;降低异质资源管理的难度;在受控环境中方便测试和查错。
建议目前可以利用服务器虚拟技术带来更多好处的行业用户:为了获得上述好处,可以尝试引入服务器虚拟技术。
服务器虚拟技术的产生和发展
“虚拟化”并非刚刚出现的新技术,作为计算领域的一项传统技术,虚拟化的产生与发展可以追溯到上世纪60年代。“虚拟”一词最早来源于光学,用于理解镜子里的物体。之所以使用“虚拟”的概念定义一项技术,是因为人们希望虚拟机看起来和工作起来都与真正的机器一模一样,这同时也意味着,虚拟机并不是真正的机器,但是它能像真正的机器一样工作。
服务器虚拟化的最初应用是将利用程度较低的服务器硬件设备集中起来,构成由少量计算机组成的高效计算方案。从最初出现到现在,服务器虚拟化已经发展成为一种多用途的解决方法。
近来,Intel和AMD都争相推出dual-core甚至4-core的CPU以瞄准高性能服务器市场;同时,IBM和Sony等公司联合推出了有多达8个处理器单元的Cell芯片,它们掀起了高性能服务器向多核/多线程技术的转移,可以预见4-core或者8-core SMP不久将推向市场。另一方面,随着深亚微米技术的蓬勃发展,SoC体系结构在不久的将来将成为现实,到那时,拥有几十亿只晶体管的SoC将可能统治高性能计算领域。例如,如果技术能够降低到35nm,制造拥有多达32/64处理器的SoC将成为可能。因此,网络服务器必须采用多核SMP与SoC技术。这就要求网络服务器的体系结构必须做出变革,以拥抱新的硬件技术的发展。在关注硬件技术发展的同时,必须注意到虚拟化技术的迅猛发展。Intel和AMD分别开发了VanderPool和Pacifica技术,在底层硬件上就支持虚拟化。IBM、Sun Microsystem (例如Solaris Zone)、HP(例如HP research Lab’s SoftUDC)、VMWare(例如ESX server)、Transitive和Microsoft(例如Virtual Server)等也都大力发展服务器级的虚拟化技术,以实现对服务器的加固,特别是提高服务器资源的利用率、性能与故障隔离、安全性、管理性和可扩展性。因此,高性能的网络服务器也必须充分利用虚拟化技术的重大成果,迫切需要发展新的面向虚拟化技术基于多核与SoC技术的体系结构。
进入2006年以来,服务器虚拟化技术的队伍大大扩充了,从处理器层面的AMD和Intel到操作系统层面的微软的加入,从数量众多的第三方软件厂商的涌现到服务器系统厂商的高调,我们看到一个趋于完整的服务器虚拟化技术生态系统正在逐渐形成。它们在虚拟化技术方面不断推出的新技术、新产品,对虚拟化技术在用户端的应用,将起到很大的推动作用。