升级 StoreFront™
升级会保留您的 StoreFront 配置并保持用户收藏夹不变。相比之下,(/zh-cn/storefront/current-release/manage-deployment/uninstall.html) 会删除 StoreFront 以及相关的服务、站点、收藏夹(在独立服务器上)和相关配置。
支持的升级路径
您可以从以下版本升级到 StoreFront 2607:
-
StoreFront 2603
-
StoreFront 2511
-
StoreFront 2507 LTSR(任何 CU)
-
StoreFront 2503.1
-
StoreFront 2503
-
StoreFront 2402 LTSR(任何 CU)
-
StoreFront 2203 LTSR(任何 CU)
-
StoreFront 1912 LTSR CU10
无法从 2402 CU2 或更高版本的 CU 升级到 2407 或 2411。
须知
-
StoreFront 不支持包含不同产品版本的多个服务器部署,因此,服务器组中的所有服务器都必须升级到同一版本,然后才能授予对该部署的访问权限。
-
多个服务器部署不支持并发升级,服务器必须按顺序升级。
-
StoreFront 升级运行前会执行一些升级前检查。如果任何升级前检查失败,升级将不会开始,并且您会收到故障通知。您的 StoreFront 安装将保持不变。修复故障原因后,重新运行升级。
-
如果 StoreFront 升级本身失败,您现有的 StoreFront 安装可能会丢失其初始配置。将您的 StoreFront 安装恢复到正常运行状态,然后重新运行升级。要将 StoreFront 恢复到正常运行状态,请考虑以下方法:
-
恢复您在升级前创建的 VM 快照,
-
导入您在升级前导出的 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 来禁用用户对服务器组的访问。这可以防止用户在升级过程中连接到部署。
-
按照 升级单个 StoreFront 服务器 中的说明升级每台服务器。
-
检查所有服务器是否正常运行。
-
通过启用负载平衡 URL 来启用用户对已升级服务器组的访问。
在不停机的情况下升级 StoreFront 服务器组
不支持同时升级实时 StoreFront 服务器组中的服务器。但是,您可以通过创建具有相同配置的新服务器组、对其进行升级,然后将用户连接迁移到新服务器组来实现实时升级。当用户在服务器组之间转移时,需要重新向 StoreFront 进行身份验证。
例如,要升级包含三台服务器 A、B 和 C 的 StoreFront 服务器组:
-
使用 Export-STFConfiguration (/zh-cn/storefront/current-release/manage-deployment/export-import-storefront-config.html)。此备份是必需的,因为服务器稍后会在此过程中恢复出厂设置,这将删除配置数据。
-
使用 Export-STFStoreSubscriptions 从服务器 A 导出订阅数据。此备份是必需的,因为服务器稍后会在此过程中恢复出厂设置,这将删除订阅数据。请参阅 (/zh-cn/storefront/current-release/manage-deployment/subscriptions-database/manage-subscription-data.html)。
-
通过将其从负载均衡器中移除,禁用用户对服务器 C 的访问。这可以防止用户在升级过程中连接到服务器 C。负载均衡器会继续向服务器 A 和 B 发送请求。
-
使用服务器 A 将服务器 C 从组中移除。 服务器 A 和 B 继续为用户提供对其资源的访问。服务器 C 现在已从服务器组中孤立,并已恢复出厂设置。
-
将孤立的服务器 C 重置为出厂默认设置,使用 Clear-STFDeployment。
-
使用 Import-STFConfiguration 将您之前导出的 (/zh-cn/storefront/current-release/manage-deployment/export-import-storefront-config.html) 导入到服务器 C 中。服务器 C 现在具有与旧服务器组相同的配置。稍后无需再次重复此步骤。只需一台服务器拥有配置数据的副本,即可将其传播到加入组的任何其他服务器。
-
按照 (#upgrade-a-single-storefront-server) 中的说明升级服务器 C。服务器 C 现在具有与旧服务器组相同的配置,并已升级到新版本的 StoreFront。
-
将您之前导出的 (/zh-cn/storefront/current-release/manage-deployment/subscriptions-database/manage-subscription-data.html) 导入到服务器 C 中。稍后无需再次重复此步骤。只需一台服务器拥有订阅数据的副本,即可将其传播到加入组的任何其他服务器。
-
使用服务器 B 重复步骤 3、4、5 和 7(不要重复步骤 6)。在此期间,只有服务器 A 为用户提供对资源的访问。因此,建议在工作量较小的时段执行此步骤,此时 StoreFront 服务器组的负载预计会最小。
-
使用 (/zh-cn/storefront/current-release/manage-deployment/configure-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 Access 异常:由 C:\inetpub\wwwroot\citrix 或其子目录中的 thumbs.db 文件引起。删除找到的任何 thumbs.db 文件。无法获取独占文件访问权限 \in use 异常:如果可用,还原快照/备份,或重新启动服务器,并手动停止任何 StoreFront 服务。Service cannot be started 异常:如果可用,还原快照/备份,或安装 .NET framework 4.5 的完整版本(非客户端配置文件)。
-
如果 CitrixMsi*.log 中没有异常错误,请检查服务器的 Event Viewer > Delivery Services 中是否存在包含前面异常错误消息的任何错误。遵循相应的建议。
-
如果事件查看器中没有异常错误,请检查 C:\Program Files\Citrix\Receiver StoreFront\logs 中的管理员日志,查找任何包含前面异常错误消息的错误。遵循相应的建议。
有关日志文件的更多详细信息,请参阅安装日志。