Linux Virtual Delivery Agent

使用 Machine Creation Services™ (MCS) 创建 Linux VDA

您可以使用 MCS 创建已加入域和未加入域的 VDA。

重要:

从 2212 版本开始,以下是重要的更改:

  • /etc/xdl/mcs/mcs.conf 文件或轻松安装 GUI 中的 AD_INTEGRATION 变量不再具有默认值。您必须根据需要设置一个值。有关详细信息,请参阅本文中的“步骤 3h:配置 MCS 变量”部分。
  • /etc/xdl/mcs/mcs.conf 中的 UPDATE_MACHINE_PW 条目的有效值不再是 enableddisabled,而是 YN。有关详细信息,请参阅本文中的“自动执行计算机帐户密码更新”部分。

支持的发行版

  Winbind SSSD Centrify PBIS
Debian 11.3
RHEL 9.2/9.0
RHEL 8.8/8.6
Rocky Linux 9.2/9.0
Rocky Linux 8.8/8.6
RHEL 7.9, CentOS 7.9
SUSE 15.4
Ubuntu 22.04, Ubuntu 20.04

注意:

要使用当前正在运行的、使用 SSSD 连接到域的 RHEL 8.x/9.x 或 Rocky Linux 8.x/9.x VDA 作为 MCS 的模板 VM,请确保:

  • VDA 是手动安装的,而不是使用轻松安装安装的。轻松安装对 RHEL 8.x/9.x 和 Rocky Linux 8.x/9.x 使用 Adcli,并且 SSSD 和 Adcli 的组合不受 MCS 支持。
  • Samba 服务器配置为使用 SSSD 进行 AD 身份验证。有关详细信息,请参阅 Red Hat 文章:https://access.redhat.com/solutions/3802321
  • 支持的管理程序

  • AWS
  • Citrix Hypervisor™
  • GCP
  • Microsoft Azure
  • Nutanix AHV
  • VMware vSphere

如果您尝试在不受支持的管理程序上准备主映像,可能会出现意外结果。

使用 MCS 创建 Linux VM

  • 注意事项

    • 从 2203 版本开始,您可以在 Microsoft Azure、AWS 和 GCP 上托管 Linux VDA,适用于 Citrix Virtual Apps and Desktops 以及 Citrix DaaS(以前称为 Citrix Virtual Apps and Desktops 服务)。要将这些公有云主机连接添加到您的 Citrix Virtual Apps and Desktops 部署中,您需要 Citrix Universal Subscription 或 Hybrid Rights 许可证。有关 Universal Subscription 和 Hybrid Rights 许可证的信息,请参阅“通过 Citrix Universal Subscription 进行过渡和升级 (TTU)”。

    • 裸机服务器不支持与 MCS 结合使用来创建虚拟机。

    • Citrix® 使用以下 Centrify 版本在相关的 Linux 发行版上进行初始功能验证:

    Linux 发行版 Centrify 版本
    RHEL 7/8 5.8.0
    SUSE 5.7.1
  • Debian, Ubuntu 5.6.1
  • 使用其他版本的 Centrify 可能会导致错误。请勿使用 Centrify 将模板计算机加入域。

  • 如果您正在使用 PBIS 或 Centrify 将 MCS 创建的计算机加入 Windows 域,请完成以下任务:

    • 在模板计算机上,在 /etc/xdl/mcs/mcs.conf 文件中配置 PBIS 或 Centrify 软件包下载路径,或直接安装 PBIS 或 Centrify 软件包。

    • 在运行 /opt/Citrix/VDA/sbin/deploymcs.sh 之前,创建一个组织单位 (OU),该组织单位对所有下属的、MCS 创建的计算机具有写入和密码重置权限。

    • /opt/Citrix/VDA/sbin/deploymcs.sh 运行完成后重新启动 MCS 创建的计算机之前,根据您的部署,在您的 Delivery Controller 或 Citrix Cloud Connector 上运行 klist -li 0x3e4 purge

  • (仅适用于 Nutanix)步骤 1:安装并注册 Nutanix AHV 插件

从 Nutanix 获取 Nutanix AHV 插件软件包。在您的 Citrix Virtual Apps and Desktops 环境中安装并注册该插件。有关详细信息,请参阅 Nutanix 支持门户上提供的 Nutanix Acropolis MCS 插件安装指南。

