Linux Virtual Delivery Agent

使用 MCS 创建未加入域的 Linux VDA

本文将引导您使用 Machine Creation Services (MCS) 在 Citrix DaaS 中创建未加入域的 Linux VDA。

重要:

(仅限 Nutanix)步骤 1:安装并注册 Nutanix AHV 插件

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

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

安装 Citrix Virtual Apps and Desktops 后,选择并在 Delivery Controller 上安装 XD MCS AHV 插件

用于本地 Delivery Controller 的 Nutanix AHV 插件

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

选择并安装适用于 Citrix Cloud Connector 的 CWA MCS AHV 插件。在向 Citrix Cloud 租户注册的所有 Citrix Cloud Connector 上安装插件。即使 Citrix Cloud Connector 在没有 AHV 的情况下提供资源位置,也必须注册 Citrix Cloud Connector。

步骤 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 Service、Citrix Broker Service 和 Citrix Machine Creation Service,或者在 Citrix Cloud Connector 上重新启动 Citrix RemoteHCLServer Service。

    提示:

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

步骤 2:创建主机连接

主机是在您的资源位置中使用的虚拟机管理程序或云服务。此步骤允许您指定 DaaS 用于与主机上的 VM 通信的信息。详细信息包括资源位置、主机类型、访问凭据、要使用的存储方法以及主机上的 VM 可以使用哪些网络。

重要:

创建连接之前,您的资源位置中的主机资源(存储和网络)必须可用。

  1. 登录 Citrix Cloud。
  2. 在左上角的菜单中,选择我的服务 > DaaS
  3. 管理 > 完整配置中,选择左侧窗格中的托管
  4. 在操作栏中选择添加连接和资源
  5. 向导将引导您完成以下页面。特定页面内容取决于所选连接类型。完成每一页之后,请选择下一步,直到到达摘要页为止。

步骤 2a:连接

“添加连接”示意图

连接页面上:

  • 要创建一个连接,请选择创建新连接。要基于与现有连接相同的主机配置创建一个连接,请选择使用现有连接,然后选择相关连接。
  • 区域名称字段中选择一个区域。选项是您配置的所有资源位置。
  • 连接类型字段中选择虚拟机管理程序或云服务。选项是已在区域中正确安装插件的虚拟机管理程序和云服务。 或者,您可以使用 PowerShell 命令 Get-HypHypervisorPlugin -ZoneUid 获取所选区域中可用的虚拟机管理程序插件列表。
  • 输入连接名称。此名称将显示在管理显示屏中。
  • 选择用于创建虚拟机的工具:Machine Creation Services 或 Citrix Provisioning。

连接页面上的信息因您使用的主机(连接类型)而异。例如,使用 Azure Resource Manager 时,可以使用现有的服务主体或者创建一个主体。

步骤 2b:管理存储

添加连接管理示意图

有关存储管理类型和方法的信息,请参阅主机存储

如果要配置与 Hyper-V 或 VMware 主机的连接,请浏览到群集名称并选择一个名称。其他连接类型不需要群集名称。

选择存储管理方法:虚拟机管理程序共享的存储或虚拟机管理程序的本地存储。

  • 如果选择虚拟机管理程序共享的存储,请指出是否要在可用的本地存储中保存临时数据。(可以在使用此连接的计算机目录中指定非默认临时存储大小。)例外:使用群集存储卷 (CSV) 时,Microsoft System Center Virtual Machine Manager 不允许在本地存储中创建的临时数据缓存磁盘。尝试在管理控制台中配置该存储管理设置失败。

如果使用 Citrix Hypervisor 池中的共享存储,请指出是否要使用 IntelliCache 来降低共享存储设备上的负载。请参阅 Citrix Hypervisor 虚拟化环境

步骤 2c:存储选择

存储选择示意图

有关存储选择的详细信息,请参阅主机存储

请至少为每种可用的数据类型选择一个主机存储设备。在上一页面中选择的存储管理方法将影响此页面上可供选择的数据类型。必须至少为每种受支持的数据类型选择一个存储设备,才能继续进入向导中的下一页面。

如果已选择由虚拟机管理程序共享的存储并启用了 Optimize temporary data on available local storage(优化可用本地存储中的临时数据),则选择存储页面的下半部分将包含更多配置选项。您可以选择要用于存储临时数据的本地存储设备(在同一虚拟机管理程序池中)。

系统会显示当前选择的存储设备数量(在图中,显示“已选择 1 个存储设备”)。将鼠标悬停在该条目上时,将显示所选设备的名称(除非未配置任何设备)。

  1. 选择选择更改要使用的存储设备。
  2. 选择存储对话框中,选中或取消选中存储设备复选框,然后选择确定

步骤 2d:区域

(仅对某些主机类型显示。)区域选择指示 VM 的部署位置。实际上,请选择一个靠近用户在其中访问其应用程序的区域。

步骤 2e:网络

输入资源的名称。此名称在管理控制台中显示,以表示与连接关联的存储和网络组合。 选择 VM 使用的一个或多个网络。

某些连接类型(例如 Azure Resource Manager)还列出 VM 要使用的子网。请选择一个或多个子网。

步骤 2f:摘要

检查所做的选择;如果要做出更改,请使用返回到上一个向导页面。完成检查后,请选择完成

谨记:如果在本地存储临时数据,则可以在创建包含使用此连接的计算机的目录时为临时数据配置非默认值。

注意:

不显示完全访问权限管理员的作用域。有关详细信息,请参阅管理员、角色和作用域

有关详细信息,请参阅创建和管理连接

步骤 3:准备主映像

提示:

可以使用单个映像来创建已加入域和未加入域的 VDA。

