Linux Virtual Delivery Agent

在适用于 Azure 的 Citrix DaaS 标准版中创建 Linux 虚拟投递代理

您可以在适用于 Azure 的 Citrix DaaS 标准版(以前称为适用于 Azure 的 Citrix Virtual Apps and Desktops 标准版)中创建已加入域和未加入域的 Linux 虚拟投递代理,以便通过 Microsoft Azure 将虚拟应用程序和桌面交付到任何设备。Linux 虚拟投递代理和 Azure 都支持的 Linux 发行版可以使用此功能。有关详细信息,请参阅 适用于 Azure 的 Citrix DaaS 标准版

步骤 1: 在 Azure 中准备主映像

注意:

您还可以使用 Linux VDA 自更新 功能来安排自动软件更新。为此,请将命令行添加到主映像上的 etc/xdl/mcs/mcs_local_setting.reg 文件中。 例如,您可以添加以下命令行:

create -k "HKLM\System\CurrentControlSet\Control\Citrix\SelfUpdate" -t "REG_DWORD" -v "fEnabled" -d "0x00000001" --force

create -k "HKLM\System\CurrentControlSet\Control\Citrix\SelfUpdate" -t "REG_SZ" -v "ScheduledTime" -d "Immediately" --force

create -k "HKLM\System\CurrentControlSet\Control\Citrix\SelfUpdate" -t "REG_SZ" -v "Url" -d "<Your-Azure-Container-Url>" --force

create -k "HKLM\System\CurrentControlSet\Control\Citrix\SelfUpdate" -t "REG_SZ" -v "CaCertificate" -d "<Local-Certificate-Path-of-PortalAzureCom>" --force
<!--NeedCopy-->
  1. 在 Azure 中,创建受支持分发版的 Linux VM。
  2. 如有必要,在 Linux VM 上安装桌面环境。
  3. 在 VM 上,根据您的 Linux 分发版安装 .NET。

    除了 .NET Runtime 之外,在安装或升级 Linux VDA 之前,您必须在所有受支持的 Linux 分发版上安装 .ASP.NET Core Runtime。Amazon Linux 2 需要版本 6。其他分发版需要版本 8。

    如果您的 Linux 分发版包含所需的 .NET 版本,请从内置源安装。否则,请从 Microsoft 软件包源安装 .NET。有关详细信息,请参阅 https://docs.microsoft.com/zh-cn/dotnet/core/install/linux-package-managers

  4. (仅限 Ubuntu) 将 source /etc/network/interfaces.d/* 行添加到 /etc/network/interfaces 文件中。
  5. (仅限 Ubuntu) 将 /etc/resolv.conf 指向 /run/systemd/resolve/resolv.conf,而不是指向 /run/systemd/resolve/stub-resolv.conf

    unlink /etc/resolv.conf
    
    ln -s /run/systemd/resolve/resolv.conf /etc/resolv.conf
    <!--NeedCopy-->
    
  6. 安装 Linux 虚拟投递代理软件包。
  7. 指定要使用的数据库。

    除了 PostgreSQL 之外,您还可以使用 SQLite 或内置注册表服务。安装 Linux VDA 软件包后,您还可以在 SQLite、PostgreSQL 和内置注册表服务之间进行切换。为此,请完成以下步骤:

    1. 运行 /opt/Citrix/VDA/sbin/ctxcleanup.sh。如果是全新安装,请省略此步骤。

    2. 在运行 deploymcs.sh 之前编辑 /etc/xdl/db.conf

      注意:

      • 我们建议您仅在 VDI 模式下使用 SQLite。
      • 为了便于安装和使用 MCS,您可以在 SQLite、PostgreSQL 和内置注册表服务之间切换,而无需手动安装它们。除非通过 /etc/xdl/db.conf 另行指定,否则 Linux VDA 默认使用内置注册表服务。如果您需要自定义版本的 PostgreSQL,而不是 Linux 发行版提供的版本,则必须手动安装指定版本,编辑 /etc/xdl/db.conf 以反映新版本,并在运行简易安装脚本 (ctxinstall.sh) 或 MCS 脚本 (deploymcs.sh) 之前启动 PostgreSQL 服务。有关示例 db.conf 文件,请参阅步骤 7:指定要使用的数据库
      • 您还可以使用 /etc/xdl/db.conf 配置 PostgreSQL 的端口号。
      • To use build-in registry service on RHEL9, RHEL10 and Rocky9, the CodeReady Builder repository is required to enable: RHEL9: subscription-manager repos –enable codeready-builder-for-rhel-9-$(arch)-rpms RHEL10: subscription-manager repos –enable codeready-builder-for-rhel-10-$(arch)-rpms Rocky9: dnf config-manager –enable crb
  8. 更改 MCS 变量。

    有两种方法可以配置 MCS 变量:

    • 编辑 /etc/xdl/mcs/mcs.conf 文件。
    • 使用简易安装 GUI。要打开简易安装 GUI,请在 Linux VDA 的桌面环境中运行 /opt/Citrix/VDA/bin/easyinstall 命令。

      注意:

      dns 变量留空。 如果创建计算机目录时选择静态随机类型,请设置 VDI_MODE=Y

      如果通过编辑 /etc/xdl/mcs/mcs.conf 配置 MCS 变量,请运行 /opt/Citrix/VDA/sbin/deploymcs.sh。如果通过 GUI 配置 MCS 变量,请单击部署。在 GUI 上单击部署后,您在 GUI 上设置的变量将覆盖您在 /etc/xdl/mcs/mcs.conf 文件中设置的变量。

  9. 在 Azure 中,停止(或解除分配)VM。单击磁盘导出以生成虚拟硬盘 (VHD) 文件的 SAS URL,您可以将其用作主映像来创建其他 VM。

    生成 VHD 文件的 URL(/zh-cn/linux-virtual-delivery-agent/current-release/media/export-disk.png)

  10. (可选) 在主映像上进行组策略设置。您可以使用 ctxreg 工具进行组策略设置。例如,以下命令为 PDF 打印启用自动创建 PDF 通用打印机策略。

    /opt/Citrix/VDA/bin/ctxreg create -k "HKLM\Software\Citrix\GroupPolicy\Defaults\PrintingPolicies" -t "REG_DWORD" -v "AutoCreatePDFPrinter" -d "0x00000001" --force
    <!--NeedCopy-->
    

步骤 2:从 Azure 导入主映像

  1. 管理 控制板中,展开右侧的主映像。显示屏列出了 Citrix 提供的主映像以及您创建和导入的映像。

    提示:

    此服务的大多数管理员活动都是通过管理监视控制板进行管理的。创建第一个目录后,登录 Citrix Cloud™ 并选择托管桌面服务后,管理控制板将自动启动。

    主映像(/zh-cn/linux-virtual-delivery-agent/current-release/media/master-images.png)

  2. 单击导入映像
  3. 输入您在 Azure 中生成的 VHD 文件的 SAS URL。为主要映像类型选择 Linux

    从 Azure 导入映像(/zh-cn/linux-virtual-delivery-agent/current-release/media/import-an-image-from-azure.png)

  4. 按照向导中的说明,以完成主映像的导入过程。

步骤 3:创建计算机目录

访问 管理 控制板,然后单击创建目录。创建计算机目录时,请选择您之前创建的主映像。

注意:

用作主映像的 VM 无法通过 SSH 或 RDP 访问。要访问 VM,请使用 Azure 门户中的串行控制台。

在适用于 Azure 的 Citrix DaaS 标准版中创建 Linux 虚拟投递代理