步骤 1a:为本地 Delivery Controller 安装并注册 Nutanix AHV 插件

安装 Citrix Virtual Apps and Desktops™ 后,在您的 Delivery Controller 上选择并安装 XD MCS AHV Plugin

适用于本地 Delivery Controller 的 Nutanix AHV 插件

步骤 1b:为云 Delivery Controller 安装并注册 Nutanix AHV 插件

选择并安装适用于 Citrix Cloud™ Connector 的 CWA MCS AHV Plugin。在所有已向 Citrix Cloud 租户注册的 Citrix Cloud Connector 上安装该插件。即使 Citrix Cloud Connector 服务于没有 AHV 的资源位置,也必须注册它们。

步骤 1c:安装插件后完成以下步骤

  • 验证是否已在 C:\Program Files\Common Files\Citrix\HCLPlugins\CitrixMachineCreation\v1.0.0.0 中创建 Nutanix Acropolis 文件夹。
  • 运行命令 "C:\Program Files\Common Files\Citrix\HCLPlugins\RegisterPlugins.exe" -PluginsRoot "C:\Program Files\Common Files\Citrix\HCLPlugins\CitrixMachineCreation\v1.0.0.0"
  • 在您的本地 Delivery Controller 上重新启动 Citrix Host、Citrix Broker 和 Citrix Machine Creation Services,或在 Citrix Cloud Connector 上重新启动 Citrix RemoteHCLServer Service。

    提示:

    建议您在安装或更新 Nutanix AHV 插件时停止然后重新启动 Citrix Host、Citrix Broker 和 Machine Creation Services。

步骤 2:创建主机连接

本节提供了如何创建到 Azure、AWS、Citrix Hypervisor、GCP、Nutanix AHV 和 VMware vSphere 的主机连接的示例。有关详细信息,请参阅 Citrix Virtual Apps and Desktops 文档中的“创建和管理连接和资源”以及 Citrix DaaS 文档中的“创建和管理连接”。

在 Citrix Studio 中创建到 Azure 的主机连接

  1. 登录到 Citrix Cloud。
  2. 在左上角菜单中,选择 我的服务 > DaaS
  3. 管理 > 完整配置 中,在左侧窗格中选择 托管
  4. 在操作栏中选择 添加连接和资源

    添加连接图像

  5. 选择 Microsoft Azure 作为连接类型。

  6. 向导将引导您完成各个页面。特定页面内容取决于所选的连接类型。完成每个页面后,选择 下一步,直到到达 摘要 页面。有关详细信息,请参阅创建非域加入的 Linux VDA文章中的“步骤 2:创建主机连接”。

在 Citrix Studio 中创建到 AWS 的主机连接

    1. 在 Citrix Studio 中,选择 配置 > 托管 > 添加连接和资源
    1. 选择 Amazon EC2 作为连接类型。
  • 选择 Amazon EC2
  1. 键入您的 AWS 账户的 API 密钥和秘密密钥,然后键入您的连接名称。

    访问密钥对

    API 密钥 是您的访问密钥 ID,秘密密钥 是您的秘密访问密钥。它们被视为一个访问密钥对。如果您丢失了秘密访问密钥,可以删除该访问密钥并创建另一个。要创建访问密钥,请执行以下操作:

    1. 登录到 AWS 服务。
    2. 导航到 Identity and Access Management (IAM) 控制台。
    3. 在左侧导航窗格中,选择 用户
    4. 选择目标用户并向下滚动以选择 安全凭证 选项卡。
    5. 向下滚动并单击 创建访问密钥。将出现一个新窗口。
    6. 单击 下载 .csv 文件 并将访问密钥保存到安全位置。
  2. 向导将引导您完成各个页面。特定页面内容取决于所选的连接类型。完成每个页面后,选择 下一步,直到到达 摘要 页面。

在 Citrix Studio 中创建到 Citrix Hypervisor 的主机连接

  1. 登录到 Citrix Cloud。
  2. 在左上角菜单中,选择 我的服务 > DaaS
    1. 管理 > 完整配置 中,在左侧窗格中选择 托管
    1. 在操作栏中选择 添加连接和资源
  1. 选择 Citrix Hypervisor 作为连接类型。
  2. 键入您的 Citrix Hypervisor 账户的连接地址(Citrix Hypervisor URL)、您的用户名和密码以及您的连接名称。

