应用分层

创建或克隆一个应用程序层

应用程序层是包含一个或多个应用程序的虚拟磁盘。通常,一个应用程序层包括一个应用程序。如果在一个层中包含多个应用程序,请将其限制为通常同时更新的应用程序。

从头开始创建应用程序层

本节将引导你完成应用程序层的创建,包括:

  • 需求和注意事项
  • 开始一个新的应用程序层
  • 部署包装机
  • 安装应用程序
  • 你可能会看到层完整性消息
  • 验证层和关闭机器
  • 加快微软Ngen.exe操作,如有必要
  • 完成图层

需求和注意事项

应用程序层包括一个或多个应用程序和相关设置。总是在应用程序层安装MS Office,而不是在操作系统层。

  • 防病毒应用:始终使用所提供的说明将您的防病毒应用程序放在App层在这里.要有策略地更新病毒定义文件。此外,还要注意文件标记功能,例如赛门铁克的虚拟映像例外工具。考虑基于主机的扫描引擎,并记住用户登录时的延迟。请务必扫描已发布的分层图像,而不是层。扫描只在用户访问Citrix虚拟应用程序和Citrix虚拟桌面时进行。
  • 办公室女士:使用这个配方安装Office。对于Office 2010及其后续版本的VDI部署,可以将KMS视为一种需求。对于Office 2007和更早的版本,考虑批量许可是一种要求。使用其他许可结构就不那么方便了,因为它们需要在每个桌面上激活每个许可。若要持久化用户设置和数据,请启用Office 365用户层存储。OST和流文件。不存储搜索索引。
  • 某些应用程序分层的方法:实际上,任何应用程序都可以分层,但如果您从我们在本文中总结的技巧开始,则有些应用程序更容易分层应用程序分层配方论坛。在开始之前,请参阅论坛,了解关于您正在分层的特定应用程序的提示和过程。
  • 需要添加本地用户或管理员的应用程序。在应用程序层安装应用程序时添加或更改的本地用户或管理员不会持久存在。操作系统层保留您添加的任何本地用户或组,但应用程序层则不会。要么在安装应用程序之前将本地用户或管理员添加到操作系统层,要么考虑将应用程序安装在操作系统层。

开始一个新的应用程序层

要创建一个可以安装应用程序的包装机:

  1. 登录到管理控制台并选择>应用程序层
  2. 点击创建图层行动酒吧。
  3. 在向导的图层细节选项卡中,输入a层的名字而且版本,这两个值都是必需的。您也可以输入其他值。
  4. 在“操作系统层”选项卡上,选择要与此应用程序层关联的操作系统层。
  5. (可选)“先决条件层”选项卡让你可以指定在该层上安装应用程序时必须呈现的其他应用程序层。只有当所需的应用程序不能包含在同一层时才使用这个。有关此高级特性的更多信息,请参阅下面的先决条件层。注意:向现有应用程序层添加新版本时,必须指定所需的先决条件层。他们是从一个版本延续到另一个版本。
  6. 在Connector选项卡中,选择一个连接器配置,其中包括您计划在其中构建层的平台的凭据和存储位置。如果未列出所需的配置,请单击添加一个。
  7. 在“打包磁盘”选项卡上,键入a文件名称对于包装磁盘,并选择磁盘格式。此磁盘用于打包机,即安装应用程序的虚拟机。
  8. 在图标分配选项卡上,选择一个图标分配给图层。这个图标表示图层模块中的图层。
    • 若要使用现有映像,请在映像对话框中选择一个映像。
    • 单击,导入新的镜像浏览并选择PNG或JPG格式的图像。
    • 如果你正在使用选择了卸载合成的连接器,并且你选择了App分层附带的一个图标,当层完成时,包装机尝试根据层的内容分配一个图标。
  9. 在确认和完成选项卡上,查看应用程序层的详细信息,然后单击创建图层.你可以在创建图层之前输入一个可选的注释。您的评论显示在“信息”视图“审计历史记录”中。创建打包磁盘后,Tasks栏将显示到您的管理程序中的打包磁盘的链接,您可以在其中部署打包机。
  10. 扩大任务栏在页面底部,双击包装的磁盘的任务。该任务展开以显示完整的任务描述,包括到此层的包装机发布位置的链接。

