VMware Horizon Recording 功能允许管理员记录桌面和应用程序会话,以监控 Linux 远程桌面和应用程序的用户行为。

管理员可以在录制的桌面或应用程序会话中观察用户的精确按键、指针和鼠标活动以及其他用户行为。除了为用户行为提供更高的安全性和更严格的审核外,录制功能还有助于对用户在会话期间遇到的问题进行故障排除和重现。管理员可以播放、存储和审核录制。

当用户登录时,Horizon Recording 会自动启动,并显示默认消息正在根据安全策略录制您的会话。如果会话处于已连接状态,则会运行录制。当用户注销或断开连接时,录制将停止。如果用户更改桌面或应用程序会话的屏幕分辨率,则 Horizon Recording 会创建新的录制分段。录制文件大小因连接会话的持续时间而异。录制内容存储为 MP4 格式,可以进行下载以在本地播放器中播放,也可以在 Horizon Recording Web 控制台中查看。

组件

适用于 Linux 的 Horizon Recording 包含以下组件:
  • Horizon Recording Server:收集有关会话的信息,以及用于存储和播放的原始录制数据。
  • 适用于 Linux 的 Horizon Recording Agent:录制用户会话,在 Horizon Recording Server 中注册会话,并上载录制数据。

这些组件适用于 VMware Horizon 8 2306 及更高版本。安装文件可在 VMware Customer Connect 上获取。

注: 与某些其他 Horizon 8 功能一样,此功能并非适用于每个订阅。有关更多信息,请参阅 VMware Horizon 订阅功能比较

Horizon Recording Web 控制台

安装 Horizon Recording Server(请参阅本文的下一节)后,您可以访问 Horizon Recording Web 控制台,网址为 https://<localservername>:9443

Web 控制台显示以下内容:
  • 仪表板包括最近录制的列表、服务器、数据库和存储录制的文件夹,以及录制信息,如开始时间、持续时间、大小和状态。您可以锁定、解锁和删除录制。
  • 录制包括所有录制的列表及相关信息,如名称、启动的资源、位置、开始日期和结束日期、开始时间、持续时间、大小和状态。您可以锁定、解锁和删除录制。
  • 审核记录可跟踪用户界面中的所有用户操作。

安装 Horizon Recording Server

在计算机上安装 Horizon Recording Server 组件,以收集有关会话的信息以及用于存储和播放的原始录制数据。

Horizon Recording Server 组件包含以下各项:
  • 用于会话信息存储和配置的数据库
  • 用于记录存储的 Windows NTFS 文件夹
  • 用于收集录制数据、管理和播放的 Web 服务

您可以将 Horizon Recording Server 部署为独立安装,在此类型的安装中,该服务器安装在利用本地 SQLite 数据库(作为 local.db 存储在安装目录中)和本地 NTFS 文件夹的计算机上。

您还可以将 Horizon Recording Server 部署到在负载均衡器后使用多个服务器的高可用性环境中,从而利用 Microsoft SQL 或 PostgreSQL 数据库,以及所有服务器上用于存储录制数据的共享 NTFS 文件夹。支持配置了 L4 负载分发的负载均衡器。

最低服务器资源要求(需要满足这些要求才能支持 2,000 个活动录制)
资源 最小值
CPU 4 个虚拟 CPU
内存 8 GB
可用磁盘空间 20 GB
注: 这取决于用户在会话中运行的应用程序类型以及帧变化速率。您必须监控使用情况,并根据需要添加额外的磁盘空间。
注: Horizon Recording Server 内置在 .Net Core 中,如果使用组提取,则需要一个加入域的 64 位 Windows Server 操作系统。服务器操作系统必须是 Windows Server 2016 或更高版本(64 位)。