在 Citrix Studio 中创建到 GCP 的主机连接

根据Google Cloud Platform 虚拟化环境设置您的 GCP 环境,然后完成以下步骤以创建到 GCP 的主机连接。

  1. 登录到 Citrix Cloud。
  2. 在左上角菜单中,选择 我的服务 > DaaS
  3. 管理 > 完整配置 中,在左侧窗格中选择 托管
  4. 在操作栏中选择 添加连接和资源
  5. 选择 Google Cloud Platform 作为连接类型。

  6. 导入您的 GCP 账户的服务账户密钥,然后键入您的连接名称。

  7. 向导将引导您完成各个页面。特定页面内容取决于所选的连接类型。完成每个页面后,选择 下一步,直到到达 摘要 页面。有关详细信息,请参阅创建非域加入的 Linux VDA文章中的“步骤 2:创建主机连接”。

在 Citrix Studio 中创建到 Nutanix 的主机连接

  1. 对于本地 Delivery Controller,请在本地 Citrix Studio 中选择 配置 > 托管 > 添加连接和资源。对于云 Delivery Controller,请在 Citrix Cloud 上的基于 Web 的 Studio 控制台中选择 管理 > 托管 > 添加连接和资源,以创建到 Nutanix hypervisor 的连接。
  2. 添加连接和资源 向导中,在 连接 页面上选择 Nutanix AHV 作为连接类型,然后指定 hypervisor 地址、凭据和连接名称。在 网络 页面上,为该单元选择一个网络。

    例如,在本地 Citrix Studio 中:

    在本地 Citrix Studio 中创建到 Nutanix 的主机连接

在 Citrix Studio 中创建到 VMware 的主机连接

  1. 在 vSphere 环境中安装 vCenter Server。有关详细信息,请参阅 VMware vSphere

  2. 在 Citrix Studio 中,选择 配置 > 托管 > 添加连接和资源

  3. 选择 VMware vSphere 作为连接类型。

    选择 VMware vSphere

  4. 键入您的 VMware 账户的连接地址(vCenter Server URL)、您的用户名和密码以及您的连接名称。

    VMware 连接名称

步骤 3:准备主映像

(仅限 Citrix Hypervisor)步骤 3a:安装 Citrix VM Tools

在模板 VM 上为每个 VM 安装 Citrix VM Tools,以便使用 xe CLI 或 XenCenter。除非安装这些工具,否则 VM 性能可能会很慢。如果没有这些工具,您将无法执行以下任何操作:

  • 干净地关闭、重新启动或暂停 VM。
  • 在 XenCenter 中查看 VM 性能数据。
  • 迁移正在运行的 VM(通过 XenMotion)。
  • 创建快照或带内存的快照(检查点),并还原到快照。
  • 调整正在运行的 Linux VM 上的 vCPU 数量。
  1. 运行以下命令以装载名为 guest-tools.iso 的 Citrix VM Tools。

    sudo mount /dev/cdrom /mnt
    <!--NeedCopy-->
    
  2. 根据您的 Linux 发行版运行以下命令以安装 xe-guest-utilities 软件包。

    对于 RHEL/CentOS/Rocky Linux:

    sudo rpm -i /mnt/Linux/xe-guest-utilities_{package-version}_all.rpm
    <!--NeedCopy-->
    

    对于 Ubuntu/Debian:

    sudo dpkg -i /mnt/Linux/xe-guest-utilities_{package-version}_all.deb
    <!--NeedCopy-->
    

    对于 SUSE:

    sudo rpm -i /mnt/Linux/xe-guest-utilities_{package-version}_all.rpm
    <!--NeedCopy-->
    
  3. 在 XenCenter 的常规选项卡中检查模板 VM 的虚拟化状态。如果 Citrix VM Tools 已正确安装,虚拟化状态将显示为已优化

  • 步骤 3b:验证 AWS、Azure 和 GCP 上的 SUSE 15.4 配置

对于 AWS、Azure 和 GCP 上的 SUSE 15.4,请确保:

  • 您正在使用版本 12 或更高版本的 libstdc++6
  • /etc/sysconfig/windowmanager 中的 Default_WM 参数设置为 “gnome”

步骤 3c:在 GCP 上禁用 Ubuntu 20.04 的 RDNS

