StoreFront

升级 StoreFront

升级将保留您的 StoreFront 配置,并且保持用户的收藏夹完好无损。相比之下,卸载 StoreFront 会删除 StoreFront 和关联的服务、站点、收藏夹(在独立服务器上)以及关联的配置。

支持的升级路径

您可以从以下版本升级到 StoreFront 2402:

  • StoreFront 2311
  • StoreFront 2308
  • StoreFront 2203 LTSR(任何 CU)
  • StoreFront 1912 LTSR(任何 CU)
  • StoreFront 3.12 LTSR CU9

要从 3.12 CU9 之前的版本进行升级,必须先升级到 StoreFront 3.12 CU9。

警告:

从 1912 之前的版本升级时,部署中的所有桌面设备站点都会自动删除。作为替代方案,Citrix 建议对所有未加入域的用例使用 Citrix Workspace 应用程序 Desktop Lock

须知

  • StoreFront 不支持包含不同产品版本的多服务器部署,因此,授予对部署的访问权限之前,必须将服务器组中的所有服务器升级到相同的版本。
  • 多服务器部署不支持同时升级,必须按顺序升级服务器。
  • 在 StoreFront 升级运行之前,它会执行一些升级前检查。如果任何升级前检查失败,升级将不启动,并且会通知您失败。您的 StoreFront 安装保持不变。修复故障原因后,重新运行升级。
  • 如果 StoreFront 升级本身失败,则现有 StoreFront 安装可能会丢失其初始配置。将 StoreFront 安装还原到功能状态,然后重新运行升级。要将 StoreFront 还原到功能状态,请考虑以下方法:
  • 在 Citrix Virtual Apps and Desktops metainstaller 中发生的任何 StoreFront 升级失败都将在对话框中报告,其中包含指向相关故障日志的链接。

准备好升级

在开始升级之前,我们建议您执行以下步骤,以防止升级失败:

  • 升级前规划备份策略。
  • 确认您正在从受支持的版本升级。
  • 从 Citrix Web 站点下载 StoreFront 安装程序。

升级单台 StoreFront 服务器

  1. 通过创建 VM 快照备份服务器。
  2. 导出现有 StoreFront 配置。如果一个服务器组中有多台服务器,则只能从一台服务器中导出服务器组配置。如果已在它们之间传播所有更改,服务器组中的所有服务器将保持相同的配置副本。使用此备份,您可以轻松构建新服务器组。这样在出现问题时就可以轻松还原配置。请注意,您只能将此备份还原到运行与从中导出的版本相同的服务器上。
  3. 如果您对 C:\inetpub\wwwroot\Citrix\<StoreName>\App_Data 中的文件(例如,default.ica 和 usernamepassword.tfrm)进行了修改,请为每个应用商店备份这些文件。升级后,您可以还原它们以恢复进行的修改。
  4. 请通过从任何负载平衡器中删除服务器或者以其他方式阻止连接来阻止用户建立连接。
  5. 重新启动服务器。
  6. 确保没有正在运行的应用程序,包括 StoreFront 管理控制台、命令行和 PowerShell Windows 或者任何其他可能锁定 StoreFront 文件的应用程序。这样才能确保在升级期间,安装程序可以访问所有 StoreFront 文件。如果安装程序无法访问任何文件,则将无法替换这些文件,并且升级会失败,从而导致删除现有 StoreFront 配置。
  7. 确保在包含 StoreFront 文件的目录中没有打开任何 Windows 资源管理器或命令提示符。
  8. 禁用所有防病毒应用程序。
  9. 运行所需版本的 StoreFront 的安装文件。

升级 StoreFront 服务器组

升级 StoreFront 服务器组涉及使用其中一个服务器从组中删除其他服务器。删除的服务器会保留与该组相关的配置,从而防止其加入到新的服务器组。必须先将其重置为出厂默认状态,或者在其上重新安装 StoreFront,才能将其重新用于构建新服务器组,或者将其用作独立的 StoreFront 服务器。不支持同步升级 StoreFront 服务器组中的服务器。

示例 1:在计划维护停机期间升级三节点 StoreFront 服务器组

这描述了在计划停机期间升级由三台服务器 A、B 和 C 组成的 StoreFront 服务器组。

  1. 通过禁用负载平衡 URL 来禁用用户对服务器组的访问。这将阻止用户在升级过程中连接到部署。
  2. 使用服务器 A 从组中删除服务器 B 和 C。

    服务器 B 和 C 现在从服务器组“孤立”。

  3. 请按照升级单台 StoreFront 服务器中的说明升级服务器 A。
  4. 确保服务器 A 已成功升级。
  5. 在服务器 B 和 C 上,卸载当前安装的 StoreFront 版本并安装新版本的 StoreFront。
  6. 将服务器 B 和 C 加入升级后的服务器 A,以创建升级后的服务器组。此服务器组由一个升级后的服务器 (A) 和两个新安装的服务器(B 和 C)组成。

    加入现有服务器组过程会自动将所有配置数据和订阅数据传播到新的服务器 B 和 C 中。

  7. 检查所有服务器是否正常运行。
  8. 通过启用负载平衡 URL 来启用用户对升级后的服务器组的访问。

