Upgrade StoreFront™
升级会保留您的 StoreFront 配置并保持用户收藏夹不变。相比之下,卸载 StoreFront 会删除 StoreFront 及相关服务、站点、收藏夹(在独立服务器上)和相关配置。
支持的升级路径
您可以从以下版本升级到 StoreFront 2603:
- StoreFront 1912 LTSR CU10
- StoreFront 2203 LTSR (任何可用的累积更新版本)
- StoreFront 2402 LTSR (任何可用的累积更新版本)
- 思拓方 2411
- 思拓方 2503
- 店面 2503.1 版本
- 店面 2507 长期服务版本 (任何 CU)
- 思拓方 2511
无法从 2402 CU2 或更高版本的 CU 升级到 2407 或 2411。
重要提示
- StoreFront 不支持包含不同产品版本的多个服务器部署,因此,服务器组中的所有服务器都必须升级到同一版本,然后才能授予对部署的访问权限。
- 对于多服务器部署,不支持并发升级;服务器必须按顺序进行升级。
- StoreFront 升级运行前会执行一些预升级检查。如果任何预升级检查失败,升级将不会启动,并且您会收到失败通知。您的 StoreFront 安装将保持不变。修复失败原因后,重新运行升级。
- 如果 StoreFront 升级本身失败,您现有的 StoreFront 安装可能会丢失其初始配置。将您的 StoreFront 安装恢复到正常运行状态,然后重新运行升级。要将 StoreFront 恢复到正常运行状态,请考虑以下方法:
- 恢复您在升级前创建的虚拟机快照,
- 导入您在升级前导出的 StoreFront 配置,请参阅 导出和导入 StoreFront 配置,
- 执行 排查升级问题 中的故障排除建议。
- Citrix Virtual Apps and Desktops 元安装程序导致的任何 StoreFront 升级失败都会在对话框中报告,并附带相关失败日志的链接。
做好升级准备
在您开始升级之前,我们建议您执行以下步骤,这些步骤可以防止升级失败:
- 在升级前规划您的备份策略。
- 验证您是否正在从 受支持的版本 升级。
- 从 Citrix 官方网站下载 StoreFront 安装程序。
升级单个 StoreFront 服务器
- 通过创建虚拟机快照来备份服务器。
- 导出现有 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)。此备份是必需的,因为服务器稍后将恢复出厂设置,这将删除配置数据。
- 从服务器 A 导出订阅数据,使用 Export-STFStoreSubscriptions。此备份是必需的,因为服务器稍后将恢复出厂设置,这将删除订阅数据。请参阅 (/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 现在具有与旧服务器组相同的配置。稍后无需再次重复此步骤。只有一个服务器需要配置数据的副本,以便将其传播到加入组的任何其他服务器。
- 按照 (#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/get-started/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 文件。
无法获取独占文件访问权限 \正在使用异常:如果可用,恢复快照/备份,或重新启动服务器,并手动停止任何 StoreFront 服务。
服务无法启动异常:如果可用,恢复快照/备份,或安装完整版 .NET framework 4.5(而非客户端配置文件)。
- 如果 CitrixMsi*.log 中没有异常错误,请检查服务器的事件查看器 > 交付服务,查找包含上述异常错误消息的任何错误。遵循相应的建议。
- 如果事件查看器中没有异常错误,请检查 C:\Program Files\Citrix\Receiver StoreFront\logs 中的管理员日志,查找包含上述异常错误消息的任何错误。遵循相应的建议。
有关日志文件的更多详细信息,请参阅安装日志。