-  在模板 VM 上,在 /etc/krb5.conf 中 **[libdefaults]** 下添加 **rdns = false** 行。

-  #### 步骤 3d:在模板 VM 上安装 Linux VDA 软件包

-  > **注意:**
-  >
-  > -  要使用当前正在运行的 VDA 作为模板 VM,请跳过此步骤。要使用通过 SSSD 连接到域的当前正在运行的 RHEL 8.x/9.x 或 Rocky Linux 8.x/9.x VDA 作为模板 VM,请确保:
-  >
-  >     -  VDA 是手动安装的,而不是通过轻松安装方式安装的。轻松安装方式对 RHEL 8.x/9.x 和 Rocky Linux 8.x/9.x 使用 **Adcli**,而 SSSD 和 **Adcli** 的组合不受 MCS 支持。
-  > > >         -  Samba 服务器配置为使用 SSSD 进行 AD 身份验证。有关详细信息,请参阅 Red Hat 文章:<https://access.redhat.com/solutions/3802321>。 > >     -  在模板 VM 上安装 Linux VDA 软件包之前,请安装 .NET Runtime 6.0。

根据您的 Linux 发行版,运行以下命令来设置 Linux VDA 的环境:

对于 RHEL/CentOS/Rocky Linux:

注意:

-  对于 RHEL 和 CentOS,在安装 Linux VDA 并成功运行 `deploymcs.sh` 之前,请安装 EPEL 存储库。有关如何安装 EPEL 的信息,请参阅 <https://docs.fedoraproject.org/en-US/epel/> 上的说明。

-  在 RHEL 9.2/9.0 和 Rocky Linux 9.2/9.0 上安装 Linux VDA 之前,请将 **libsepol** 软件包更新到版本 3.4 或更高版本。
sudo yum –y localinstall <PATH>/<Linux VDA RPM>
<!--NeedCopy-->

对于 Ubuntu/Debian:

sudo dpkg –i  <PATH>/<Linux VDA DEB>

apt-get install -f
<!--NeedCopy-->

对于 SUSE:

sudo zypper –i install <PATH>/<Linux VDA RPM>
<!--NeedCopy-->

步骤 3e:启用存储库以安装 tdb-tools 软件包(仅限 RHEL 7)

对于 RHEL 7 服务器:

subscription-manager repos --enable=rhel-7-server-optional-rpms
<!--NeedCopy-->

对于 RHEL 7 工作站:

    -  subscription-manager repos --enable=rhel-7-workstation-optional-rpms
<!--NeedCopy-->

步骤 3f:(在 SUSE 上)手动安装 ntfs-3g

在 SUSE 平台上,没有存储库提供 ntfs-3g。请手动下载源代码、编译并安装 ntfs-3g:

  1. 安装 GNU Compiler Collection (GCC) 编译器系统和 make 软件包:

    sudo zypper install gcc
    sudo zypper install make
    <!--NeedCopy-->
    
  2. 下载 ntfs-3g 软件包。

      1. 解压缩 ntfs-3g 软件包:
    sudo tar -xvzf ntfs-3g_ntfsprogs-<package version>.tgz
    <!--NeedCopy-->
    
    1. 输入 ntfs-3g 软件包的路径:
     sudo cd ntfs-3g_ntfsprogs-<package version>
     <!--NeedCopy-->
    
  1. 安装 ntfs-3g:

    ./configure
    make
    make install
    <!--NeedCopy-->
    

步骤 3g:指定要使用的数据库

安装 Linux VDA 软件包后,您可以在 SQLite 和 PostgreSQL 之间切换。为此,请完成以下步骤:

注意:

  • 我们建议您仅在 VDI 模式下使用 SQLite,并在托管共享桌面交付模型中使用 PostgreSQL。
    • 为了便于安装和 MCS,您可以指定使用 SQLite 或 PostgreSQL,而无需手动安装它们。除非通过 /etc/xdl/db.conf 另行指定,否则 Linux VDA 默认使用 PostgreSQL。
    • 您还可以使用 /etc/xdl/db.conf 配置 PostgreSQL 的端口号。
  1. 运行 /opt/Citrix/VDA/sbin/ctxcleanup.sh。如果是全新安装,请省略此步骤。

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

步骤 3h:配置 MCS 变量

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

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

![简易安装 GUI](/en-us/linux-virtual-delivery-agent/2308/media/easy-install-gui.png)

