李溥岳
(大庆油田信息技术公司北京分公司,北京 100043)
计算机虚拟化技术,从本质上看是对计算机物理系统中的各种资源,利用软件的方法形成对于硬件技术以及相关特征的模拟,从而实现逻辑上多个并行系统的产生,并且彼此之间保持相对的独立,分别执行各自任务,从而实现对于工作效率提升的技术手段。该项技术于20世纪60年代提出,经过多年的发展日趋成熟。近年来,虚拟化技术已经广泛深入到多个应用领域之中发挥作用,通过多层面的虚拟实现,切实为IT资源利用的优化做出了突出贡献,并且对于IT系统的运维成本和管理成本控制构建了坚实基础。
随着技术的发展,当前虚拟技术领域中的应用,已经不仅仅是面向于某一个计算机部件实现虚拟化,而更多地是对整个计算机功能系统的行为展开模拟,并且通过这种软件层面的工作方式,实现在逻辑层面由一台计算机到多台计算机的转化。
就目前虚拟技术的应用发展状况看,常见的几种虚拟技术为平台虚拟化、桌面虚拟化以及应用虚拟化三种。其中平台虚拟化(Platform Virtualization)即常见的硬件虚拟化,是一种全面的虚拟化技术,将包括CPU、内存以及I/O组件在内的整个功能系统全部实现虚拟化。从本质上看,此种虚拟化技术在硬件和操作系统中间插入一个管理程序层,用以实现对操作系统的支持,即操作系统面向管理程序展开基于虚拟机的工作。
而桌面虚拟化(Desktop Virtualization)则是面向于用户的,支持用户通过网络对服务器实现访问,并且形成具有用户个性化的桌面环境。此种虚拟化技术进一步分为四种模式,即主机模式(Hosted)、集中管理模式(Centralized)、同步模式(Remote Synchronization)以及客户机模式(Client Hosted)。不同的工作模式需要不同的环境支撑,并且在应用方面显示出不同特征。其中主机模式和集中管理模式均以网络作为依据展开,由远程服务器生成面向用户的虚拟数据中心。但是集中管理模式更加注重镜像的生成,面向一个或者多个用户提供镜像副本,并且提供必要的服务以及支持操作。同步模式是服务器面向客户端提供镜像并且以对应策略加以同步,此种工作方式对于不稳定的网络环境而言十分适用。而客户机模式则支持客户端保留本地独立的桌面虚拟机,服务器只提供对主镜像的存储和管理,因此是一种对网络更少依赖的体系。
最后,应用虚拟化是面向于一定功能应用的虚拟化技术,其实现与计算机运算以及存储资源没有直接联系。从实现的角度看,应用虚拟化将应用程序进行重新封装,当运行的时候,将所有的文件和注册表操作重定向到一个特定的文件,从而实现应用程序对底层硬件的访问和控制要求。具体而言,其实现方式有两种,即应用程序流(Application Streaming)以及桌面虚拟化方式,前者是依据应用程序工作特征将其封装在一台应用程序流服务器中,执行的时候再推送到客户端;后者则是安装的虚拟机中,通过连接虚拟机来实现应用程序的虚拟。
随着大数据时代的到来,虚拟化技术越来越成为行业内关注的焦点,诸多大型公司纷纷推出给予云环境的虚拟解决方案,其中VMware公司的vSphere即为其中的典范之一。
首先从构成结构上看,VMware vSphere体系由ESXi主机群、IO以太网、存储设备群以及管理中心Center Sevrer共同组成物理层面的支撑环境。而从VMware vSphere系统的逻辑层面,则可以划分为虚拟化层、管理层以及接口层三个主要功能层面,分别展开对应的工作。
其中虚拟化层用以实现基础架构服务以及应用程序服务两个方面职能,并且基础架构服务可以实现面向硬件相关资源的虚拟、聚合以及重新分配等使用优化职能,进一步具体包括计算、存储以及网络三个方面的主要服务特征,实现整个虚拟环境中的云资源分配。而应用程序服务则主要用来确保应用程序本身能够得到妥善的安置和运行,重点从其可用性、安全性等方面着手展开。具体包括虚拟服务器动态迁移VMotion、系统资源动态分配(DRS,VMware Distributed Resource Scheduler)、为应用程序提供高可用性(HA,High Availability)、为重要应用提供不间断连续可用(FT,Fault Tolerance)等。而管理层则主要用于实现对于整个IT环境的配置以及管理控制,并且整个管理工作核心围绕虚拟化工作本身以及虚拟化产品和相关资源展开。最后的接口层,其存在价值主要是为用户提供访问数据中心的接口,包括命令行界面以及SDK自动管理用户机等相关功能模块。
VMware vSphere虚拟系统从性能角度看,一贯表现良好,通常来说会从CPU、RAM、存储、网络等几个方面展开对于VMware vSphere的综合评价。
在CPU的使用方面,虚拟技术的引入必然会在一定程度上增加CPU的开销,形成资源占用,并且在应用相对密集的情况下,这种对于CPU的占用会直接导致系统整体性能的降低和运算能力的削弱。与此同时,虚拟机本身也会对CPU的使用进行均衡的考虑,因此可以形成对于多核多处理器的充分利用,使其能够承担起大密度工作量的要求,因此从一个侧面来说,虚拟技术对于CPU的影响,主要是考察在任务密集的环境下是否会造成过于庞大的资源开销。而在RAM领域中,虽然虚拟层需要占用对应的内存才能展开运行,但是虚拟化本身并不会造成内存资源的贾少,同时还会提供更为完善的内存管理体制,因此对于内存的影响,从总体上来说甚至略有提升。
而对于存储方面,虚拟机需要实现操作系统的运行和支持,因此必然会占用存储空间,尤其是当多个虚拟机在同一台物理服务器上的时候,其间必须能够支持对于文件访问和存取的联合处理。但是这种对于存储空间的需求,在当前存储成本日益优化的环境下并不严重。最后,在网络方面,在大多数情况之下,网络吞吐虚拟化的工作量与网络吞吐量本身的体力负荷保持一致,同时VMware vSphere还可以提供一个更为完善的安全平台,用以实现安全隔离,因此从网络性能角度看,尤其是从安全角度看,实现了良好提升。
就当前虚拟技术的应用环境看,其需求呈现出逐步提升的总体趋势,加之相关技术不断成熟与完善,因此其未来的发展和整体生命力必然呈现出良好状态。实际环境中,应当积极发现体系中的需求,合理引入虚拟技术,切实衡量其工作价值,推动发展获取更多经济回报。
[1]王春海,刘晓辉.虚拟机实用宝典[M].北京:中国铁道出版社,2007.
[2]VMWARE公司白皮书.Wmware Infrastructure体系结构概述[S].北京:VMWARE公司,2008.