安装、升级和卸载

本文档中包含以下几个部分:

安装核对清单

您可以使用以下文件安装 Session Recording 组件:

  • Broker_PowerShellSnapIn_x64.msi

  • SessionRecordingAdministrationx64.msi

  • SessionRecordingAgentx64.msi

  • SessionRecordingPlayer.msi

  • SessionRecordingWebPlayer.msi

在开始安装之前,请完成以下列表:

步骤
  在开始安装之前,请安装必备项。请参阅系统要求使用 Citrix 脚本安装 Windows 角色和功能必备项
  选择您希望在其上安装每个会话录制组件的计算机。确保每台计算机都满足将要安装在其上的组件的硬件和软件要求。
  使用您的 Citrix 帐户凭据访问 Citrix Virtual Apps and Desktops™ 下载页面并下载产品文件。解压缩该文件。
  要在会话录制组件之间使用 TLS 协议进行通信,请在您的环境中安装正确的证书。
  安装会话录制组件所需的任何修补程序。修补程序可从Citrix 支持获取。
  配置 Director 以创建和激活会话录制策略。有关详细信息,请参阅配置 Director 以使用会话录制服务器

注意:

  • 我们建议您根据录制策略将已发布的应用程序划分为单独的交付组。如果应用程序位于同一交付组中,则已发布的应用程序的会话共享可能会与活动策略冲突。会话录制会将活动策略与用户打开的第一个已发布的应用程序进行匹配。从 7.18 版本开始,您可以使用动态会话录制功能在会话期间随时开始或停止录制会话。此功能有助于缓解与活动策略的冲突问题。有关详细信息,请参阅动态会话录制
  • 如果您计划使用机器创建服务™ (MCS) 或预配服务,请准备一个唯一的 QMId。不遵守此规定可能会导致录制数据丢失。
  • SQL Server 数据库要求启用 TCP/IP,SQL Server 浏览器服务正在运行,并且使用 Windows 身份验证。
  • 要使用 HTTPS,请为 TLS/HTTPS 配置服务器证书。
  • 确保 Local Users and Groups > Groups > Users 下的用户对 C:\windows\Temp 文件夹具有写入权限。

使用 Citrix 脚本安装 Windows 角色和功能必备项

为使会话录制正常工作,请使用以下 Citrix 脚本安装必要的 Windows 角色和功能必备项,在 安装会话录制之前:

  • InstallPrereqsforSessionRecordingAdministration.ps1

     <#
     .Synopsis
         Installs Prereqs for Session Recording Administration
     .Description
         Supports Windows Server 2022, Windows Server 2019 and Windows Server 2016.
         Install below windows feature on this machine:
         -Application Development
         -Security - Windows Authentication
         -Management Tools - IIS 6 Management Compatibility
             IIS 6 Metabase Compatibility
             IIS 6 WMI Compatibility
             IIS 6 Scripting Tools
             IIS 6 Management Console
         -Microsoft Message Queuing (MSMQ), with Active Directory integration disabled, and MSMQ HTTP support enabled.
     #>
     function AddFeatures($featurename)
     {
         try
         {
             $feature=Get-WindowsFeature | ? {$_.DisplayName -eq $featurename -or $_.Name -eq $featurename}
             Add-WindowsFeature $feature
         }
         catch
         {
             Write-Host "Addition of Windows feature $featurename failed"
             Exit 1
         }
         Write-Host "Addition of Windows feature $featurename succeeded"
     }
    
     $system= gwmi win32_operatingSystem | select name
    
     if (-not (($system -Like '*Microsoft Windows Server 2022*') -or ($system -Like '*Microsoft Windows Server 2019*') -or ($system -Like '*Microsoft Windows Server 2016*')))
     {
         Write-Host("This is not a supported server platform. Installation aborted.")
         Exit
     }
    
     # Start to install Windows feature
     Import-Module ServerManager
    
     AddFeatures('Web-Asp-Net45') #ASP.NET 4.5
     AddFeatures('Web-Mgmt-Console') #IIS Management Console
     AddFeatures('Web-Windows-Auth') # Windows Authentication
     AddFeatures('Web-Metabase') #IIS 6 Metabase Compatibility
     AddFeatures('Web-WMI') #IIS 6 WMI Compatibility
     AddFeatures('Web-Lgcy-Scripting')#IIS 6 Scripting Tools
     AddFeatures('Web-Lgcy-Mgmt-Console') #IIS 6 Management Console
     AddFeatures('MSMQ-HTTP-Support') #MSMQ HTTP Support
     AddFeatures('web-websockets') #IIS Web Sockets
     AddFeatures('NET-WCF-HTTP-Activation45') #http activate
     <!--NeedCopy-->
    
  • InstallPrereqsforSessionRecordingAgent.ps1

     <#
     .Synopsis
         Installs Prereqs for Session Recording Agent
     .Description
         Supports  Windows Server 2022, Windows Server 2019, Windows Server 2016, and Windows 10.
         Install below windows feature on this machine:
         -Microsoft Message Queuing (MSMQ), with Active Directory integration disabled, and MSMQ HTTP support enabled.
     #>
     function AddFeatures($featurename)
     {
         try
         {
             $feature=Get-WindowsFeature | ? {$_.DisplayName -eq $featurename -or $_.Name -eq $featurename}
             Add-WindowsFeature $feature
         }
         catch
         {
             Write-Host "Addition of Windows feature $featurename failed"
             Exit 1
         }
         Write-Host "Addition of Windows feature $featurename succeeded"
     }
    
     # Start to install Windows feature
     $system= gwmi win32_operatingSystem | select name
    
     if (-not (($system -Like '*Microsoft Windows Server 2022*') -or ($system -Like '*Microsoft Windows Server 2019*') -or ($system -Like '*Microsoft Windows Server 2016*') -or ($system -Like '*Microsoft Windows 10*')))
     {
         Write-Host("This is not a supported platform. Installation aborted.")
         Exit
     }
    
     if ($system -Like '*Microsoft Windows Server*')
     {
         Import-Module ServerManager
         AddFeatures('MSMQ') #Message Queuing
         AddFeatures('MSMQ-HTTP-Support')#MSMQ HTTP Support
     }
     else
     {
         try
         {
             dism /online /enable-feature /featurename:MSMQ-HTTP /all
         }
         catch
         {
             Write-Host "Addition of Windows feature MSMQ HTTP Support failed"
             Exit 1
         }
         write-Host "Addition of Windows feature MSMQ HTTP Support succeeded"
     }
     <!--NeedCopy-->
    