> **提示:**
>
> 单击**保存**可将变量设置保存到您指定路径下的本地文件。单击**加载**可从您指定的文件加载变量设置。

以下是您可以为未加入域和已加入域的场景配置的 MCS 变量:

  • 对于未加入域的场景

    您可以使用默认变量值或根据需要自定义变量(可选):

    DOTNET_RUNTIME_PATH=path-to-install-dotnet-runtime \ DESKTOP_ENVIRONMENT= **gnome | mate \** REGISTER_SERVICE=**Y | N** ADD_FIREWALL_RULES=**Y | N** VDI_MODE=**Y | N** START_SERVICE=**Y | N**

  • 对于已加入域的场景

    • Use_AD_Configuration_Files_Of_Current_VDA:确定是否使用当前正在运行的 VDA 的现有 AD 相关配置文件(/etc/krb5.conf、/etc/sssd.conf 和 /etc/samba/smb.conf)。如果设置为 Y,则 MCS 创建的计算机上的配置文件与当前正在运行的 VDA 上的相应文件相同。但是,您仍然必须配置 dnsAD_INTEGRATION 变量。默认值为 N,这意味着主映像上的配置模板决定了 MCS 创建的计算机上的配置文件。要将当前正在运行的 VDA 用作模板 VM,请将值设置为 Y。否则,将其设置为 N。

    • dns:设置每个 DNS 服务器的 IP 地址。您最多可以设置四个 DNS 服务器。

    • NTP_SERVER:设置 NTP 服务器的 IP 地址。除非另行指定,否则它是域控制器的 IP 地址。

    • WORKGROUP:将工作组名称设置为您在 AD 中配置的 NetBIOS 名称(区分大小写)。否则,MCS 将使用紧跟在计算机主机名之后的域名部分作为工作组名称。例如,如果计算机帐户是 user1.lvda.citrix.com,MCS 将使用 lvda 作为工作组名称,而 citrix 才是正确的选择。请确保正确设置工作组名称。

    • AD_INTEGRATION:设置 Winbind、SSSD、PBIS 或 Centrify。有关 MCS 支持的 Linux 发行版和域加入方法的矩阵,请参阅本文中的支持的发行版

    • CENTRIFY_DOWNLOAD_PATH:设置下载 Server Suite Free(以前称为 Centrify Express)软件包的路径。此值仅在您将 AD_INTEGRATION 变量设置为 Centrify 时生效。

    • CENTRIFY_SAMBA_DOWNLOAD_PATH:设置下载 Centrify Samba 软件包的路径。此值仅在您将 AD_INTEGRATION 变量设置为 Centrify 时生效。

    • PBIS_DOWNLOAD_PATH:设置下载 PBIS 软件包的路径。此值仅在您将 AD_INTEGRATION 变量设置为 PBIS 时生效。

    • UPDATE_MACHINE_PW:启用或禁用自动化计算机帐户密码更新。有关详细信息,请参阅自动化计算机帐户密码更新

    • Linux VDA 配置变量:

      DOTNET_RUNTIME_PATH=path-to-install-dotnet-runtime \ DESKTOP_ENVIRONMENT= **gnome | mate \** SUPPORT_DDC_AS_CNAME=**Y | N** VDA_PORT=port-number REGISTER_SERVICE=**Y | N** ADD_FIREWALL_RULES=**Y | N** HDX_3D_PRO=**Y | N** VDI_MODE=**Y | N** SITE_NAME=**dns-site-name | ‘<none>’** LDAP_LIST=**‘list-ldap-servers’ | ‘<none>’** SEARCH_BASE=**search-base-set | ‘<none>’** FAS_LIST=**‘list-fas-servers’ | ‘<none>’** START_SERVICE=**Y | N** TELEMETRY_SOCKET_PORT=port-number TELEMETRY_PORT=port-number

步骤 3i:为 MCS 写入或更新注册表值

在模板计算机上,将命令行添加到 /etc/xdl/mcs/mcs_local_setting.reg 文件中,以根据需要写入或更新注册表值。此操作可防止每次 MCS 预配的计算机重新启动时数据和设置丢失。

/etc/xdl/mcs/mcs_local_setting.reg 文件中的每一行都是用于设置或更新注册表值的命令。

