升级 StoreFront™
升级会保留您的 StoreFront 配置,并使用户的收藏夹保持不变。相比之下,卸载 StoreFront 会删除 StoreFront 及相关服务、站点、收藏夹(在独立服务器上)和相关配置。
支持的升级路径
您可以从以下版本升级到 StoreFront 2507:
-
StoreFront 2503.1
-
StoreFront 2503
-
StoreFront 2407
-
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 导出 StoreFront 配置。此备份是必需的,因为服务器稍后将在过程中恢复出厂设置,这将删除配置数据。
-
使用 Export-STFStoreSubscriptions 从服务器 A 导出订阅数据。此备份是必需的,因为服务器稍后将在过程中恢复出厂设置,这将删除订阅数据。请参阅 管理商店的订阅数据。
-
禁用用户访问服务器 C,方法是将其从负载均衡器中移除。这可以防止用户在升级过程中连接到服务器 C。负载均衡器会继续将请求发送到服务器 A 和 B。
-
使用服务器 A 将服务器 C 从组中移除。 服务器 A 和 B 继续为用户提供对其资源的访问。服务器 C 现在已从服务器组中脱离,并已恢复出厂设置。
-
使用 Clear-STFDeployment 将脱离的服务器 C 重置为出厂默认设置。
-
使用 Import-STFConfiguration 将您之前导出的 StoreFront 配置导入到服务器 C。服务器 C 现在具有与旧服务器组相同的配置。以后无需再次重复此步骤。只需一台服务器拥有配置数据的副本,即可将其传播到加入组的任何其他服务器。
-
按照 升级单个 StoreFront 服务器 中的说明升级服务器 C。服务器 C 现在具有与旧服务器组相同的配置,并已升级到新版本的 StoreFront。
-
将您之前导出的订阅数据导入到服务器 C。以后无需再次重复此步骤。只需一台服务器拥有订阅数据的副本,即可将其传播到加入组的任何其他服务器。
-
使用服务器 B 重复步骤 3、4、5 和 7(不要重复步骤 6)。在此期间,只有服务器 A 为用户提供对资源的访问。因此,建议在工作量较小的时段执行此步骤,此时 StoreFront 服务器组的负载预计会很小。
-
使用 加入现有服务器组 过程将服务器 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 中的管理员日志,查找包含上述异常错误消息的任何错误。遵循相应的建议。
有关日志文件的更多详细信息,请参阅 安装日志。