接下来,您可以为您的层部署包装机。

部署包装机

选择您的管理程序:

  • Citrix Hypervisor、Hyper-V、Nutanix或vSphere
  • Azure
  • 其他管理程序(网络文件共享)

Citrix Hypervisor, Hyper-V, Nutanix, vSphere

  1. 登录到您的管理程序客户机(Citrix hypervisor、Hyper-V Manager、Nutanix Prism或vSphere)。
  2. 登录App分层管理控制台,展开控制台底部的任务栏,可以看到当前的任务。
  3. 双击创建App层任务以查看完整的任务描述。
  4. 使用任务描述中提供的URL导航到您的管理程序客户机中的打包机。
  5. 包装机已开机。

现在可以在包装机上安装此层的应用程序。

Azure

设备打开Azure自定义部署模板,在这里可以创建包装机。

  1. 登录到Azure门户(https://portal.azure.com).注意:必须尝试下一步之前请先登录。
  2. 进入应用程序分层管理控制台,展开控制台底部的任务栏。打开创建App层任务的细节。
  3. 使用任务详细信息中的链接导航到Azure中的打包机。打开自定义部署面板。
  4. 设置Azure参数。
    • 打包机名称-必须符合Azure虚拟机名称要求。
    • Size—虚拟机大小。
    • 虚拟网络和子网——用于部署包装机。的值资源组位置匹配存储帐户位置你在连接器配置中配置的。如果这些位置不一致,则包装机部署失败。如果部署失败,可以将链接再次粘贴到浏览器中,然后重新开始。
  5. 一旦您的包装机启动,您就可以安装想要包含在该层中的应用程序。

其他管理程序(通过设备的网络文件共享)

  1. 在“网络文件共享”的以下目录中找到打包磁盘:\ unidedesk \打包磁盘

  2. 将打包磁盘复制到管理程序上的单独位置。当您使用磁盘创建一个新的虚拟机时,这为您的管理程序生成的文件提供了空间。

    重要的是:将磁盘复制到Finalize文件夹,直到可以完成。Finalize文件夹中的磁盘不能附加到您接下来要创建的新虚拟机。

  3. 使用打包盘作为启动盘创建虚拟机。

  4. 打开包装机电源。

一旦您的包装机启动,您就可以安装想要包含在该层中的应用程序。

安装应用程序

在包装机上安装应用程序时,将应用程序保留为用户登录时希望看到的样子。应用程序的状态是用户每次访问应用程序时的体验。

  1. 远程登录到包装机与用户帐户用于创建操作系统。
  2. 安装应用程序,以及应用程序所需的任何驱动程序、引导级应用程序或文件。
  3. 如果需要重启系统,请手动重启系统。包装机可以自动重启。如果您安装的应用程序影响引导级组件,则重新启动打包机作为完成该层的一部分。
  4. 确保包装机处于用户希望它处于的状态:
    • 如果应用程序需要任何安装后设置或注册,现在就完成这些步骤。
    • 删除所有设置、配置、文件、映射驱动器或应用程序要包括在包装机上。

验证层和关闭机器

一旦应用程序安装在包装机上,验证层已经准备好完成。当所有安装后处理完成时,一层就可以完成了。

要验证所有未完成的进程都已完成,可以运行关闭完成包装机桌面上的工具。

使用Shutdown For Finalize工具:

  1. 如果您没有登录到包装机,请以创建该机器的用户远程登录。
  2. 双击关闭完成图标。命令行窗口显示了详细说明层验证过程的消息。
  3. 如果在完成该层之前有一个未完成的操作需要完成,则会提示您完成该过程。如果必须完成Microsoft Ngen.exe操作,您可以加快Ngen.exe操作,本文稍后将详细介绍。
  4. 一旦完成任何挂起的操作,双击关闭完成图标了。这将关闭包装机,层准备定型。

在终结过程中可能看到的层完整性消息

下面的层完整性消息告诉你在层准备完成之前必须完成哪些排队操作:

  • 一个RunOnce脚本未执行-检查并重新启动包装机。
  • 正在等待安装后重新启动-检查并重新启动包装机。
  • Microsoft Ngen.exe正在后台运行。
  • 正在进行MSI安装操作-检查包装机。
  • 正在等待重新启动以更新引导磁盘上的驱动程序-检查并重新启动打包机。
  • 需要Microsoft Ngen.exe操作。
  • 软件中心客户端已配置为运行,但SMSCFG.INI仍然存在。要了解在层中部署SCCM的更多信息,请参阅文章,应用程序分层配方:如何在一个层中部署Microsoft SCCM

有关层完整性消息的含义以及如何调试它们的详细信息,请参见调试Citrix应用程序分层中的层完整性问题

你不能通过关闭机器来绕过层完整性信息,因为App分层软件会停止并将你送回包装机器,直到所有的过程都完成。

如果Microsoft Ngen.exe操作正在进行中,您可能能够加速它,如下一节所述。

加快微软Ngen.exe操作,如有必要

一旦安装了所有软件更新,您必须允许Ngen.exe重新编译net将字节码转换为本机映像并构造注册表项来管理它们。

Ngen.exe是微软本地图像生成器,它是net系统。Windows决定什么时候运行Ngen.exe这取决于正在安装的软件和Windows在配置中检测到的内容。

重要的是:

Ngen.exe正在奔跑,你一定要让它完成。一个中断Ngen.exe手术会让你失去功能net程序集或其他问题net系统。

通常情况下,Ngen.exe是在有前台活动时暂停的后台操作。如果你想加快Ngen.exe操作时,可以将任务放到前台,以便尽快完成任务。

把任务放到前台:

  1. 以管理员身份打开命令提示符。
  2. 微软。净\框架当前使用版本的目录:

    cd C:\Windows\ Microsoft.NET \ FrameworkNN \ vX.X。XXXXX < !——NeedCopy >

  3. 输入以下内容Ngen.exe命令运行所有排队的项目。此命令在构建程序集之前处理排队的组件安装。

    eq3

    Ngen.exeTask在命令提示符中移到前台,并列出正在编译的程序集。如果您看到编译消息,则没问题。

    您可以使用任务管理器的实例MSCORSVW.EXE正在运行。如果是,则允许它完成或运行Ngen eqi 3

    警告:

    不要重新启动以停止任务。允许任务完成!

  4. 确保所有Ngen.exe流程已运行到完成。
  5. 完成后,使用命令关闭虚拟机关闭完成桌面上可用的快捷方式。

完成图层

一旦软件已经安装,包装机已经验证和关闭,您就准备完成层。

hyper - v:

如果将合成在连接器配置中选择,则终化将作为合成过程的一部分自动发生。

Citrix Hypervisor, Azure, Hyper-V, Nutanix AHV, VMware vSphere

现在这个层已经被验证并关闭了,就可以完成了。

hyper - v:

如果您正在使用连接器将合成选中后,此结束过程是自动的,您不必执行这些手动步骤。

  1. 返回管理控制台。
  2. 选择>应用程序层,和你准备的层。
  3. 选择完成在操作栏。打开Finalize向导。
  4. (可选)在“脚本路径向导”页签中,您可以输入网络中某个服务器上运行一次脚本的路径。如果应用程序层是:
    • 弹性分配- Run Once脚本在应用程序第一次使用时运行。
    • 包含在分层图像中- Run Once脚本在分层图像第一次启动时运行。
  5. 点击完成完成图层的创建。
  6. 监视任务栏以验证操作是否成功完成。

一旦层验证,包装机被移除,以尽量减少存储空间的使用。

其他管理程序(网络文件共享)

现在这个层已经被验证并关闭了,就可以完成了。

  1. 将包装磁盘从包含包装机文件的文件夹复制到网络文件共享:\Unidesk\Finalize上的Finalize文件夹

  2. 返回到管理控制台。

  3. 选择>应用程序层

  4. 选择完成在操作栏。

  5. 监视任务栏以验证操作是否成功完成,以及该层是否可部署。

克隆应用程序层

您可以通过克隆层的特定版本来创建与现有层相同的应用程序层。在克隆过程中,系统会提示您输入特定于该层的信息。你可以通过添加版本来更新应用程序层。因为一个层只有一个版本被克隆,所以新层只有一个版本可以开始,即使克隆它的层有很多版本。

克隆一个图层:

  1. 选择要复制的应用程序层并单击克隆层在操作栏。克隆应用程序层向导打开层详细信息选项卡。
  2. 选择源层版本克隆。您可以从下拉菜单中选择所需的版本。
  3. 输入层的名称,如果额外的信息有用的话,还可以输入描述。描述是可选的。
  4. 如果额外的信息有帮助,请输入版本和版本描述。
  5. 在图标分配选项卡上,为新图层选择图标。
  6. 在“确认和克隆”页签,验证设置并单击克隆层按钮。

创建一个新图层,图层属性与源图层相同,除了图标。层优先级比源层的优先级高,因为每一个新的App层都比上一个创建的App层优先级高。新层的大小可能比原来的小,但这只是表明克隆过程中删除了空白空间。该层的功能与源相同。

你可以像使用其他图层一样使用新图层,它确实是以任何方式与原始层关联。

高级应用程序层选项

在创建和更新应用程序层时,请记住以下高级功能。

  • Run Once脚本
  • 层缓存
  • 层的先决条件

运行一次脚本

您可以在应用程序层中包含一个脚本,该脚本在系统启动时运行一次。该脚本在任何包含应用程序层的分层图像第一次启动时运行。如果应用程序层是弹性分层的,则在挂载应用程序层磁盘时运行Run Once脚本。Run Once脚本通常用于MS Office等应用程序,这些应用程序在第一次启动时需要激活许可证。

层缓存更快的应用程序层创建

你可以使用层缓存来加快层的创建时间。

缓存的工作原理

第一次创建应用程序层时,如果缓存大小设置为足够大的值,则由启动盘和空打包盘组成的模板将保存在缓存中。启动盘包括应用程序层设置中指定的操作系统层、平台层和前提条件层(如果有)。

每当你创建一个应用程序层,使用相同的操作系统层,先决条件层和平台层组合,应用程序分层软件重用模板,显著减少创建时间。

如果你创建的应用程序层使用了不同的操作系统层、先决条件层和平台层组合,应用程序分层软件会创建一个模板并将其添加到缓存中。

推荐的缓存大小取决于你的应用程序层需要多少操作系统、平台和先决条件层组合。组合的数量决定了缓存中保存的模板的数量。

要估计每个模板所需的空间:

  1. 选择图标用于每个操作系统、平台和先决条件层,并查找最大图层大小
  2. 添加最大磁盘大小。总数是该模板所需的缓存大小。

要估计缓存所需的空间,请将为每个模板确定的大小相加。

层的先决条件

很少前提层允许你在创建一个层或添加一个版本时在打包磁盘上包含一个或多个现有的应用程序层。

使用前提层只有在需要的时候,因为它们可以向层中添加一些部署当前应用程序不需要的东西。这种行为可能会在将来引起冲突。

何时使用先决条件层

需要先决条件层有以下几个原因:

  • 在当前层上安装应用程序时,需要存在另一个应用程序。例如,当您安装一个需要Java的应用程序时,而Java位于一个单独的层。
  • 当软件安装将设置添加到现有应用程序时。例如,在安装Office外接程序时,必须先安装Microsoft Office。
  • 当两个应用程序更改相同的注册表项时,第二个应用程序必须添加一个项,而不是替换它。例如,两个在Windows中都更改登录密钥的应用程序,如Citrix Agent和Imprivata。

请注意

其中一些问题还可以通过将两个应用程序放在同一层而不是使用先决条件层来解决。

前提层特征

前提层具有以下特征:

  • 先决条件层是不包括在他们用来创建的应用程序层。
  • 你创建的应用程序层和它的每个先决条件层必须使用相同的操作系统层。
  • 当添加版本到应用程序层,先决条件层是默认包含。每次添加一个版本到一个层,你必须选择一个或多个先决条件层。
创建或克隆一个应用程序层