【IT168 技术】桌面管理工作越来越充满挑战性。现在的员工比前几年更乐于接受新技术,这样做可以有效提高生产力,但也对技术提出了更多要求。员工需要更大灵活性才能获得更高生产力,无论在办公室,在家里,或者在路上,他们希望能在任何地点访问信息。人们希望安装自己需要的浏览器插件,安装家里打印机的驱动程序。人们希望随时通过 Google 搜索,通过 LinkedIn 建立社交网络,在线支付账单,并通过 Facebook 与亲朋好友取得联系。工作和生活之间的界限正在变得模糊 – 人们会在家工作,也会在办公室完成个人任务。
企业也需要面临一系列技术挑战。很多规章制度,例如萨班斯法案、HIPAA,以及很多地区所要求的数据违背通知法案使得安全危机的成本更高。恶意软件越来越狡猾,能在瞬间对组织产生巨大的影响,并可能造成数百万美元的损失。此外,目前的经济环境也让这一切雪上加霜。今天的 IT 组织必须用更少投入实现更多目标:预算大幅缩减,硬件更换周期进一步延长。另外很多组织遇到越来越多的临时工与合同工,这也造成了更多的供应与供应撤销等方面问题。尽管面临各种困难,IT 依然在用比以往更快的速度追赶业务逐渐加速的步伐。
问题在于,整个桌面是完全一体化的,硬件、操作系统、企业应用程序、用户安装的应用程序、插件、用户数据—全都捆绑在一起,因此难以在不影响其他内容的情况下管理和控制。例如,将操作系统锁定可以令其更安全,但也会让用户无法安装工作所需的应用程序或插件。不同的群体对不同组件负责,也让这一情况进一步恶化。硬件可能是员工自己的,操作系统则由桌面工程师提供,企业应用程序由部门提供,安全更新则由其他部门负责。
桌面虚拟化技术成为解决这些问题的灵丹妙药。通过将软件与硬件分离,桌面变得更易于管理。然而直接将桌面移动到虚拟机中并不能解决桌面管理的基本问题,依然需要由不同群体负责桌面的不同组件,这些群体所考虑的问题可能会产生冲突。以前,要解决这些问题必须锁定桌面,这会在减少功能的同时降低最终用户生产力;或者为每个用户提供专用的桌面实例,但这会导致映像数量剧增难以管理。其实还有另一种方法。
虚拟层
就像您可以使用虚拟化技术将软件与硬件隔离,您也可以用虚拟化技术将桌面隔离到虚拟化层,单独进行管理。这些层可以动态复合形成一个统一的系统视图。例如,您可以将桌面的操作系统分为一层,特定的企业应用程序分为一层,用户应用程序分为一层,用户的数据分为一层。每一层之间可以相互独立,并可分别进行管理,但用户看到和使用的与传统桌面没有任何区别。
将桌面划分为不同层可以让您获得更多能力。虚拟化的最基本能力来自抽象层,这样您就可以轻松添加、删除、更新,以及回滚不同组件。您还可以在不同实例中反复使用相同组件。针对桌面使用这样的技术,为您提供了一个灵活且能细化控制的基准环境,您可以为每个人使用同一个基准操作系统映像,然后在映像之上叠加自定义层。这意味着您不再需要分别管理、修补,或更新数千个相互独立的操作系统副本—您只需要管理一个所有用户共享的黄金映像—将您从繁重的管理任务中解救出来。同理,任何不需要分发给所有用户的应用程序—也许因为许可的限制—可以单独装在一个层中,然后有针对性地分发给需要该程序的用户。每次启动时,操作系统和应用程序层都需要访问黄金映像,因此可以确保系统状态总是最新的。如果映像出错或被恶意软件攻击,用户可以重启动自己的桌面,立刻既能恢复正常。这样还可以避免一些常见的 Windows “老化”问题 – 随着使用,Windows 系统的性能会越来越差。
将用户的个性化内容与系统放置在不同层,还可以让每个用户在 IT 提供的系统映像基础之上自动获得个性化环境(如果允许的话)。如果用户安装的应用程序与用户文档相互隔离,一旦因为安装不兼容的软件导致系统故障,只要对用户应用程序层进行恢复或回滚,无需其他操作即可恢复。系统的其余部分,包括对文档的改动不会受到任何影响。备份工作也会变得更容易、更高效—只需要备份用户层,您可以获得一个更精简的备份,只包含用户的个性化内容,而无需备份整个系统,进而从崩溃的系统恢复也变得更简单。通过将用户层拆分为用户数据(需要备份)以及临时数据(不需要备份),备份效率还可以进一步提高,因为可以跳过很多临时数据,例如网页缓存以及存储在邮件服务器上的电子邮件。
在系统设计领域,虚拟化的分层机制也叫做“关注点分隔”原则。对关注点进行分隔意味着将一个复杂问题划分为一系列可以分别解决的小问题,随后将每个部分的解决方法组合成整体解决方案。虚拟化是这里的关键技术,可以在实现分隔的同时依然提供整体的全局视图。
虚拟化分层使用的技术
目前市面上有很多产品可以将 Windows 环境分隔成不同的层。其中最基本的产品可供您将用户配置文件捕获为独立的层,将其与系统其他内容分别加以管理,因此举例来说,您可以在不同 Windows 环境中使用相同的用户配置文件。更高级的产品可以对应用程序分层,对每个层使用不同的策略,甚至可以自动将用户安装的应用程序捕获为一个独立的层。
实现分层的方法可以归结为三个主要领域:
1. 虚拟化技术提供怎样的视图:隔离的或分层的?
2. 谁能看到虚拟化视图:某一进程,一组进程,或整个系统?
3. 什么东西被虚拟化:文件系统、注册表、服务、内核驱动?
常见的分层技术包括修改注册表或使用重解析点实现用户配置文件重定向,应用程序虚拟化技术,内核驱动或文件系统筛选器驱动等。每种产品都有自己的优势和不足,但总的来说,越是对系统底层进行分层,该层与不同程序和系统服务的兼容性就会越好。因此采用能够对内核组件进行分层的技术能获得比针对用户层分层的技术更好的兼容性。
您选择的方法或产品必须能够支持您的目标用途。例如,如果使用了彻底锁定的桌面,用户无法安装应用程序,只能在“我的文档”或网络共享文件夹中保存内容,那么专门针对用户配置文件的产品就足够了。但如果希望获得更复杂的使用方式,希望在用户的个性化内容中增加安装的应用程序、插件,甚至打印机配置,那么就需要使用更专业的产品。
隔离与分层
对于虚拟化技术,必须区分两种重要特性之间的差异:隔离与分层。虚拟化技术有时会用于将进程与系统的其他部分隔离,这样主要是为了避免冲突或改善可管理能力。例如,通过应用程序虚拟化技术,可以将安装的应用程序打包为一个可执行程序,无需安装即可在多个系统上运行,同时不会与系统中安装的其他程序产生冲突。为此应用程序虚拟化技术需要将应用程序与系统的其他部分隔离开来,将其与必要的操作系统组件和库文件打包在一起形成一个单元。虽然通过隔离可以获得一定的收益,但也存在不足。有些程序难以,或者根本不可能进行虚拟化,例如需要使用内核驱动、服务、DCOM 等内容的程序,这样的程序就不能兼容或用于应用程序虚拟化技术。此外,因为应用程序被隔离,因此被虚拟化的应用程序之间通常难以实现交互,例如无法从一个虚拟化应用程序向另一个执行复制粘贴操作。分层技术无法实现隔离,但兼容性更好,并且更易于和其他组件交互。
从分层解决方案中能得到什么
在评估桌面管理用的分层解决方案时,您需要考虑这些事情:
1. 是否能与现有的管理技术配合使用?
就算使用分层解决方案,依然需要将其与现有的 IT 流程、工具、代理程序,以及技术相集成—至少在全面迁移到分层解决方案之前还需要这样做。好的解决方案应当可以让您将其与现有的负责补丁管理、更新,以及软件分发的基础架构相集成。
2. 是否会影响到用户原本的操作方式?
改变用户的行为要比改变 IT 流程更困难。用户需要获得更高生产力,因此好的分层解决方案应当不要求用户做任何额外操作。如果解决方案要求用户必须将文档保存到其他位置,在脱机使用之前必须执行一个额外的操作,或者限制了插件的安装,都将影响用户并降低生产力—甚至会导致用户对系统产生抵触,或试图寻找破解方法。
3. 解决方案是否允许不同的人管理不同的内容?
今天的桌面环境面临的一个实际情况是,不同的人需要负责不同的内容。好的分层解决方案应当是可分离的,这样不同的人就可以创建并管理系统的不同内容,而无需引入额外的流程或依存组件。
4. 解决方案是否能将 IT 成本分散给尽可能多的用户?
虚拟化技术,尤其是分层技术的一个主要驱动因素是能够将某件事情只执行一次,但在各种不同情况下尽可能多地自动应用给大量端点。好的分层解决方案应当使您可以通过简单的方法管理一个层,并将您的管理工作直接应用给其他用户,让您能够轻松扩展,改善响应速度,节约您的时间与金钱。
总结
虚拟桌面的管理当然会面临一系列挑战。就算将桌面迁移到虚拟机,您依然会收到来自用户、IT,以及业务的相互冲突的需求。桌面的整体化本质意味着您必须将其锁定,或允许定制并导致映像数量的剧增。通过虚拟化技术将桌面分层,这样既可对关注点进行分隔,系统可被拆分为多个可分别管理的组件,但最终用户依然能获得定制后的统一视图。从 IT 的观点来看,虚拟分层技术降低了管理工作的负担,可实现更简单的管理与更好的扩展性,同时用户依然可以获得所需的灵活性,执行为了获得更高生产力所需的任何操作。