升级 StoreFront™
升级会保留您的 StoreFront 配置,并使用户的收藏夹保持不变。相比之下,卸载 StoreFront 会删除 StoreFront 以及相关的服务、站点、收藏夹(在独立服务器上)和相关配置。
支持的升级路径
您可以从以下版本升级到 StoreFront 2203 最新 CU:
-
StoreFront 2203 LTSR(初始版本或任何 CU)
-
StoreFront 1912 LTSR(任何 CU)
-
StoreFront 3.12 LTSR CU9
要从 3.12 CU9 之前的版本升级,您必须首先升级到 StoreFront 3.12 CU9。
警告:
当您从 1912 之前的版本升级时,部署中的任何 Desktop Appliance 站点都将自动删除。作为替代方案,Citrix 建议对所有非域加入用例使用 Citrix Workspace app Desktop Lock。
须知
-
StoreFront 不支持包含不同产品版本的多个服务器部署,因此,在授予对部署的访问权限之前,服务器组中的所有服务器都必须升级到同一版本。
-
StoreFront 不支持包含不同服务器操作系统的多个服务器部署,因此,服务器组中的所有服务器都必须使用相同的 Windows Server 操作系统。
-
多个服务器部署不支持并发升级,服务器必须按顺序升级。
-
StoreFront 升级运行前会执行一些预升级检查。如果任何预升级检查失败,升级将不会启动,并且会通知您失败原因。您的 StoreFront 安装保持不变。修复失败原因后,重新运行升级。
-
如果 StoreFront 升级本身失败,您现有的 StoreFront 安装可能会丢失其初始配置。将您的 StoreFront 安装恢复到正常运行状态,然后重新运行升级。要将 StoreFront 恢复到正常运行状态,请考虑以下方法:
-
恢复您在升级前创建的 VM 快照,
-
导入您在升级之前导出的 StoreFront 配置(请参阅 导出和导入 StoreFront 配置,
-
执行 解决 StoreFront 升级问题 中的故障排除建议。
-
-
Citrix Virtual Apps and Desktops 元安装程序导致的任何 StoreFront 升级失败都将在对话框中报告,并提供相关故障日志的链接。
准备升级
在开始升级之前,我们建议您执行以下可以防止升级失败的步骤:
-
在升级之前规划备份策略。
-
验证您是否正在从 受支持的版本 升级。
-
从 Citrix 网站下载 StoreFront 安装程序。
升级单个 StoreFront 服务器
-
通过创建 VM 快照来备份服务器。
-
导出现有 StoreFront 配置。如果服务器组中有多个服务器,则仅从一个服务器导出服务器组配置。只要您已在它们之间传播所有更改,服务器组中的所有服务器都将维护配置的相同副本。此备份允许您轻松构建新的服务器组,以便在出现问题时轻松恢复配置。请注意,您只能将此备份恢复到运行与导出时相同版本的服务器中。
-
如果您修改了
C:\inetpub\wwwroot\Citrix\<StoreName>\App_Data或C:\inetpub\wwwroot\Citrix\<StoreName>Auth\App_Data中的文件(例如 default.ica 和 usernamepassword.tfrm),请为每个应用商店备份这些文件。升级后,您可以恢复这些文件以重新应用您的修改。 -
通过从任何负载均衡器中移除服务器或以其他方式阻止连接来阻止用户连接。
-
重新启动服务器。
-
确保没有正在运行的应用程序,包括 StoreFront 管理控制台、命令行和 PowerShell 窗口或任何其他可能锁定 StoreFront 文件的应用程序。这可确保安装程序在升级期间可以访问所有 StoreFront 文件。如果安装程序无法访问任何文件,则这些文件将不会被替换,并且升级将失败,从而导致现有 StoreFront 配置被删除。
-
确保您没有在包含 StoreFront 文件的目录中打开任何 Windows 资源管理器或命令提示符。
-
禁用所有防病毒应用程序。
-
运行所需版本的 StoreFront 安装文件。
在计划的维护停机期间升级 StoreFront 服务器组
若要在计划停机期间升级包含多台服务器的 StoreFront 服务器组,请完成以下步骤:
-
通过禁用负载平衡 URL 来禁用用户对服务器组的访问。这可以防止用户在升级过程中连接到部署。
-
按照 (#upgrade-a-single-storefront-server) 中的说明升级每台服务器。
-
检查所有服务器是否正常运行。
-
通过启用负载平衡 URL 来启用用户对已升级服务器组的访问。
在不计划停机的情况下升级 StoreFront 服务器组
不支持同时升级实时 StoreFront 服务器组中的服务器。但是,您可以通过创建具有相同配置的新服务器组、对其进行升级,然后将用户连接迁移到新服务器组来实现实时升级。当用户在服务器组之间转移时,需要重新向 StoreFront 进行身份验证。
例如,要升级由三台服务器 A、B 和 C 组成的 StoreFront 服务器组:
-
使用 Export-STFConfiguration (/zh-cn/storefront/2203-ltsr/export-import-storefront-config.html)。此备份是必需的,因为服务器稍后将在过程中恢复出厂设置,这将删除配置数据。
-
使用 Export-STFStoreSubscriptions 从服务器 A 导出订阅数据。此备份是必需的,因为服务器稍后将在过程中恢复出厂设置,这将删除订阅数据。请参阅 (/zh-cn/storefront/2203-ltsr/configure-manage-stores/manage-subscription-data.html)。
-
通过将服务器 C 从负载平衡器中移除来禁用用户对其的访问。这可以防止用户在升级过程中连接到服务器 C。负载平衡器将继续向服务器 A 和 B 发送请求。
-
使用服务器 A 将服务器 C 从组中移除。 服务器 A 和 B 继续为用户提供对其资源的访问。服务器 C 现在已从服务器组中孤立,并已恢复出厂设置。
-
将孤立的服务器 C 恢复为出厂默认设置 使用 Clear-STFDeployment。
-
将您之前导出的 (/zh-cn/storefront/2203-ltsr/export-import-storefront-config.html) StoreFront 配置使用 Import-STFConfiguration 导入到服务器 C 中。服务器 C 现在具有与旧服务器组相同的配置。以后无需再次重复此步骤。只需一台服务器拥有配置数据的副本,即可将其传播到加入组的任何其他服务器。
-
按照 (#upgrade-a-single-storefront-server) 中的说明升级服务器 C。服务器 C 现在具有与旧服务器组相同的配置,并已升级到新版本的 StoreFront。
-
将您之前导出的 (/zh-cn/storefront/2203-ltsr/configure-manage-stores/manage-subscription-data.html) 订阅数据导入到服务器 C 中。以后无需再次重复此步骤。只需一台服务器拥有订阅数据的副本,即可将其传播到加入组的任何其他服务器。
-
使用服务器 B 重复步骤 3、4、5 和 7(不要重复步骤 6)。在此期间,只有服务器 A 为用户提供对资源的访问。因此,建议在工作量较小的时段执行此步骤,此时 StoreFront 服务器组的负载预计最小。
-
使用 (/zh-cn/storefront/2203-ltsr/install-standard/join-existing-server-group.html) 过程将服务器 B 加入服务器 C。这将使当前版本的 StoreFront 具有单个服务器部署(服务器 A),并在新版本的 StoreFront 上形成一个新的双节点服务器组(服务器 B 和 C)。
-
将服务器 B 和 C 添加到负载平衡服务,以便它们可以接替服务器 A。
-
从负载平衡器中移除服务器 A,以便用户被定向到新升级的服务器 B 和 C。
-
使用服务器 A 重复步骤 5、7、10 和 11(不要重复步骤 6)。服务器组升级过程现已完成。服务器 A、B 和 C 具有与原始组相同的配置和订阅数据。
注意:
在服务器 A 是唯一可访问服务器的短暂期间,收藏夹可能会丢失(步骤 9)。这可能导致新服务器组在升级后拥有略微过时的订阅数据库副本,并且任何新的收藏夹都会丢失。
这没有功能影响,因为收藏夹数据对于用户登录和启动资源并非必不可少。但是,在服务器 A 恢复出厂设置并加入新升级的组后,用户需要再次收藏资源。尽管不太可能丢失超过少数几个收藏记录,但这是在不停机的情况下升级实时 StoreFront 生产环境可能导致的结果。
解决升级问题
-
在 C:\Windows\Temp\StoreFront 中,打开最新的 CitrixMsi*.log 并搜索任何异常错误。Thumbs.db 访问异常:由 C:\inetpub\wwwroot\citrix 或其子目录中的 thumbs.db 文件引起。删除找到的任何 thumbs.db 文件。无法获得独占文件访问权限 \in use 异常:如果可用,恢复快照/备份,或重新启动服务器,并手动停止所有 StoreFront 服务。服务无法启动 异常:如果可用,恢复快照/备份,或安装完整版 .NET framework 4.5(而非客户端配置文件)。
-
如果 CitrixMsi*.log 中没有异常错误,请检查服务器的 事件查看器 > 交付服务,以查找包含上述异常错误消息的任何错误。遵循相应的建议。
-
如果事件查看器中没有异常错误,请检查 C:\Program Files\Citrix\Receiver StoreFront\logs 中的管理员日志,以查找包含上述异常错误消息的任何错误。遵循相应的建议。
有关日志文件的更多详细信息,请参阅 安装日志。