虚拟计算机一般称为
虚拟机,其作用是可以在一台电脑上通过软件的方式模拟出来若干台计算机,每台计算机可以运行单独的操作系统而互不干扰,可以实现一台电脑“同时”运行几个操作系统,相互独立进行工作。同时,这几个操作系统之间还可以进行互联,形成一个虚拟网络。
概述
虚拟计算机指通过软件模拟的具有完整硬件
系统功能的,运行在一个完全隔离环境中的完整
计算机系统。
优势
提高服务器利用率
不通过购买新的硬件来增加计算能力的一种方法就是采用虚拟机的方式。
从近一两年的应用情况来看,服务器的实际利用率正在向业界敲响警钟,这不仅仅发生在大型RISC服务器上,中小型Intel架构的服务器也面临同样的问题。目前来看,不通过购买新硬件设备来增加计算能力的一种方法就是采用虚拟机的方式,即
服务器虚拟化。
在大型机年代,
虚拟化技术可以实现在一台计算机中运行多个操作系统,每一个操作系统可以运行各自的应用,并能与现有服务器实现数据互传。从理论上说,每一台实际的计算机都可以分出几个、甚至几十个虚拟操作系统,即虚拟
计算机系统,提供用户所需要的特定服务,比如
文件服务器、
打印服务器、Web服务器等。
但是,基于x86平台的
服务器系统的虚拟化却是一个新兴事物。几年前,一些立志创新的人们才试图从x86芯片组中“压榨”更多空间。通过增设虚拟结构以期从机器中“压榨”出更多性能的虚拟化(Virtualization)就是他们努力的核心方向。
对企业的益处
虚拟化的优势在于它能将所有可用的计算和存储资源以
资源池的方式组成一个单一的整合视图,通过提供虚拟功能,可将资源看做一个单一公共的平台,最终资源池就像我们日常生活中的水和电一样,成为企业信息系统中的“公用设施”(Utility Computing)。
对用户的益处
对用户来说,虚拟计算资源带来的益处是明显的:首先提高了资源利用率,避免了复杂的
系统集成和大规模的设备占用空间,降低了投资成本;二是简化了管理的复杂性,能对整体系统运行环境进行统一监管和动态分配,从而降低了计算管理和运行成本;三是可以充分利用整体平台的优势,更好地发挥系统的效能;四是从总体上提高了全系统的可靠性。在未来的几年内,虚拟化将成为计算机技术中最具发展潜力的领域。
发展历程
虚拟计算机可以追溯到上世纪70年代。当时计算机的内存主要由
磁芯存储器组成,由于受磁芯本身特性和驱动时延等因素的影响,计算机
内存储器往往是做不大的,一般只有几KB到几十KB,因而严重影响了计算机的应用和发展。为此,人们提出了
虚拟存储器的概念。在具有
存储器的计算机中,
外存储器(磁鼓、磁带或
磁盘)被当做
内存储器使用。对用户来说,好像机器具有一个很大的
内存储器。虚拟
内存储器的
容量由计算机的地址结构和辅助存储器的容量决定,与实际内存无关。
在当时情况下,对于一些部件不完整性的计算机,可利用其他部件设施或别的机器的可公用部分,构成一个独立完整的运算操作,好像就是一台计算机,所以被称为虚拟计算机。
虚拟计算机和
虚拟存储器概念的提出和应用,对于上世纪70年代计算机和存储资源紧张的情况下要完成大型计算和数据处理、信息处理任务,的确起到了一定的积极作用。
随着大规模、超大规模集成电路的出现和应用,出现了
大型计算机和巨型计算机。
大型计算机的出现和应用给需要进行大量计算的部门带来福音,但同时一台大型机的价格也十分昂贵。另外安装大型机以后,对于一个单位而言,计算任务往往是不饱满的,机器的空闲率很高,因而虚拟化又成为讨得用户欢心的拿手绝活,通过虚拟化提高了大型机的有效使用率。
今天,越来越多的企业发现自己大量的服务器资源被严重闲置,服务器实际使用率亟待提高,管理亟待改善,人们开始把希望寄托在
虚拟化技术的应用上,希望利用虚拟化技术来解决服务器闲置的问题,提高服务器的利用率。虚拟化技术的应用,不仅是大型机的拿手绝活,已开始向中小型机及服务器延伸,这已成为新时期虚拟化技术研究应用的热潮,虽然这一时期和上世纪70年代虚拟化技术应用的内涵不同,但是虚拟化在
计算机技术中应用的目标却惊人的相似,都是围绕着如何提高计算机应用效率而发展的。
技术的发展与应用,总是和社会的需求分不开,目前信息系统发展到“大集中”时代,计算机虚拟化的应用发展,已经出现两大流派和技术。一是利用虚拟化来提高现有计算机、服务器的利用率,已开始从大型机向小型服务器扩展。世界范围内已经出现了代表性的厂商和产品。二是整合计算技术和网络技术,整合存储网络和开放的操作系统,形成一个柔性的企业级集约化的
虚拟机平台,按需设置,整合
数据中心多种应用和需求。这一方向是从建设开放、虚拟
计算平台理念出发,把虚拟计算机技术应用推到了一个新的水平。
解决方案实例
服务器虚拟化已经从大型机拓展到Intel平台,作为巩固
数据中心的方法,它正在掀起一股空前的流行趋势。目前在Intel服务器
虚拟机领域主要有三家公司在竞争,包括Vmware、Swsoft、Connectix公司,他们都提供了基于CPU利用率提升(PV,Processor Virtualization)的独特解决方案。
Vmware的虚拟服务器
VMware公司通过使用
虚拟机技术,提供了硬件级的虚拟,即VMware虚拟机为运行于
虚拟设备(VM)的操作系统映像提供了一整套虚拟的x86兼容硬件。这套虚拟硬件虚拟了真正服务器所拥有的全部设备——
主板芯片集、
CPU、
内存、
SCSI和IDE磁盘设备、
端口以及显示设备。每个
虚拟机都被
封装到一个文件中,因此可以实现工作负载的无缝移植。该软件还可以运行在NAS和SAN上。
VMware公司
服务器虚拟化产品有两种:GSX Server和ESX Server,都可以提供多操作系统支持。但这两个产品采取的实现方式不同,GSX Server在宿主操作系统上运行虚拟操作系统,比如在
Windows 2000系统中运行多个服务器
虚拟系统;而GSX Server的后继产品 ESX Server则基于专有的系统平台,使用分立的分区来隔离每一个虚拟系统,消除了GSX Server无法避免的性能瓶颈,且可以将计算性能动态分配给有计算任务的
虚拟服务器。为了实现这一目标,
管理员可以“接管”硬件,并且对每个虚拟机消耗的物理资源(下至某些
网络带宽以及每次
I/O访问)进行精确的控制。VMware技术能够实现分区隔离。有了安全隔离,某个分区上的恶意用户就无法破坏另一个分区上的系统。
到目前为止,VMware缺乏的是对64位及
iSCSI的支持。尽管VMware还没有
公开发布什么信息,但业界大多数人预测这些都应该在不远的将来得以实现。
Swsoft的虚拟服务器
SWsoft公司的Virtuozzo
虚拟系统与VMware公司产品的主要不同在于该技术虚拟了操作系统层。Virtuozzo系统使用所谓的
虚拟环境(VE),而不是一般的
虚拟设备(VM),即Virtuozzo在服务器上虚拟操作系统,产生了完全隔离的虚拟分区,实现了分区间功能、容错、命名和资源的隔离。
VE与众不同之处在于它能够虚拟操作系统分配
系统资源的基本内核,这种方法具有更少的管理费用和更高的扩展性。据SWsoft公司介绍,如果不考虑一台服务器上的
虚拟环境/分区数,那么这种方法给每台服务器增加的开支不超过1%。它能够在单个物理系统中打开上千个的VE,大大提高了系统的伸缩性。另外,Virtuozzo还具有加强的API管理以及对64位
安腾平台的支持功能。
Connectix的虚拟服务器
Connectix公司的虚拟服务器提供了两项核心技术功能:虚拟,即将硬件实现的功能用软件实现;二进制转化,即将一个指令集转化成为另外一个指令集(比如x86到PowerPC,或者x86到虚拟x86指令集)。它支持多个
虚拟机操作系统,可以在这些平台运行OS/2和NetWare,实现完全的驱动兼容。虚拟服务器还可以运行Linux、Windows NT、2000和Net Servers。
从表面上看,该产品与Vmware GSX Server类似,可以在宿主操作系统中运行多个服务器仿真程序。而Connectix公司坚持,这一产品功能和性能可与Vmware的高端产品Vmware ESX Server相比,具体性能有待权威机构进行测试。
如此看来,采用基于CPU利用率提升的解决方案的优势在于:可以在一台服务器上运行多个不同的操作系统;可以增加一台服务器的网络连接端口。