例如,您可以将以下命令行添加到 /etc/xdl/mcs/mcs_local_setting.reg 文件中,以分别写入或更新注册表值:

create -k "HKLM\System\CurrentControlSet\Control\Citrix\VirtualChannels\Clipboard\ClipboardSelection" -t "REG_DWORD" -v "Flags" -d "0x00000003" --force
<!--NeedCopy-->
update -k "HKLM\System\CurrentControlSet\Control\Citrix\VirtualChannels\Clipboard\ClipboardSelection" -v "Flags" -d "0x00000003"
<!--NeedCopy-->

步骤 3j:创建主映像

  1. (仅适用于 SSSD + RHEL 8.x/9.x 或 Rocky Linux 8.x/9.x)运行 update-crypto-policies --set DEFAULT:AD-SUPPORT 命令,然后重新启动模板 VM。
  2. 如果您通过编辑 /etc/xdl/mcs/mcs.conf 配置 MCS 变量,请运行 /opt/Citrix/VDA/sbin/deploymcs.sh。如果您通过 GUI 配置 MCS 变量,请单击部署

    简易安装 GUI 上的部署按钮

    在 GUI 上单击部署后,您在 GUI 上设置的变量将覆盖您在 /etc/xdl/mcs/mcs.conf 文件中设置的变量。

  3. (如果您正在使用当前正在运行的 VDA 作为模板 VM,或者是非域加入场景,请跳过此步骤。)在模板 VM 上,更新配置模板以自定义所有已创建 VM 上的相关 /etc/krb5.conf/etc/samba/smb.conf/etc/sssd/sssd.conf 文件。

    对于 Winbind 用户,请更新 /etc/xdl/ad_join/winbind_krb5.conf.tmpl/etc/xdl/ad_join/winbind_smb.conf.tmpl 模板。

    对于 SSSD 用户,请更新 /etc/xdl/ad_join/sssd.conf.tmpl/etc/xdl/ad_join/sssd_krb5.conf.tmpl/etc/xdl/ad_join/sssd_smb.conf.tmpl 模板。

    对于 Centrify 用户,请更新 /etc/xdl/ad_join/centrify_krb5.conf.tmpl/etc/xdl/ad_join/centrify_smb.conf.tmpl 模板。

    注意:

    请保持模板文件中使用的现有格式,并使用诸如 $WORKGROUP、$REALM、$realm、${new_hostname} 和 $AD_FQDN 等变量。

  4. 根据您使用的公有云,创建并命名主映像的快照。

    • (对于 Citrix Hypervisor、GCP 和 VMware vSphere) 在模板 VM 上安装应用程序并关闭模板 VM。创建并命名主映像的快照。

    • (对于 Azure) 在模板 VM 上安装应用程序,并从 Azure 门户关闭模板 VM。确保模板 VM 的电源状态显示为 “已停止(已解除分配)”。请记住此处的资源组名称。您需要该名称才能在 Azure 上找到您的主映像。

      Stopped power status of template VM

    • (对于 AWS) 在模板 VM 上安装应用程序,并从 AWS EC2 门户关闭模板 VM。确保模板 VM 的实例状态为 “已停止”。右键单击模板 VM,然后选择 “映像”>“创建映像”。根据需要键入信息并进行设置。单击 “创建映像”

      Creating an EBS image

    • (对于 Nutanix) 在 Nutanix AHV 上,关闭模板 VM。创建并命名主映像的快照。

      注意:

      您必须在 Acropolis 快照名称前加上 XD_ 前缀,才能在 Citrix Virtual Apps™ and Desktops 中使用。必要时,请使用 Acropolis 控制台重命名快照。重命名快照后,重新启动 “创建目录” 向导以获取刷新后的列表。

(对于 GCP) 步骤 3k:在 RHEL 8.x/9.x 和 Rocky Linux 8.x/9.x 上配置以太网连接

在 GCP 上托管的 RHEL 8.x/9.x 和 Rocky Linux 8.x/9.x 上安装 Linux VDA 后,以太网连接可能会丢失,并且 Linux VDA 在 VM 重新启动后可能无法访问。要解决此问题,请在首次登录 VM 时设置 root 密码,并确保您可以以 root 身份登录 VM。然后,在重新启动 VM 后,在控制台中运行以下命令:

nmcli dev connect eth0
service NetworkManager restart
<!--NeedCopy-->