要安装 Horizon Recording Server,请执行以下步骤。

  1. 下载 HorizonRecordingServer.exe 文件并将其复制到服务器上的本地文件夹。
  2. 运行安装程序并按照步骤操作。默认凭据如下所示。

    用户名/密码:administrator/Recording123

    该服务器现在可通过 Horizon Recording Web 控制台(网址为 https://<localservername>:9443)访问
  3. 手动保护录制文件夹权限,以便只有记录服务器的 Active Directory 帐户可以访问该文件夹来添加、修改或删除录制。
  • 要卸载 Horizon Recording Server,请使用“添加/删除程序”(appwiz.cpl) 移除 Horizon Recording Server 二进制文件,然后手动删除以下组件:
    • installation directory 中的本地数据库文件 (local.db)
    • 位于 C:\programdata\VMware\Horizon Recording 中的日志
    • 位于 installation directory\Recordings 中的本地录制
  • 要重置安装,请执行以下操作:
    1. 停止 Horizon Recording 服务。
    2. 从安装目录中删除“Recordings”文件夹。
    3. 从安装目录中删除 servicesettings.json 文件和 local.db 文件。
    4. 启动 Horizon Recording 服务。

    系统会重新创建 servicesettings.jsonlocal.db 文件。

适用于 Linux 的 Horizon Recording Agent 的要求

运行以下 Linux 分发包的计算机支持 Horizon Recording:
  • RHEL 8.x/9.x
  • Rocky Linux 8.x/9.x
  • RHEL/CentOS 7.9
  • Ubuntu 20.04/22.04
  • Debian 10.x/11.x
  • SLED/SLES 15 SP4

在要录制会话的所有 Linux 计算机上安装 Horizon Recording Agent 组件。

注: 必须先在计算机上安装 Horizon Agent,然后再安装 Horizon Recording Agent 组件。
最低资源要求
资源 最小值(单会话桌面/应用程序) 最小值(多会话桌面/应用程序 - 50 个会话)
CPU 2 个虚拟 CPU 40 个虚拟 CPU
内存 2 GB 48 GB
可用磁盘空间 5 GB
注: 这取决于用户在会话中运行的应用程序类型以及帧变化速率。您必须监控使用情况,并根据需要添加额外的磁盘空间。
50 GB
注: 这取决于用户在会话中运行的应用程序类型以及帧变化速率。您必须监控使用情况,并根据需要添加额外的磁盘空间。
其他系统要求
  • Horizon 8 2306 或更高版本
  • 在 Horizon Recording Server 上的防火墙入站规则中允许端口 9443

适用于 Linux 的 Horizon Recording Agent 的安装程序有两种不同的格式:

  • tar 安装程序
  • RPM 安装程序

运行 Horizon Recording Agent 的 tar 安装程序

  1. 在 Linux 计算机上安装 Horizon Agent。请参阅在 Linux 虚拟机上安装 Horizon Agent
  2. 将 Horizon Recording Agent tar 软件包下载到代理计算机上的本地目录。
  3. 解压缩 tar。
    tar zxvf Horizon.Recording.Linux.Agent-x.x.x.x.tar.gz
  4. 导航到 tar 目录,并根据您计划从代理计算机创建的资源池类型运行相应的安装命令。
    池类型 命令

    即时克隆或完整克隆池

    (附加 -t 参数)

    sudo ./install.sh -u https://<Horizon Recording Server IP>:9443 -n <username> -p <password> -t

    手动池

    (不附加 -t 参数)

    sudo ./install.sh -u https://<Horizon Recording Server IP>:9443 -n <username> -p <password>
    注: -t 参数可确保从计算机创建的所有克隆都安装并配置了 Horizon Recording Agent。有关安装命令中可包含的所有必需参数和可选参数的说明,请参阅 Horizon Recording Agent 的安装程序参数

运行 Horizon Recording Agent 的 RPM 安装程序

  1. 在 Linux 计算机上安装 Horizon Agent。请参阅在 Linux 虚拟机上安装 Horizon Agent
  2. 将 Horizon Recording Agent RPM 软件包下载到代理计算机上的本地目录。
  3. 运行相应命令以安装 RPM 软件包。
    sudo rpm -ivh ./HorizonRecording.Linux.Agent-x.x.x.x.rpm
  4. /usr/lib/vmware/horizonrecording/ 目录中找到 rpminstall.sh。根据计划从代理计算机创建的资源池类型运行相应的安装命令,继续执行安装和配置过程。
    池类型 命令

    即时克隆或完整克隆池

    (附加 -t 参数)

    sudo /usr/lib/vmware/horizonrecording/rpminstall.sh -u https://<Horizon Recording Server IP>:9443 -n <username> -p <password> -t

    手动池

    (不附加 -t 参数)

    sudo /usr/lib/vmware/horizonrecording/rpminstall.sh -u https://<Horizon Recording Server IP>:9443 -n <username> -p <password>
    注: -t 参数可确保从计算机创建的所有克隆都安装并配置了 Horizon Recording Agent。有关安装命令中可包含的所有必需参数和可选参数的说明,请参阅 Horizon Recording Agent 的安装程序参数

Horizon Recording Agent 的安装程序参数

这些安装程序参数适用于以下每个安装程序脚本:

  • tar 软件包中的 install.sh
  • RPM 软件包中的 rpminstall.sh
表 1. Horizon Recording Agent 安装程序脚本的必需参数
必需参数 说明

--uri

-u

会话录制 URL,包括 https://

--username

-n

用于向服务器进行身份验证的用户名。

--password

-p

用于向服务器进行身份验证的密码。
表 2. Horizon Recording Agent 安装程序脚本的可选参数
可选参数 说明

--help

-h

显示有关使用安装程序脚本的帮助。

--trusted-ssl-certificate

-s

可信 SSL 证书指纹。

支持的格式示例:

59 2C E2 BD 6F 44 09 7F BF 8C 0F DA 66 6A 1C 3C 38 90 BE 24
C8:E1:BD:B3:6F:22:E9:EA:60:35:19:D7:E0:F5:42:15:33:85:67:16

--template

-t

确保从计算机创建的所有即时克隆或完整克隆都安装并配置了 Horizon Recording Agent。

修复 Horizon Recording Agent 连接

如果遇到以下某一情况,可以执行本节中介绍的步骤:

  • Horizon Recording Agent 失去与 Horizon Recording Server 的可信连接。
  • Horizon Recording Agent 要求在新的 Horizon Recording Server 中进行注册。

以下过程会重新注册 Horizon Recording Agent 与 Horizon Recording Server 之间的受信任连接。

  1. 在代理计算机上,停止 horizonrecording.service 守护进程。
    systemctl stop horizonrecording.service
  2. 根据从代理计算机创建的资源池类型运行相应的注册命令。
    池类型 命令

    即时克隆或完整克隆池

    (附加 -t 参数)

    sudo /usr/lib/vmware/horizonrecording/Horizon.Recording.xAgent.worker -register -url="https://<Horizon Recording Server IP>:9443" -username=<username> -password=<password> -thumbprint="<Horizon Recording Server Certificate Thumbprint>" -t

    手动池

    (不附加 -t 参数)
    sudo /usr/lib/vmware/horizonrecording/Horizon.Recording.xAgent.worker -register -url="https://<Horizon Recording Server IP>:9443" -username=<username> -password=<password> -thumbprint="<Horizon Recording Server Certificate Thumbprint>"
    注: 有关注册命令中可包含的所有必需参数和可选参数的说明,请参阅 Horizon Recording Agent 的安装程序参数

Horizon Recording Agent 日志

Horizon Recording Agent 会将活动日志保存到 /var/log/vmware/horizonrecording 目录中。

您可以通过将最低日志级别更改为“跟踪”来增加日志记录详细信息。

注: 由于 Horizon Recording Agent 日志的文件大小可能会快速增加,因此建议仅出于故障排除目的增加日志记录详细信息。
  1. 修改 /usr/lib/vmware/horizonrecording/Nlog.config 文件,如下所示:
    <logger name="*" minlevel="Trace" writeTo="ServiceLogging" />
  2. 要使更改生效,请重新启动 horizonrecording.service 守护进程。
    systemctl restart horizonrecording.service

升级 Horizon Recording Server

升级 Horizon Recording Server 之前,请执行以下操作:
  • 确认不存在活动的录制。
  • 为 Recordings 文件夹、servicesettings.json 文件和 local.db(如果使用 SQLite 作为数据库)创建备份。

要升级 Horizon Recording Server,请执行以下步骤。

  1. 下载 HorizonRecordingServer.exe 文件。
  2. HorizonRecordingServer.exe 文件复制到服务器上的本地文件夹。
  3. 运行 HorizonRecordingServer.exe
请注意以下事项:
  • 默认情况下,在相同的 C:\Program Files\VMware\Desktop Recording Server 文件夹中升级服务器。
    • 如果将升级位置更改为新文件夹,则不会保留配置,而是将其视为全新安装。因此,升级后就无法从 Web 控制台访问或播放旧录制文件。
    • 如果不更改默认位置,则将保留所有配置,并可以在升级后从 Web 控制台访问和播放旧录制文件。
  • 升级后,服务器的日志位置将更改为新的 C:\ProgramData\VMware\Horizon Recording 文件夹。旧日志仍位于 C:\ProgramData\VMware\Horizon Desktop Recording 中。

升级 Horizon Recording Agent

在升级 Horizon Recording Agent 之前,请确认代理上不存在活动的录制。

注: 建议先升级服务器,然后再升级代理。

要升级 Horizon Recording Agent,请按照适用于您的安装程序类型的过程进行操作。

使用 tar 安装程序升级 Horizon Recording Agent

  1. 下载并运行新版本 Horizon Recording Agent 的 tar 安装程序。有关详细说明,请参阅运行 Horizon Recording Agent 的 tar 安装程序
  2. 重新启动代理计算机以应用更改。

使用 RPM 安装程序升级 Horizon Recording Agent

  1. 下载新版本的 Horizon Recording Agent 的 RPM 安装程序包,并将安装程序保存到代理计算机上的本地目录。
  2. 运行相应命令以在升级模式下安装 RPM 软件包。
    sudo rpm -Uvh HorizonRecording.Linux.Agent-x.x.x.x.rpm
  3. 重新启动代理计算机以应用更改。

卸载 Horizon Recording Agent

如果需要从代理计算机中移除 Horizon Recording Agent,请使用适用的卸载命令。

  • tar 安装程序:
    sudo /usr/lib/vmware/horizonrecording/uninstall.sh
  • RPM 安装程序:
    sudo rpm -e HorizonRecording.Linux.Agent-x.x.x.x