虚拟技术应用实践
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

1.2 虚拟化应用程序

虚拟化应用程序,又称为应用程序虚拟化,对应的产品是Microsoft System Center Application Virtualizatio for Desktop。该产品集成在Microsoft Desktop Optimization Pack工具中。

部署该产品后,应用程序虚拟技术将应用程序转变成集中管理的虚拟服务,客户端计算机不需要安装任何应用程序,通过应用程序虚拟化客户端代理在客户端计算机中建立一个“暗箱”,当运行应用程序时,需要什么应用程序就从应用程序虚拟化服务器上索取,应用程序好像在“真空”中运行,客户端计算机将不再需要安装复杂庞大的应用程序。该产品具有“集中管理、按需分配”的特点,可以将应用程序,如Microsoft Office 2003、Microsoft Office 2007重新封装成一个独立的数据包,客户端计算机用户可以在本地计算机中既使用Microsoft Office 2003,又使用Microsoft Office 2007,而不会出现程序兼容性问题。因此,可以有效地解决应用程序兼容性问题。与桌面虚拟化的不同之处是,应用程序虚拟化利用客户端计算机的计算资源。

1.2.1 应用程序虚拟化的组件

应用程序虚拟化系统由3个部分组成:虚拟化服务器、序列化服务器和虚拟化客户端。虚拟化服务器管理虚拟化的应用程序;序列化服务器测试和制作需要部署的应用程序;虚拟化客户端是安装在使用虚拟化应用程序的客户端计算机中的代理程序。

1. 虚拟化服务器

虚拟化服务器是指安装Microsoft System Center Application Virtualization Management Server的计算机。虚拟化服务器管理控制台,是应用程序虚拟化系统的控制中枢,完成部署应用程序的管理功能。

2. 序列化服务器

序列化服务器是指安装Microsoft Application Virtualization Sequencer程序的计算机,即重新封装应用程序的计算机,将安装的应用重新封装成新的功能包。建议管理员为同一个应用程序对应的不同操作系统创建不同的序列化包。如果在不同的操作系统之间使用同一个序列化包,可能会出现问题。

3. 虚拟化客户端

虚拟化客户端是指安装Microsoft Application Virtualization Desktop Client程序的计算机,或者称之为代理的客户端计算机。该代理将已经序列化完成的应用程序下载到本地计算机上运行。在首次运行时,仅下载完整应用程序包的5%~20%,客户端计算机即可运行应用程序。当客户端计算机中需要新的功能时,将从服务器中下载新的功能包。

1.2.2 应用程序虚拟化的工作原理

应用程序需要通过序列化服务器将应用程序制作成序列包,导入到服务器且发布后,客户端计算机即可接收到发布的应用程序。

客户端计算机不需要安装应用程序实体,仅安装虚拟化客户端程序即可。在客户端计算机的桌面上,将显示通过虚拟化服务器管理控制台发布的应用程序连接。用户第一次运行该软件后,采用动态传输方式从虚拟化服务器下载必要的“最少启动代码”,而要使用该软件其中的某项功能时,客户端计算机用户根据需要再从服务器中下载对应的功能包,而该软件的运行环境完全不会干扰到当前的计算机环境。换句话说,整个运行过程就像是放在一个“黑盒子”中运行,不干扰客户端计算机本身的系统。例如,注册表、磁盘等基础环境设置,其操作完全独立于操作系统和本地桌面上的其他应用程序,但是可以和客户端计算机桌面的其他应用程序交互。

虚拟化客户端从虚拟化服务器中接收必要的代码(5%~20%)即可正常运行应用程序,同时存储在客户端计算机缓存空间,具体传输的数据量会根据应用程序的不同而不同。例如,要使用Microsoft Word 2003软件,仅需要向客户端传送15MB的数据即可启动,而Microsoft Word 2003软件完整大小是数百MB。如果用户使用客户端缓存中不存在的应用程序功能时,自动将必要的代码从虚拟化服务器中索取并传送给客户端计算机。

从工作原理中可以看出,通过在企业中部署应用程序虚拟化可以有效解决应用程序兼容性的问题,帮助企业简单、快速地管理和部署稳定的应用程序,具备“统一管理、按需分配”的特点,提高客户端计算机系统的整体性能。

1.2.3 应用程序虚拟化的优点

应用程序虚拟化具备以下优点:

● 应用程序部署简单化。由于可在同一台计算机上并行运行同一应用程序的多个版本且不发生冲突,从而显著降低测试和部署新应用程序的复杂性、时间和费用。

● 系统管理简单化。管理员仅维护虚拟化服务器上的序列化组件,不需要对每一台客户端计算机进行逐台安装、管理以及维护。

● 提高客户端计算机的运行速度。应用程序部署在虚拟化服务器中,客户端计算机中没有安装应用程序,在操作系统启动时不会加载“多余”的系统文件,这样减少了系统资源的使用,从而提高了客户端计算机的运行速度。

● 提高安全性。由于应用程序不会安装在客户端计算机的操作系统上,从而改善了操作系统的总体安全性。应用程序仅对授权用户提供,从而防止未授权的连接访问。

● 随需访问。用户首选项(配置文件和其他设置)存储在网络中,因此,允许用户通过任意一台计算机访问应用程序、首选项和组件,不依赖于任何基础计算机应用环境。

● 备份与恢复简单。发布后的应用程序是一组文件,管理员可以根据需要复制并部署到任何一台服务器系统中。当灾难(服务器故障)发生时,迅速在其他计算机中部署应用程序,降低管理的复杂度,提高可用性。

1.2.4 应用程序虚拟化的缺点

应用程序虚拟化并不能将所有的应用程序打包,对于像浏览器、更新补丁包、打印机驱动、杀毒软件等基于系统底层的软件无能为力。如果企业部署远程应用使用的数据链路出现故障,客户端计算机使用的应用程序需要使用缓存客户端计算机没有的功能时,无法连接服务器且不能下载相应的功能包,将影响客户端计算机的使用。