步骤 4:创建计算机目录

在 Citrix Studio 或 Web Studio 中,创建计算机目录并指定要在目录中创建的 VM 数量。创建计算机目录时,请选择您的主映像并考虑以下事项:

  • 在 Nutanix 独有的 “容器” 页面上,选择您之前为模板 VM 指定的容器。

  • 当您创建包含 单会话操作系统 计算机的目录时,将显示 “桌面体验” 页面,该页面允许您确定用户每次登录时发生的情况。

    Desktop experience

    “桌面体验” 页面上,选择以下选项之一:

    • 用户每次登录时都连接到新的(随机)桌面。
    • 用户每次登录时都连接到相同的(静态)桌面。

    如果您选择第一个选项,用户对桌面所做的更改将被丢弃(非持久性)。

    如果您选择第二个选项并使用 MCS 预配计算机,则可以配置如何处理用户对桌面所做的更改:

    • 将用户对桌面所做的更改保存到本地磁盘(持久性)。
    • 当用户注销时,丢弃用户更改并清除虚拟桌面(非持久性)。如果您正在使用用户个性化层,请选择此选项。
  • 更新包含持久性计算机的 MCS 目录的主映像时,添加到目录的任何新计算机都将使用更新后的映像。现有计算机将继续使用原始主映像。

有关详细信息,请参阅 Citrix Virtual Apps and Desktops 文档和 Citrix DaaS 文档中的计算机目录创建。

注意:

对于 Nutanix 环境,如果您的 Delivery Controller™ 上的计算机目录创建过程耗时过长,请转至 Nutanix Prism 并手动启动以 Preparation 为前缀的计算机。此方法有助于继续创建过程。

步骤 5:创建交付组

交付组是从一个或多个计算机目录中选择的计算机集合。它指定哪些用户可以使用这些计算机,以及这些用户可用的应用程序和桌面。

有关详细信息,请参阅 Citrix Virtual Apps and Desktops 文档和 Citrix DaaS 文档中的交付组创建。

注意:

您使用 MCS 创建的 VM 可能无法向 Citrix Cloud Connectors 注册并显示为 “未注册”。当您在 Azure 上托管 VM 并使用 Samba Winbind 加入 AD 域时,会出现此问题。要解决此问题,请完成以下步骤:

  1. 转到 ADSI Edit 控制台,选择一个未注册的 VM,并编辑其计算机帐户的 msDS-SupportedEncryptionTypes 属性。
  2. 重新启动 VM 上的 ctxjproxyctxvda 服务。如果 VM 的状态变为 “已注册”,请继续执行步骤 3 到 5。
  3. 打开模板 VM 上的 /var/xdl/mcs/ad_join.sh 文件。
  4. /var/xdl/mcs/ad_join.sh 文件中以下行之后添加一行 net ads enctypes set $NEW_HOSTNAME$ <Decimal value of encryption type attribute, for example, 28> -U $NEW_HOSTNAME$ -P password

    if [ "$AD_INTEGRATION" == "winbind" ]; then
                    join_domain_samba
                    restart_service winbind /usr/bin/systemctl
    <!--NeedCopy-->
    
  5. 拍摄新快照并使用新模板创建 VM。

使用 MCS 升级您的 Linux VDA

要使用 MCS 升级您的 Linux VDA,请执行以下操作:

  1. 确保在将 Linux VDA 升级到当前版本之前已安装 .NET Runtime 6.0。

  2. 在模板计算机上升级您的 Linux VDA:

    注意:

    您还可以使用 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-->
    

    对于 RHEL 7 和 CentOS 7:

    sudo rpm -U XenDesktopVDA-<version>.el7_x.x86_64.rpm
    <!--NeedCopy-->
    

    对于 RHEL 8.x 和 Rocky Linux 8.x:

    sudo rpm -U XenDesktopVDA-<version>.el8_x.x86_64.rpm
    <!--NeedCopy-->
    

    对于 RHEL 9.2/9.0 和 Rocky Linux 9.2/9.0:

    注意:

    在 RHEL 9.2/9.0 和 Rocky Linux 9.2/9.0 上升级 Linux VDA 之前,请将 libsepol 软件包更新到版本 3.4 或更高版本。

    sudo rpm -U XenDesktopVDA-<version>.el9x.x86_64.rpm
    <!--NeedCopy-->
    

    对于 SUSE:

    sudo rpm -U XenDesktopVDA-<version>.sle15_x.x86_64.rpm
    <!--NeedCopy-->
    

    对于 Ubuntu 20.04:

    sudo dpkg -i xendesktopvda_<version>.ubuntu20.04_amd64.deb
    <!--NeedCopy-->
    

    对于 Ubuntu 22.04:

    sudo dpkg -i xendesktopvda_<version>.ubuntu22.04_amd64.deb
    <!--NeedCopy-->
    
  3. 编辑 /etc/xdl/mcs/mcs.conf/etc/xdl/mcs/mcs_local_setting.reg

  4. 拍摄新快照。

  5. 在 Citrix Studio 中,选择新快照以更新计算机目录。在每台计算机重新启动之前等待。请勿手动重新启动计算机。