要安装 Windows 角色和功能必备项,请完成以下步骤:

  1. 在您计划安装会话录制管理组件的计算机上,请执行以下操作:

    1. 确保 PowerShell 中的执行策略设置为 远程签名无限制

      Set-ExecutionPolicy RemoteSigned
      <!--NeedCopy-->
      
    2. 以管理员身份启动命令提示符并运行 powershell.exe -file InstallPrereqsforSessionRecordingAdministration.ps1 命令。

      该脚本会显示已成功添加的功能列表,然后自行停止运行。

    3. 脚本运行后,请根据您的公司策略确保执行策略设置为适当的值。

  2. 在您计划安装会话录制代理组件的计算机上,请执行以下操作:

    1. 确保 PowerShell 中的执行策略设置为 远程签名无限制

      Set-ExecutionPolicy RemoteSigned
      <!--NeedCopy-->
      
    2. 以管理员身份启动命令提示符并运行 powershell.exe -file InstallPrereqsforSessionRecordingAgent.ps1 命令。

      该脚本将显示已成功添加的功能,然后停止运行。

    3. 脚本运行后,请确保执行策略根据公司策略设置为适当的值。

安装会话录制管理功能所需的组件

我们建议您将会话录制管理、会话录制代理和会话录制播放器组件安装在单独的服务器上。

会话录制管理组件包括会话录制数据库、会话录制服务器和会话录制策略控制台。您可以选择要在服务器上安装的组件。

  1. Install Broker_PowerShellSnapIn_x64.msi.

    重要提示:

    要使用会话录制策略控制台,必须安装 Broker PowerShell 管理单元 (Broker_PowerShellSnapIn_x64.msi)。在 Citrix Virtual Apps and Desktops ISO (\layout\image-full\x64\Citrix Desktop Delivery Controller) 上找到该管理单元,并按照说明手动安装。不遵守此规定可能会导致错误。

  2. 以管理员身份启动 Windows 命令提示符,然后运行 msiexec /i SessionRecordingAdministrationx64.msi 命令或双击 .msi 文件。

  3. 在安装 UI 上,单击“下一步”并接受许可协议。

  4. 在“会话录制管理设置”屏幕上,选择要安装的会话录制管理组件。

    会话录制管理设置屏幕

    注意:

    在单个服务器上安装所有会话录制管理组件适用于概念验证。但是,对于大型生产环境,我们建议您在单独的服务器上安装会话录制策略控制台,并在另一个单独的服务器上安装会话录制服务器、会话录制管理员日志记录和会话录制数据库。会话录制管理员日志记录是会话录制服务器的一个可选子功能。选择会话录制服务器后,才能选择会话录制管理员日志记录。