【仅适用于 XenServer(以前称为 Citrix Hypervisor)】步骤 3a:安装 XenServer VM Tools

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

  • 彻底关闭、重新启动或挂起 VM。
  • 在 XenCenter 中查看 VM 性能数据。
  • 迁移正在运行的 VM(通过 XenMotion)。
  • 创建快照或带有内存(检查点)的快照,以及还原到快照。
  • 在正在运行的 Linux VM 上调整 vCPU 数。
  1. 根据正在使用的虚拟机管理程序版本,从 XenServer 下载页面Citrix Hypervisor 下载页面下载适用于 Linux 的 XenServer VM Tools 文件。

  2. LinuxGuestTools-xxx.tar.gz 文件复制到 Linux VM 或 Linux VM 可以访问的共享驱动器。

  3. 解压 tar 文件的内容:tar -xzf LinuxGuestTools-xxx.tar.gz

  4. 根据您的 Linux 发行版,运行以下命令安装 xe-guest-utilities 软件包。

    对于 RHEL/CentOS/Rocky Linux/SUSE:

    sudo rpm -i <extract-directory>/xe-guest-utilities_{package-version}_x86.64.rpm
    <!--NeedCopy-->
    

    对于 Ubuntu/Debian:

    sudo dpkg -i <extract-directory>/xe-guest-utilities_{package-version}_amd64.deb
    <!--NeedCopy-->
    
  5. 在 XenCenter 中的常规选项卡上检查模板 VM 的虚拟化状态。如果正确安装了 XenServer VM Tools,则虚拟化状态显示已优化

步骤 3b:在模板 VM 上安装 .NET 和 Linux VDA 软件包

注意:

要使用当前正在运行的 VDA 作为模板 VM,请跳过此步骤。

在安装 Linux VDA 软件包之前,请在模板 VM 上安装 .NET 并注意以下事项:

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

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

安装 .NET 后,根据您的 Linux 发行版运行以下命令以安装 Linux VDA:

对于 RHEL/CentOS/Rocky Linux:

sudo yum –y localinstall <PATH>/<Linux VDA RPM>
<!--NeedCopy-->

注意:

在 GCP 上托管的 RHEL 8.x/9.x 和 Rocky Linux 8.x/9.x 上安装 Linux VDA 后,以太网连接可能会断开,VM 重新启动后可能无法访问 Linux VDA。要解决此问题,请在重新启动 VM 之前运行以下命令:

nmcli dev connect eth0
systemctl restart NetworkManager
<!--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-->

步骤 3c:(仅限 RHEL)安装可以提供 ntfs-3g 的 EPEL 存储库

在 RHEL 8 上安装 EPEL 存储库。有关如何安装 EPEL 的信息,请参阅 https://docs.fedoraproject.org/en-US/epel/ 上提供的说明。

步骤 3e:(仅适用于 SUSE)手动安装 ntfs-3g

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

  1. 安装 GNU Compiler Collection (GCC) 编译器系统并将软件包设置为

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

  3. 解压缩 ntfs-3g 软件包:

    sudo tar -xvzf ntfs-3g_ntfsprogs-<package version>.tgz
    <!--NeedCopy-->
    
  4. 输入 ntfs-3g 软件包的路径:

    sudo cd ntfs-3g_ntfsprogs-<package version>
    <!--NeedCopy-->
    
  5. 安装 ntfs-3g:

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

步骤 3f:(仅适用于 Ubuntu)编辑 /etc/network/interfaces 文件

source /etc/network/interfaces.d/* 行添加到 /etc/network/interfaces 文件中。

提示:

/etc/network/interfaces 文件可能在您的 Ubuntu 计算机上不提供。如果该文件不存在,您需要先安装 net-tools 和 ifupdown 软件包。

步骤 3f:(仅适用于 Ubuntu)指向 /etc/resolv.conf

请将 /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-->

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

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

注意:

  • 我们建议您仅将 SQLite 用于 VDI 模式,将 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

步骤 3i:配置 MCS 变量

配置 MCS 变量有两种方法:

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

    轻松安装 GUI

    提示:

    单击保存将变量设置保存到指定路径下的本地文件中。单击加载从您指定的文件加载变量设置。

下面是您可以为未加入域的场景配置的 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

(可选)步骤 3j:写入或更新 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-->

步骤 3k:创建主映像

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

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

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

    • (适用于 Azure) 在模板 VM 上安装应用程序后,从 Azure 门户关闭模板 VM。请确保模板 VM 的电源状态显示 Stopped (deallocated)(已停止(已取消分配))。记住此处的资源组名称。在 Azure 上查找您的主映像时需要该名称。

      模板 VM 的已停止电源状态

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

      创建 EBS 映像

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

      注意:

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

步骤 4:创建计算机目录

  1. 登录到 Citrix Cloud
  2. 在左上角的菜单中,选择我的服务 > DaaS
  3. 管理 > 完整配置中,选择计算机目录
  4. 该向导将引导您创建计算机目录。

    在 Nutanix 独有的 Container(容器)页面上,选择您之前为模板 VM 指定的容器。

    主映像页面上,选择映像快照。

    虚拟机页面上,检查虚拟 CPU 的数量以及每个 vCPU 的核心数。选择 MCS 作为计算机部署方法,然后选择未加入域作为要在目录中创建的计算机的标识。

    根据需要执行其他配置任务。有关详细信息,请参阅创建计算机目录

注意:

如果 Delivery Controller 上的计算机目录创建过程需要大量时间,请转至 Nutanix Prism 并手动打开前缀为 Preparation 的计算机的电源。这种方法有助于继续执行创建过程。

步骤 5:创建交付组

交付组是从一个或多个计算机目录中选择的计算机的集合。它指定哪些用户可以使用这些计算机,以及可供这些用户使用的应用程序和桌面。有关详细信息,请参阅创建交付组