自动执行计算机帐户密码更新

默认情况下,计算机帐户密码在计算机目录创建 30 天后过期。为防止密码过期并自动执行计算机帐户密码更新,请执行以下操作:

  1. 在运行 /opt/Citrix/VDA/sbin/deploymcs.sh 之前,将以下条目添加到 /etc/xdl/mcs/mcs.conf 中。

    UPDATE_MACHINE_PW="Y"

  2. 运行 /opt/Citrix/VDA/sbin/deploymcs.sh 后,打开 /etc/cron.d/mcs_update_password_cronjob 以设置更新时间和频率。默认设置是每周日上午 2:30 更新计算机帐户密码。

每次更新计算机帐户密码后,Delivery Controller 上的票证缓存将失效,并且 /var/log/xdl/jproxy.log 中可能会出现以下错误:

[ERROR] - AgentKerberosServiceAction.Run: GSSException occurred. Error: Failure unspecified at GSS-API level (Mechanism level: Checksum failed)

要消除此错误,请定期清除票证缓存。您可以在所有 Delivery Controller 或域控制器上安排缓存清理任务。

在 MCS 创建的 VM 上启用 FAS

您可以在运行以下发行版的 MCS 创建的 VM 上启用 FAS:

  Winbind SSSD Centrify PBIS
RHEL 9.2/9.0
RHEL 8.x
Rocky Linux 9.2/9.0
Rocky Linux 8.x
RHEL 7, CentOS 7
Ubuntu 22.04, Ubuntu 20.04
Debian 11.3
SUSE 15.4

在模板 VM 上准备主映像时启用 FAS

  1. 导入根 CA 证书。

    sudo cp root.pem /etc/pki/CA/certs/
    <!--NeedCopy-->
    
  2. 运行 ctxfascfg.sh

  3. /etc/xdl/mcs/mcs.conf 中设置变量。

    注意:

    /etc/xdl/mcs/mcs.conf 中设置所有必需的变量,因为这些变量在 VM 启动时会被调用。

    1. Use_AD_Configuration_Files_Of_Current_VDA 的值设置为 Y。
    2. FAS_LIST 变量设置为您的 FAS 服务器地址或多个 FAS 服务器地址。使用分号分隔多个地址,并用单引号将地址括起来,例如 FAS_LIST='<FAS_SERVER_FQDN>;<FAS_SERVER_FQDN>'
    3. 根据需要设置其他变量,例如 VDI_MODE
  4. 运行脚本 /opt/Citrix/VDA/sbin/deploymcs.sh

在 MCS 创建的 VM 上启用 FAS

如果未按前述在模板计算机上启用 FAS,则可以在每个 MCS 创建的 VM 上启用 FAS。

要在 MCS 创建的 VM 上启用 FAS,请执行以下操作:

  1. 在 /etc/xdl/mcs/mcs.conf 中设置变量。

    注意:

    /etc/xdl/mcs/mcs.conf 中设置所有必需的变量,因为这些变量在 VM 启动时会被调用。

    1. Use_AD_Configuration_Files_Of_Current_VDA 的值设置为 Y。
    2. FAS_LIST 变量设置为您的 FAS 服务器地址。
    3. 根据需要设置其他变量,例如 VDI_MODE
  2. 导入根 CA 证书。

    sudo cp root.pem /etc/pki/CA/certs/
    <!--NeedCopy-->
    
  3. 运行 /opt/Citrix/VDA/sbin/ctxfascfg.sh 脚本。