基于 App Layering 的分配

App Layering 允许您将弹性层分配给 AD 用户、组和计算机。

先决条件

  • 部署弹性层的任何映像上都需要 .NET Framework 4.6.2 或更高版本。
  • 您希望作为弹性层分配的应用程序层。

弹性层分配

您可以将特定应用程序层版本交付给组的成员,每次他们登录到桌面时。您将应用程序层版本分配为弹性层。然后,该层的副本存储在设备的网络文件共享中,并根据需要交付给指定的 AD 用户和组,此外还包括他们通过基础映像接收的层。

要使用此功能,您需要添加“弹性分配”以指定哪些用户和组接收应用程序层的每个修订版本。然后,您发布基础映像时启用弹性分层设置。

用户如何访问分配给他们的弹性层

当用户登录到其会话或桌面时,在以下情况下他们会收到一个弹性层:

  • 该用户(管理控制台中的 AD 用户)被分配了该层。
  • 用户所属的 AD 组被分配了该层。
  • 用户登录的计算机是接收弹性层的 AD 组的成员。
  • 用户登录的计算机与通过管理控制台分配给该层的 AD 组相关联。

当用户被分配了同一层的多个版本时

当一个层直接分配给用户,并且间接分配给用户的一个或多个组时,他们会收到最新直接分配的版本。例如:

  • 如果用户被分配了 版本 2,并且用户所属的组被分配了 版本 3,则用户将获得 版本 2

  • 如果用户所属的两个或多个组被分配了同一层的不同版本,则用户将收到该层最新分配的版本。

当用户在基础映像中和作为弹性层都收到一个应用程序层时

当应用程序层包含在基础映像中时,请勿将其作为弹性层分配给同一用户。如果用户确实以两种方式都分配了同一层,则无论版本如何,他们都将收到弹性层。

在基础映像上启用弹性层

您可以通过配置用于发布基础(分层)映像的映像模板来启用弹性层:

  1. 在管理控制台中,选择用于发布分层映像的映像模板。

  2. 选择映像选项卡,然后选择要启用弹性分层的映像模板。

  3. 从操作栏中选择编辑模板

  4. 选择分层映像磁盘选项卡。

  5. 弹性分层字段中,选择应用程序分层

  6. 选择“确认并完成”选项卡,然后单击保存模板并发布

  7. 使用您的预配系统分发虚拟机。

    当用户登录时,桌面会包含每个弹性应用程序层的图标。

将应用程序层弹性分配给 AD 用户和组

首次弹性分配应用程序层时,建议从 Notepad++GIMP 等简单应用程序开始。

  1. 以管理员用户身份登录管理控制台,然后选择层 > 应用程序层
  2. 选择您不打算包含在基础映像中的应用程序层,然后选择要分配的应用程序版本。
  3. 单击更新分配
  4. 选择要分配给用户的应用程序层版本。
  5. 跳过映像模板分配。这用于将层分配给映像模板。
  6. 选择要接收此应用程序层版本的用户和组。
  7. 查看您的选择,然后单击分配层

当用户登录时,他们会看到每个已分配的弹性层的图标。

通过计算机分配和关联将应用程序层弹性分配给用户

您可以通过将计算机添加到 AD 组或将计算机与 AD 组关联来将层分配给计算机。然后将应用程序层弹性分配给 AD 组。

分配给计算机的层可供成功登录到该计算机的每个用户使用。App Layering 服务每 10 分钟扫描一次计算机 AD 组成员身份和关联的更改。当用户登录时,他们会看到每个已分配的弹性应用程序层的图标。

使用 Active Directory 将计算机添加到 AD 组

假设您已在环境中启动了已发布的分层映像,您可以将计算机添加到 AD 组,并将弹性层分配给 AD 组。

  1. 使用 Active Directory (AD) 将计算机添加到 AD 组。

  2. 选择您不打算包含在基础映像中的应用程序层,并将该层弹性分配给 AD 组。

  3. 您可以等待 AD 传播更改并等待 App Layering 服务,或者您可以通过执行以下一项操作来强制 App Layering 服务更新其计算机组列表:

    • 等待 App Layering 服务检测到更改(默认情况下在 10 分钟内)。

    • 重新启动 App Layering 服务。

    • 重新启动 App Layering 服务计算机。

    • 运行 refresh.groups 命令:

      C:\Program Files\Unidesk\Layering Services\ulayer.exe refresh.groups

示例

