版权声明:本译文得到原文作者授权,未经原文作者以及本人同意,请勿转载本译文,否则保留追究法律责任的权利。
Part 1
关于App-V 精品博文翻译系列
此系列为微软定题,MVP领题撰稿系列。为方便更多喜欢阅读中文的中文读者,我计划在业余时间进行此系列的翻译。不过本人水平有限,且为初次翻译,还请大家多多指点和包涵,谢谢!
Part 2
译文: App-V实战体验
在我们展望App-V技术在新的一年里振奋人心的进展之际,请跟着我回顾一下其过去一年的各项活动。
我在过去的一年里花了很多时间去帮助初次接触App-V的客户。
全世界有2200多万份MDOP许可证得到购买,部分购买过这些许可证的顾客来自各个地方,而我有机会曾与之合作。
与我合作的客户来自政府部门或私营企业,他们有在中型电信电缆公司上班的(这些公司拥有5000多名员工,顾客多达200多万),也有在市级或中央政府部门工作的。所有研发经理的共同问题就是如何轻松管理程序,而他们面临的挑战则包括技术支持。
根据我的经验,程序管理在我们简单双击setup.exe或install.msi之前就早已经出现了。我们要了解的第一件事就是如何安装新程序,其中包括:所要安装程序的依赖项是什么;是否需要创建或修改自定义配置文件;所占空间多大;用户是否需要额外培训;桌面支持人员是否需要额外培训;该程序的寿命多长;如何对其进行维护或升级;以及一旦程序闲置,如何废弃等等。尽管有了应用程序虚拟化,我们仍然要考虑上述问题。
并且在将应用程序部署到一个环境之前,要先回答这些问题。我发现,客户解决这些问题的方式五花八门:有的客户请变更咨询委员会(简称CABS)帮忙,有的则在安装程序之前只简单地应用程序模版对其进行文档记录。由于流程级别不同,加上程序复杂度不一,将程序普及用户就变得极具挑战性。此外,一旦用户在安装新程序时遇到困难,桌面支持人员则通常需要花费不少时间来加速解决。
而App-V则为以上问题提供了相应的解决之道。下面我们来深入其中,看看App-V是如何解决那些让人痛疼的问题的,以及客户又是如何在其帮助下,自行解决的。
复杂性转移
当我每次向客户解释App-V的价值时,我都会告诉他们,我们在做复杂性转移。微软构建了用MSIEXEC来执行的可靠安装程序,并做得相当出色。然而,仍有许多程序要么选择使用高度自定义规则及多种自定义配置步骤将多个MSI串在一起,要么让客户全盘自行安装。例如:很多业务程序在安装完成后,还需要客户必须完成相关配置步骤。有时,这涉及到编辑配置文件,或将程序连接到后端数据库。
下一个复杂性就在于,一旦程序安装上了,桌面支持人员和管理员还需要相关专业知识才能快速对所装程序进行故障检测。对于此,有一个简单的方法,那就是:先统计有多少程序需要技术支持,然后看看安装这些程序时所需的设置和配置步骤又有多少,最后弄清楚排错的步骤数。现在各种组合以及用以支持大量程序所需的相关知识正呈指数级增长。有了App-V,序列化工程师(sequence engineer)只需将程序打包一次,并且不管是谁删除或刷新程序,安装也只需一次。从而,桌面支持人员不用再担心程序中断后如何重装或要如何设置等问题。由于所有的设置都是一样的,因此相应的排错也是一样的。但是,在我们能够确保得到最新型的复杂性转移之前,我们还需考虑几样东西。
确定您的领域专家
客户发现自己在序列化(sequence)程序的时候,由于要确保程序有效运行,则需要测试以保证将有效的程序送交给最终用户。由于虚拟化程序通常无需安装即可运行,因此非常需要熟知程序的内行人士来检测程序以保证其如期运行。对于此,我曾帮助过客户共同确定出领域专家来做检测,这些专家包括那些熟知程序安装与应用的专业人士。你当然最不希望用户在使用程序的时候,发现某项功能出了差错。若是真的出了错,那真让人崩溃,这意味着你得修复你的App-V包。接下来,我正要谈谈这个问题。
用户验收测试
像对待任何开发项目一样,你应该尝试对已序列化的程序进行用户验收测试。在我们某种程度上改变着程序部署到计算机的方式的同时,我们也在改变着开发人员最初有关程序安装的想法。当然,只要开发人员在开发程序时遵循了最佳方法,这通常不成问题,但总有例外。通过让专家用户验证并签名确认程序包可用,你就可以确保自己的序列化包验收成功,以便用户可以高效使用程序。
相同桌面支持流程
无奈地是,即使我们在某些方面为用户做得再细致,他们还是有可能遇到程序方面的问题,而通常这时候就需要向桌面支持人员求助了。对于传统的程序,我们需要提供详尽的排查步骤给用户(可惜这些步骤往往因程序的不同而不同),比如:要确认安装正确,有DLL注册记录;检查INI文件;确保文件扩展名关联正确等等,这等步骤可谓没完没了。可是,有了App-V,情况就大不一样了,排错的首要步骤可以精简到适用于所有程序。下面是一个排错列表:
1. 确保程序加载到客户端缓存。
2. 如果是通过SCCM部署的,则要确保App-V客户端配置正确,以通过HTTP流或可与SCCM客户端交流。
3. 如果程序问题依然存在,要重新加载程序到App-V 缓存。
4. 清空用户 PKG 文件。
5. 重新发布所有App-V程序。
当然此列表并非完全确凿而完整,它会因环境而异,不过不变的是,用App-V部署程序的步骤是相同的,这样一来,桌面支持人员就可以迅速提供相应的远程技术支持。
准备序列化环境
谈完App-V相关易受影响的流程及其各种潜在的核心作用后,下面我们来看看如何帮助客户准备序列化环境,因为这种环境是成功而有效打包程序的关键。
App-V序列化很大程度上受到IO限制。如果你在一个硬盘速度慢的计算机上进行程序序列化,你会耗费很多时间在进度条的等待上。另一种有点截然相反的考虑就是,序列化应该在虚拟机上进行,以便序列化环境可以快速重置起来。我见到很多客户直接在硬件上进行此步骤,但他们使用硬件所省下的时间很快在重装系统中耗尽。我个人的解决方法是,准备一个外接的10k转速eSATA硬盘,并长期保留。不管用虚拟机也好,物理机也罢,10k的服务类硬盘真地可以大大提高性能。
许多客户最终将序列化客户端定位在诸如Hype-V之类的后端服务器虚拟化技术上。这可用于64位和32位的虚拟机。由于硬盘技术通常基于SAN,因此IO性能会达到最佳。
序列化提示和技巧
还有更多的提示,如添加虚拟打印机驱动程序及ODBC连接,以及某些情况下,同时在Sequencer和虚拟程序包中修改注册表,以隐藏“q”盘驱动器(该盘是用于应用程序虚拟化的驱动器,专为App-V虚拟程序包提供影射的加载点)。
对于任何建立序列化环境的人,我强烈推荐您阅读有关序列化的最佳操作指南。 链接
沟通是关键
最后一点,也是我一贯建议客户要做的一点就是,一旦他们确定使用App-V来部署程序,那么就要学会沟通!有时候程序可能会出现异常,让用户一时半会儿还适应不过来,但客户要确保用户高度了解出现异常的原因是什么,让他们清楚打包程序的方式已发生改变,他们还需明白序列化的费用会因所投时间、精力的加大而增加 ,不过,得到的将是精简的部署及技术支持。此外,技术支持人员需要清楚虚拟化程序的特别之处在哪儿,以及这种特别之处为何显得如此重要。
对于App-V,任何大小的变化都会多多少少地遭受反对。因此,一份概述出App-V价值的好的沟通计划显得很重要,这会使App-V更加顺利有效地开展起来。
以上就是目前为止我的观察所得。我还会在接下来几周与大家分享更多,希望大家留意。随着 App-V 4.6的发布,我们正在进入一个令人兴奋的时期, 因为客户将可以在各自的整个领域范围内开始自己部署虚拟程序,其需要关注的关键特色功能包括:高达64位的客户端技术支持及与Windows7更高的一体化程度。
Part 3
关于原文作者
Part 3
关于原文作者
Daniel Nerenberg, App-V MVP
MCT, MVP, Consultant, Trainer, Speaker, LazyAdmin Daniel has been writing, speaking and consulting on a multitude of IT topics since 2004. He currently manages and writes for the popular community tech blog TheLazyAdmin.com.
MCT, MVP, Consultant, Trainer, Speaker, LazyAdmin Daniel has been writing, speaking and consulting on a multitude of IT topics since 2004. He currently manages and writes for the popular community tech blog TheLazyAdmin.com.
原文出处:
http://thelazyadmin.com/blogs/thelazyadmin/archive/2010/02/22/App_2D00_V-real-world-experience.aspx
http://thelazyadmin.com/blogs/thelazyadmin/archive/2010/02/22/App_2D00_V-real-world-experience.aspx
更多虚拟化精品文章欢迎浏览 http://virtualtom.blog.51cto.com