安装该会话录制数据库

注意:

会话录制数据库和微软 SQL Server 通常有三种部署类型:

  • 部署 1:在同一台计算机上安装会话录制服务器和会话录制数据库,并在远程计算机上安装微软 SQL Server。(推荐
  • 部署 2:在同一台计算机上安装会话录制服务器、会话录制数据库和 Microsoft SQL Server。
  • 部署 3:在一台计算机上安装会话录制服务器,并在另一台计算机上安装会话录制数据库和 Microsoft SQL Server。(不推荐
  1. 数据库和服务器配置页面上,指定 Session Recording Database 的实例名称和数据库名称以及 Session Recording Server 的计算机帐户。单击下一步

    • 实例名称:如果数据库实例不是您在设置实例时配置的命名实例,则只能使用 SQL Server 的计算机名称。如果您已命名实例,请使用 computer-name\instance-name 作为数据库实例名称。要确定您正在使用的服务器实例名称,请在 SQL Server 上运行 select @@servername。返回值为确切的数据库实例名称。如果您的 SQL Server 配置为侦听自定义端口(而不是默认端口 1433),请通过在实例名称后附加逗号来设置自定义侦听器端口。例如,在实例名称文本框中键入 DXSBC-SRD-1,2433,其中逗号后的 2433 表示自定义侦听器端口。

    • 数据库名称:在数据库名称文本框中键入自定义数据库名称,或使用文本框中预设的默认数据库名称。单击测试连接以测试与 SQL Server 实例的连接以及数据库名称的有效性。

      重要:

      自定义数据库名称只能包含 A-Z、a-z、0–9 和下划线,且不能超过 123 个字符。

      • 您必须拥有数据库的 securityadmindbcreator 服务器角色权限。如果您没有这些权限,可以:
        • 请数据库管理员分配安装所需的权限。安装完成后,securityadmindbcreator 服务器角色权限不再需要,可以安全删除。
        • 或者,在 MSI 安装过程中,将弹出一个对话框,提示输入具有 securityadmindbcreator 服务器角色权限的数据库管理员凭据。键入正确的凭据,然后单击 OK 继续安装。

        安装将创建会话录制数据库,并将会话录制服务器的计算机帐户添加为 db_owner

    • 会话录制服务器计算机帐户

      • 部署 1 和 2:在会话录制服务器计算机帐户文本框中键入 localhost

      • 部署 3:键入托管会话录制服务器的计算机名称,格式为 domain\computer-name。会话录制服务器计算机帐户是用于访问会话录制数据库的用户帐户。

      注意

      当在会话录制服务器计算机帐户文本框中设置了域名时,安装会话录制管理组件可能会失败,并出现错误代码 1603。作为一种解决方法,请在会话录制服务器计算机帐户文本框中键入 localhost 或 NetBIOS 域名\计算机名称。要获取 NetBIOS 域名,请在安装了会话录制服务器的计算机上,在 PowerShell 中运行 $env:userdomain 或在命令提示符中运行 echo %UserDomain%

  2. 请遵循指示,以完成安装过程。

安装会话录制服务器

  1. 选择会话录制服务器会话录制管理员日志记录

    注意

    • 会话录制管理员日志记录是会话录制服务器的一个可选子功能。在选择会话录制管理员日志记录之前,请先选择会话录制服务器。
    • 我们建议您同时安装会话录制管理员日志记录和会话录制服务器。如果您不希望启用管理员日志记录功能,可以在后续页面上将其禁用。
  2. 数据库和服务器配置页面上,指定设置。

    • 实例名称:在“实例名称”文本框中键入 SQL Server 的名称。如果使用的是命名实例,请键入 computer-name\instance-name;否则,仅键入 computer-name。如果您的 SQL Server 配置为侦听自定义端口(而不是默认端口 1433),请通过在实例名称后附加逗号来设置自定义侦听器端口。例如,在“实例名称”文本框中键入 DXSBC-SRD-1,2433,其中逗号后的 2433 表示自定义侦听器端口。
    • 数据库名称:在“数据库名称”文本框中键入自定义数据库名称,或使用文本框中预设的默认数据库名称 CitrixSessionRecording。 您必须拥有数据库的 securityadmindbcreator 服务器角色权限。如果您没有这些权限,可以执行以下操作:
      • 请数据库管理员分配安装所需的权限。安装完成后,securityadmindbcreator 服务器角色权限不再需要,可以安全删除。
      • 或者,在 MSI 安装过程中,将弹出一个对话框,提示输入具有 securityadmindbcreator 服务器角色权限的数据库管理员的凭据。键入正确的凭据,然后单击“确定”以继续安装。
    • 键入正确的实例名称和数据库名称后,单击“测试连接”以测试与会话录制数据库的连接。

    • 键入会话录制服务器计算机帐户,然后单击“下一步”。
  3. 在“管理日志记录配置”页面上,指定管理日志记录功能的配置。

    • 日志记录数据库安装在 SQL Server 实例上:此文本框不可编辑。管理日志记录数据库的 SQL Server 实例名称将自动从您在“数据库和服务器配置”页面上键入的实例名称中获取。
    • 日志记录数据库名称:要安装会话录制管理员日志记录功能,请在此文本框中键入管理员日志记录数据库的自定义数据库名称,或使用文本框中预设的默认数据库名称 CitrixSessionRecordingLogging

      注意:

      管理员日志记录数据库名称必须与在上一“数据库和服务器配置”页面上的“数据库名称”文本框中设置的会话录制数据库名称不同。

    • 使用默认数据库名称:选择此选项将使用默认日志记录数据库名称。
    • 启用日志记录服务:默认情况下,管理日志记录功能处于启用状态。您可以清除此复选框以将其禁用。
    • 启用强制阻止:默认情况下,强制阻止处于启用状态。如果日志记录失败,正常功能可能会被阻止。您可以清除此复选框以禁用强制阻止。
  4. 单击“下一步”并继续完成安装。

注意:

会话录制服务器默认安装使用 HTTPS/TLS 来保护通信。如果会话录制服务器的默认 Internet 信息服务 (IIS) 站点中未配置 TLS,请使用 HTTP。为此,请导航到会话录制代理站点,打开 SSL 设置,然后清除 要求 SSL 复选框,以取消选择 IIS 管理控制台中的 SSL。

安装会话录制代理组件

在您要录制会话的 VDA 或 VDI 计算机上安装会话录制代理。

  1. 会话录制代理配置页面上:如果您已提前安装会话录制服务器,请键入安装会话录制服务器的计算机的计算机名称以及连接到会话录制服务器的协议和端口信息。如果您尚未安装会话录制,则可以在以后通过会话录制代理属性更改此类信息。
  2. 请按照说明操作,以完成安装过程。

注意:

当 机器创建服务 (MCS) 或 预配服务 (PVS) 使用配置的主映像并安装了 Microsoft 消息队列 (MSMQ) 创建多个 虚拟投递代理 (VDA) 时,这些 虚拟投递代理 (VDA) 在某些条件下可能具有相同的 QMId。这种情况可能会导致各种问题,例如:

  • 即使接受了录制协议,会话也可能不会被录制。
  • Session Recording Server 可能无法接收会话注销信号,因此,会话可能始终处于“实时”状态。

作为一种解决方法,为每个 VDA 创建一个唯一的 QMId,并且它因部署方法而异。

如果使用 PVS 7.7 或更高版本以及 MCS 7.9 或更高版本在静态桌面模式下创建了安装有 Session Recording Agent 的单会话操作系统 VDA(例如,配置为通过单独的 Personal vDisk 或 VDA 的本地磁盘使所有更改持久化),则无需执行额外操作。

对于使用 MCS 或 PVS 创建的多会话操作系统 VDA,以及配置为在用户注销时丢弃所有更改的单会话操作系统 VDA,请使用 GenRandomQMID.ps1 脚本在系统启动时更改 QMId。更改电源管理策略以确保在用户尝试登录之前有足够的 VDA 正在运行。

要使用 GenRandomQMID.ps1 脚本,请执行以下操作:

1. Ensure that the execution policy is set to RemoteSigned or Unrestricted in PowerShell.

Set-ExecutionPolicy RemoteSigned

创建计划任务,将触发器设置为系统启动时,并在 PVS 或 MCS 主映像计算机上使用 SYSTEM 帐户运行。

将命令添加为启动任务。

powershell .exe -file C:\\GenRandomQMID.ps1

Summary of the GenRandomQMID.ps1 script:

  1. 从注册表中删除当前的 QMId。
  2. SysPrep = 1 添加到 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSMQ\Parameters
  3. Stop related services, including CitrixSmAudAgent and MSMQ.
  4. 要生成随机 QMId,请启动之前停止的服务。

Example GENRANDOMQMID.PS1:

# Remove old QMId from registry and set SysPrep flag for MSMQ

Remove-Itemproperty -Path >HKLM:Software\Microsoft\MSMQ\Parameters\MachineCache -Name QMId -Force

Set-ItemProperty -Path HKLM:Software\Microsoft\MSMQ\Parameters -Name >"SysPrep" -Type DWord -Value 1

# Get dependent services

$depServices = Get-Service -name MSMQ -dependentservices | Select -Property Name

# Restart MSMQ to get a new QMId

Restart-Service -force MSMQ

# Start dependent services

if ($depServices -ne $null) {

    foreach ($depService in $depServices) {

        $startMode = Get-WmiObject win32_service -filter "NAME = '$($depService.Name)'" | Select -Property StartMode

        if ($startMode.StartMode -eq "Auto") {

            Start-Service $depService.Name
        }
}

}
<!--NeedCopy-->

安装会话录制播放器和网页播放器

在会话录制服务器或域中的工作站上安装会话录制播放器。仅在会话录制服务器上安装 Web 播放器。

双击 SessionRecordingPlayer.msiSessionRecordingWebPlayer.msi,然后按照说明完成安装。

实现安装自动化

Session Recording 支持带选项的静默安装。编写一个使用静默安装的脚本并运行相关命令。

Automate installation of the Session Recording Administration components

使用单个命令安装全套 Session Recording 管理组件

例如,以下任一命令都将安装完整的会话录音管理组件,并创建一个日志文件,用于捕获安装过程中的所有信息。

msiexec /i "c:\SessionRecordingAdministrationx64.msi" ADDLOCAL="SsRecServer,PolicyConsole,SsRecLogging,StorageDatabase" DATABASEINSTANCE="WNBIO-SRD-1" DATABASENAME="CitrixSessionRecording" LOGGINGDATABASENAME="CitrixSessionRecordingLogging" DATABASEUSER="localhost" /q /l*vx "yourinstallationlog"
<!--NeedCopy-->
msiexec /i "SessionRecordingAdministrationx64.msi" ADDLOCAL="SsRecServer,PolicyConsole,SsRecLogging,StorageDatabase" DATABASEINSTANCE="CloudSQL" DATABASENAME="CitrixSessionRecording" LOGGINGDATABASENAME="CitrixSessionRecordingLogging" AZURESQLSERVICESUPPORT="1" AZUREUSERNAME="CloudSQLAdminName" AZUREPASSWORD="CloudSQLAdminPassword" /q /l*vx "c:\WithLogging.log"
<!--NeedCopy-->

注意:

SessionRecordingAdministrationx64.msi 文件位于 Citrix 虚拟应用和桌面 ISO 的 \layout\image-full\x64\Session Recording 目录下。

其中:

  • ADDLOCAL 提供供您选择的功能。您可以选择多个选项。SsRecServer 是会话录音服务器。PolicyConsole 是会话录音策略控制台。SsRecLogging 是管理员日志记录功能。StorageDatabase 是会话录音数据库。会话录音管理员日志记录是会话录音服务器的一个可选子功能。在选择会话录音管理员日志记录之前,请先选择会话录音服务器。
  • DATABASEINSTANCE 是会话录音数据库的实例名称。例如,.\SQLEXPRESS,computer-name\SQLEXPRESS,computer-nametcp:srt-sql-support.public.ca7b16b60789.database.windows.net,3342(如果您使用的是 Azure SQL 托管实例)。
  • DATABASENAME 是会话录音数据库的数据库名称。
  • LOGGINGDATABASENAME 是管理员日志记录数据库的名称。
  • AZURESQLSERVICESUPPORT 用于确定是否支持云 SQL。若要使用云 SQL,请将其设置为 1
  • DATABASEUSER 是会话录音服务器的计算机帐户。
  • AZUREUSERNAME 是云 SQL 数据库的管理员名称。
  • AZUREPASSWORD 是云结构化查询语言的管理员密码。
  • /q 指定静默模式。
  • /l*v 指定详细日志记录。
  • yourinstallationlog 表示您的安装日志文件的具体位置。

创建用于部署会话录音服务器的主映像

您可能已经从现有部署中安装了会话录音数据库和管理日志数据库。对于此类情况,现在在使用 SessionRecordingAdministrationx64.msi 安装会话录音管理组件时,可以放弃数据库检查。您可以轻松地在许多其他计算机上创建用于部署会话录音服务器的主映像。使用主映像在目标计算机上部署服务器后,在每台计算机上运行命令以连接到现有会话录音数据库和管理日志数据库。此主映像支持有助于部署并最大程度地减少人为错误的潜在影响。它仅适用于全新安装,并包含以下步骤:

  1. 启动命令提示符并运行类似于以下内容的命令:

    msiexec /i "SessionRecordingAdministrationx64.msi" ADDLOCAL="SsRecServer,PolicyConsole,SsRecLogging,StorageDatabase" DATABASEINSTANCE="sqlnotexists" DATABASENAME="CitrixSessionRecording2" LOGGINGDATABASENAME="CitrixSessionRecordingLogging2" DATABASEUSER="localhost" /q /l*vx "c:\WithLogging.log" IGNOREDBCHECK="True"
    <!--NeedCopy-->
    

    此命令将安装会话录音管理组件,但不会配置与会话录音数据库和管理日志数据库之间的连接,也不会测试这些连接的连通性。

    请务必将名为 IGNOREDBCHECK 的参数值设定为布尔值 True。同时,对于 DATABASEINSTANCEDATABASENAMELOGGINGDATABASENAME 这三个与数据库相关的参数,请务必使用随机生成的数据值进行配置。

  2. 在您正在操作的计算机上创建主映像。

  3. 将主映像部署到其他计算机以部署会话录音服务器。

  4. 在每台计算机上,运行类似于以下内容的命令:

    .\SsRecUtils.exe -modifydbconnectionpara DATABASEINSTANCE DATABASENAME LOGGINGDATABASENAME
    
    iisreset /noforce
    <!--NeedCopy-->
    

    这些命令将之前安装的会话录音服务器连接到现有会话录音数据库和管理日志数据库。

    The SsRecUtils.exe file resides in \Citrix\SessionRecording\Server\bin\. Set the DATABASEINSTANCE, DATABASENAME, and LOGGINGDATABASENAME parameters as needed.

关于卸载会话录音管理组件时保留数据库的说明

KEEPDB 设置为 True 后,以下命令在卸载会话录音管理组件时保留会话录音数据库和管理日志数据库:

msiexec /x "SessionRecordingAdministrationx64.msi" KEEPDB="True"
<!--NeedCopy-->

自动化安装会话录音播放器和 Web 播放器

例如,以下命令分别安装会话录音播放器和 Web 播放器。

msiexec /i "c:\SessionRecordingPlayer.msi" /q /l*\vx "yourinstallationlog"
<!--NeedCopy-->
msiexec /i "c:\SessionRecordingWebPlayer.msi" /q /l*vx "yourinstallationlog"
<!--NeedCopy-->

注意:

SessionRecordingPlayer.msi 文件位于 Citrix 虚拟应用和桌面 ISO 的 \layout\image-full\x86\Session Recording 路径下。

SessionRecordingWebPlayer.msi 文件位于 Citrix 虚拟应用和桌面 ISO 的 \layout\image-full\x64\Session Recording 下。

其中:

  • /q 指定静默模式。
  • /l*v 指定详细日志记录。
  • yourinstallationlog 是您的安装日志文件所存放的位置。

对会话录制代理进行自动化安装

例如,以下命令将执行会话录制代理的安装,并生成一个日志文件,用于记录安装过程中的详细信息。

对于 64 位系统:

msiexec /i SessionRecordingAgentx64.msi /q /l*vx yourinstallationlog SESSIONRECORDINGSERVERNAME=yourservername
SESSIONRECORDINGBROKERPROTOCOL=yourbrokerprotocol SESSIONRECORDINGBROKERPORT=yourbrokerport
<!--NeedCopy-->

注意:

SessionRecordingAgentx64.msi 文件位于 Citrix 虚拟应用和桌面 ISO 镜像的 \layout\image-full\x64\Session Recording 下。

对于 32 位系统:

msiexec /i SessionRecordingAgent.msi /q /l*vx yourinstallationlog SESSIONRECORDINGSERVERNAME=yourservername
SESSIONRECORDINGBROKERPROTOCOL=yourbrokerprotocol SESSIONRECORDINGBROKERPORT=yourbrokerport
<!--NeedCopy-->

注意:

SessionRecordingAgent.msi 文件位于 Citrix 虚拟应用和桌面 ISO 镜像的 \layout\image-full\x86\Session Recording 下。

其中:

  • yourservername 是托管会话录音服务器的计算机的 NetBIOS 名称或 FQDN。如果未指定,此值默认为 localhost
  • yourbrokerprotocol 是会话录音代理用于与会话录音代理通信的 HTTP 或 HTTPS。如果未指定,此值默认为 HTTPS。
  • yourbrokerport 是会话录音代理用于与会话录音代理通信的端口号。如果未指定,此值默认为零,这会指示会话录音代理使用所选协议的默认端口号:HTTP 为 80,HTTPS 为 443。
  • /q 指定静默模式。
  • /l*v 指定详细日志记录。
  • 其中,yourinstallationlog 指的是您的安装日志文件的位置。

升级会话录音功能

您可以将某些部署升级到更高版本,而无需首先设置新计算机或站点。您可以将会话录音 7.15 LTSR 的最新 CU 以及任何更高版本升级到会话录音的最新版本。

注意:

将 Session Recording Administration 从 7.6 升级到 7.13 或更高版本,并在 Session Recording Administration 中选择修改以添加 Administrator Logging 服务时,SQL Server 实例名称不会显示在管理员日志记录配置页面上。单击下一步时,将显示以下错误消息:数据库连接测试失败。请输入正确的数据库实例名称。作为一种解决方法,请为 localhost 用户添加对以下 SmartAuditor Server 注册表文件夹的读取权限:HKEY_LOCAL_MACHINE\SOFTWARE\Citrix\SmartAuditor\Server

您不能从技术预览版本进行升级。

要求、准备工作以及限制

  • 使用会话录音安装程序的图形界面或命令行界面,升级安装了会话录音组件的计算机上的组件。
  • 在进行任何升级活动之前,请备份 SQL Server 实例中名为 CitrixSessionRecording 的数据库。这样,如果在数据库升级后发现任何问题,您可以将其还原。
  • 除了是域用户之外,您还必须是正在升级会话录音组件的计算机上的本地管理员。
  • 如果会话录音服务器和会话录音数据库未安装在同一台服务器上,您必须具有数据库角色权限才能升级会话录音数据库。否则,您可以:
    • 要求数据库管理员分配 securityadmindbcreator 服务器角色权限以进行升级。升级完成后,securityadmindbcreator 服务器角色权限不再是必需的,可以安全删除。
    • 或者,使用 SessionRecordingAdministrationx64.msi 文件进行升级。在 msi 升级期间,将弹出一个对话框,提示输入具有 securityadmindbcreator 服务器角色权限的数据库管理员的凭据。键入正确的凭据,然后单击 OK 继续升级。
  • 如果您不打算同时升级所有会话录音代理,则会话录音代理 7.6.0(及更高版本)与最新(当前)版本的会话录音服务器兼容。但是,某些新功能和错误修复可能不会生效。
  • 在会话录音服务器升级期间启动的任何会话都不会被录制。
  • 在全新安装或升级后,会话录音代理属性中的图形调整选项默认启用,以保持与桌面合成重定向模式兼容。您可以在全新安装或升级后手动禁用此选项。
  • 在您从不包含此功能的早期版本升级会话录音后,管理员日志记录功能将不会被安装。若要添加此功能,请在升级后修改安装。
  • 如果在升级过程开始时存在实时录制会话,则这些录制会话将很难完整完成。
  • 查看以下升级顺序,以便您可以规划和缓解潜在的服务中断。

升级顺序

  1. 当会话录音数据库和会话录音服务器安装在不同的服务器上时,请在会话录音服务器上手动停止会话录音存储管理器服务。然后首先升级会话录音数据库。
  2. 通过 Internet Information Services (IIS) 管理器,确保会话录音代理正在运行。升级会话录音服务器。如果会话录音数据库和会话录音服务器安装在同一台服务器上,则会话录音数据库也将升级。
  3. 当会话录音服务器的升级完成后,会话录音服务将自动恢复联机状态。
  4. 升级会话录音代理(在主映像上)。
  5. 与会话录音服务器同时或在其之后升级会话录音策略控制台。
  6. 升级会话录制播放器。

将会话录制数据库部署到云 SQL 数据库服务

本节介绍如何将会话录制数据库部署到 Azure SQL 托管实例、AWS RDS 以及 Azure VM 上的 SQL Server。

将会话录制数据库部署到 Azure SQL 托管实例或 AWS RDS

提示:

您还可以运行类似于以下内容的单个命令,以将会话录制数据库部署到 Azure SQL 托管实例或 AWS RDS。有关详细信息,请参阅本文前面的自动化安装部分。

msiexec /i "SessionRecordingAdministrationx64.msi" ADDLOCAL="SsRecServer,PolicyConsole,SsRecLogging,StorageDatabase" DATABASEINSTANCE="CloudSQL" DATABASENAME="CitrixSessionRecording" LOGGINGDATABASENAME="CitrixSessionRecordingLogging" AZURESQLSERVICESUPPORT="1" AZUREUSERNAME="CloudSQLAdminName" AZUREPASSWORD="CloudSQLAdminPassword" /q /l*vx "c:\WithLogging.log"
<!--NeedCopy-->
  1. 创建一个 Azure SQL 托管实例,或通过 Amazon RDS 控制台创建一个 SQL Server 实例。

  2. (仅适用于 Azure SQL)记录属性面板中显示的 Server 字符串。这些字符串是会话录制数据库的实例名称。有关示例,请参阅以下屏幕截图。

    示例服务器字符串

  3. (仅适用于 AWS RDS)记录 EndpointPort 信息。我们将其用作数据库的实例名称,格式为 <Endpoint, Port>

    AWS RDS 实例的构成

  4. 请运行 SessionRecordingAdministrationx64.msi 文件,以便将会话录制数据库安装到您的系统上。

    选中“启用云 SQL”复选框并填写云 SQL 管理员名称和密码。进行其他必需的配置。

    填写云 SQL 管理员凭据

    注意:如果您更改云 SQL 管理员密码,则必须在“会话录制服务器属性”中更新密码。当您打开“会话录制服务器属性”时,将显示一条错误消息。单击“确定”继续,选择“云数据库”选项卡,然后键入新的云 SQL 管理员密码。重新启动 Citrix Session Recording Analytics 服务、Citrix Session Recording Storage Manager 服务和 IIS 服务。

    更新云 SQL 管理员密码(/zh-cn/session-recording/2107/media/updating-cloud-sql-admin-password.png)

将本地数据库迁移到云 SQL 托管实例

  1. 根据 https://docs.microsoft.com/zh-cn/data-migration/https://docs.aws.amazon.com/prescriptive-guidance/latest/patterns/migrate-an-on-premises-microsoft-sql-server-database-to-amazon-rds-for-sql-server.html 迁移您的本地数据库。

  2. 为使会话录制在迁移后正常工作,请在会话录制服务器上运行 SsRecUtils.exe

    C:\Program Files\Citrix\SessionRecording\Server\bin\SsRecUtils.exe -modifyazuredbconnectionpara {Database Instance} {Session Recording Database Name} {Session Recording Logging Database Name} {AzureAdminName}{AzureAdminPassword} iisreset /noforce

  3. 在会话录制服务器上,重新启动 Citrix 会话录制分析服务、Citrix 会话录制存储管理器服务和 IIS 服务。

将生产数据库从 Azure SQL 托管实例迁移到本地数据库

  1. 根据 https://docs.microsoft.com/zh-cn/data-migration/ 迁移数据库。

  2. 为使会话录制在迁移后正常工作,请在会话录制服务器上运行 SsRecUtils.exe

    C:\Program Files\Citrix\SessionRecording\Server\bin\SsRecUtils.exe -modifydbconnectionpara {Database Instance} {Session Recording Database Name} {Session Recording Logging Database Name} iisreset /noforce

  3. 在会话录制服务器上,重新启动 Citrix 会话录制分析服务、Citrix 会话录制存储管理器服务和 IIS 服务。

在 Azure VM 上的 SQL Server 上部署会话录制数据库

在 Azure VM 上的 SQL Server 上,您可以部署会话录制数据库。

  1. 请部署一个 Azure SQL 虚拟机。
  2. 配置 VM 并将其添加到安装会话录制组件的域中。
  3. 在安装会话录制数据库时,使用虚拟机的 FQDN 作为实例名称。 注意:当您使用 SessionRecordingAdministrationx64.msi 进行安装时,请清除“启用云 SQL”复选框。
  4. 请按照说明完成整个安装过程。

卸载会话录制功能

要从服务器或工作站中删除会话录制组件,请使用 Windows 控制面板中提供的卸载或删除程序选项。 要删除会话录制数据库,您必须具有与安装时相同的 securityadmindbcreator SQL Server 角色权限。

出于安全原因,在组件卸载后,管理员日志记录数据库不会被删除。