您从一个 AD 用户、一个 AD 组和一台使用分层映像预配的计算机开始。

  • AD 用户:Kenya
    • Kenya 没有弹性分配。
  • AD 组:Marketing
    • Marketing 组包含成员 Kenya。
  • 计算机:ElasticTestMachine
    • ElasticTestMachine 基础映像包含 MS Office App Layer

在此示例中,您将 Chrome App layer 弹性分配给 ElasticTestMachine

  1. 在 AD 中,您将计算机 ElasticTestMachine 添加到 Marketing AD 组。
  2. 在管理控制台中,您将 Chrome App Layer 弹性分配给 Marketing 组。
  3. 当属于 Marketing 组的 Kenya 登录到 ElasticTestMachine 时,她会收到 MS Office App layer(位于基础映像中)和 Chrome App layer
  4. 当不属于 Marketing 组的任何用户登录到 ElasticTestMachine 时,他们也会收到这两个层:MS Office 因为它在基础映像中,Chrome 因为 ElasticTestMachineMarketing AD 组的成员。

管理弹性分配

您可以:

  • 添加弹性分配。
  • 更新应用程序层并弹性分配该层的新版本。
  • 删除弹性分配。
  • 调试弹性分配。

更新应用程序层及其弹性分配

您已向应用程序层添加了弹性分配,并且用户按预期访问该应用程序。发布了应用程序的新版本,因此您使用新版本更新该层。现在您需要将新版本分配给拥有该层的用户。

  1. 登录管理控制台并选择层 > 应用程序层

  2. 选择已更新的弹性分配应用程序层。

  3. 单击版本信息 > 更新分配

  4. 选择新版本。

  5. 跳过 映像模板分配选项卡。

  6. 弹性分配选项卡中,有一个已分配所选层不同版本的用户和组列表。选择要将新版本分配给的用户和组。

    注意:

    • 如果列表很长,请使用搜索字段筛选结果。
    • 如果列表为空,请单击名为显示已在此版本的 AD 用户和组的复选框。将出现一个灰色名称列表。这些用户已分配了该版本。
  7. 在“确认并完成”选项卡上,验证要接收新版本的用户和组。

  8. 单击更新分配

删除层的弹性分配

  1. 登录管理控制台并选择层 > 应用程序层

  2. 选择要删除分配的应用程序层,然后选择删除分配

  3. 选择要从中删除层的已分配模板。将列出该层的分配。

    如果列表很长,请使用“搜索”字段筛选结果。

  4. 在“确认并完成”选项卡上,验证是否选择了正确的映像模板以接收新版本。

  5. 单击删除分配

弹性层的操作系统层切换

为了获得最佳结果,当将应用程序层作为弹性层分配时,您可以分配与分层映像中使用的操作系统层相同的应用程序层。但是,使用这种传统方法,您可能需要为某些应用程序层创建和管理额外的副本,每个副本对应一个您部署的操作系统层。

为了获得更大的灵活性并减少重复应用程序层的需要,您可以将弹性层分配给使用不同操作系统层的分层映像上的用户。您可以通过在应用程序层属性中选择允许此应用程序层弹性分配给所有分层映像,无论操作系统层如何复选框来启用此功能。切换操作系统层时,所有弹性分层限制均有效。

何时可能效果良好

适用于可以安装在任何操作系统上的简单应用程序。示例:Notepad++、WinRAR、7Zip

何时可能效果不佳

适用于安装依赖于已安装操作系统的复杂应用程序。示例:

  • 如果您使用 Windows 11 操作系统层创建应用程序层,并且映像分配为 Server 2022 操作系统层,则应用程序可能无法按预期工作。
  • 如果新操作系统没有安装正确版本的 .Net,则依赖于特定版本 .Net 的应用程序可能无法成功运行。

注意:

  • 建议您使用相同的操作系统类别和彼此接近的操作系统修订版本。示例:您可以使用两个相隔一周的 Windows 11 25H2 修订版本。

弹性层兼容模式

默认情况下,通过 App Layering 分配的弹性层在用户登录后组合到映像中。如果弹性层加载不正确,请尝试启用弹性层兼容模式。启用兼容模式后,弹性层会在登录完成之前开始加载。

注意:

  • 使用已发布的应用程序时需要兼容模式,因为层必须在启动前挂载。
  • 除非弹性层未按预期工作,否则建议禁用兼容模式。
  • 在太多层上启用此设置会减慢登录时间。