示例 2:在非计划维护停机期间升级三节点 StoreFront 服务器组

这描述了在非计划停机期间升级由三台服务器 A、B 和 C 组成的 StoreFront 服务器组。

升级服务器组之前:

  1. 使用 Export-STFConfiguration导出 StoreFront 配置。此备份是必需的,因为服务器在该过程的稍后阶段将进行出厂重置,这会删除配置数据。
  2. 使用 Export-STFStoreSubscriptions 从服务器 A 中导出订阅数据。此备份是必需的,因为服务器在该过程的稍后阶段将进行出厂重置,这会删除订阅数据。请参阅管理应用商店的订阅数据
  3. 请通过将服务器 C 从负载平衡器中删除来禁用用户对该服务器的访问权限。这可以防止用户在升级过程中连接到服务器 C。负载平衡器继续向服务器 A 和 B 发送请求。
  4. 使用服务器 A 从组中删除服务器 C。 服务器 A 和 B 继续提供对用户资源的访问权限。服务器 C 现在是从服务器组中孤立的,并且正在重置为出厂状态。
  5. 使用 Clear-STFDeployment 将孤立服务器 C 重置为出厂默认状态
  6. 使用 Import-STFConfiguration 导入 StoreFront 配置(以前导出的)到服务器 C 中。服务器 C 现在具有与旧服务器组相同的配置。以后没有必要重复此步骤。只有一台服务器需要配置数据的副本才能将其传播到加入该组的任何其他服务器。
  7. 请按照升级单台 StoreFront 服务器中的说明升级服务器 C。服务器 C 现在具有与旧服务器组相同的配置,并升级到新版本的 StoreFront。
  8. 导入订阅数据(以前导出的)到服务器 C 中。需稍后再次重复此步骤。只有一台服务器需要订阅数据的副本才能将其传播到加入该组的任何其他服务器。
  9. 使用服务器 B 重复执行步骤 3、4、5 和 7(请勿重复执行步骤 6)。在此期间,只有服务器 A 为用户提供对资源的访问权限。因此,建议在安静的工作期间执行此步骤,此时 StoreFront 服务器组上的负载应该是最低的。
  10. 使用加入现有服务器组流程将服务器 B 加入到服务器 C 中。这将为当前版本的 StoreFront(服务器 A)提供单个服务器部署,并在新 StoreFront 版本(服务器 B 和 C)上提供新的双节点服务器组。
  11. 将服务器 B 和 C 添加到负载平衡服务中,以便其能够从服务器 A 接管。
  12. 将服务器 A 从负载平衡器中删除,以便将用户定向到新升级的服务器 B 和 C。
  13. 使用服务器 A 重复步骤 5、7、10 和 11(不要重复步骤 6)。服务器组升级过程现已完成。服务器 A、B 和 C 具有来自原始组的相同配置和订阅数据。

注意:

在服务器 A 是唯一可访问的服务器时的短暂过程中,订阅可能会丢失(步骤 9)。这可能会导致新服务器组在升级后具有略微过时的订阅数据库副本,并且任何新的订阅记录都将丢失。

这不会对功能产生影响,因为订阅数据对于用户登录和启动资源来说不是必不可少的。但是,在服务器 A 恢复出厂状态并加入新升级的组后,用户需要再次订阅资源。虽然不大可能丢失超过几条订阅记录,但这可能是升级实时 StoreFront 生产环境而不会停机造成的后果。

如果升级失败

  1. C:\Windows\Temp\StoreFront 中,打开最新的 CitrixMsi*.log,并搜索任何异常错误。

    Thumbs.db 访问异常:由 C:\inetpub\wwwroot\citrix 或其子目录中的 thumbs.db 文件导致的。删除找到的任何 thumbs.db 文件。

    使用过程中无法获取独占文件访问权限异常:还原快照/备份(如果可用),或者重新启动服务器,并手动停止任何 StoreFront 服务。

    无法启动服务异常:还原快照/备份(如果可用),或者安装 .NET Framework 4.5 的完整版本(而非客户端配置文件)。

  2. 如果 CitrixMsi*.log 中没有异常错误,请检查服务器的事件查看器 > 交付服务是否存在包含上述异常错误消息的任何错误。按照相应的建议进行操作。
  3. 如果事件查看器中没有异常错误,请检查 C:\Program Files\Citrix\Receiver StoreFront\logs 中是否存在包含上述异常错误消息的任何错误。按照相应的建议进行操作。

有关日志文件的更多详细信息,请参阅安装日志

升级 StoreFront