使用 MCS 创建非域加入的 Linux VDA
本文将详细阐述如何利用 Machine Creation Services (MCS) 这一方法,来构建一个具有计算机目录的非域加入的 Linux VDA,并在 Citrix DaaS 或 Citrix Virtual Apps and Desktops™ 2411 及后续版本环境中进行操作。
重要提示:
针对 Citrix DaaS™ 服务的客户群体:
您可以在公共云或本地数据中心部署非域加入的 VDA。非域加入的 VDA 由 Citrix DaaS 中的控制平面管理。
要创建非域加入的 VDA,使用 Citrix Gateway 服务的客户必须确保 Rendezvous V2 已启用。仅当您计划在本地虚拟机管理程序上预配计算机或希望在 Workspace 中使用 Active Directory 作为身份提供程序时,才需要 Cloud Connector。
对于 CVAD 客户:
按照以下说明在 DDC 中启用 WebSocket 功能:
打开 PowerShell 命令行界面,运行以下命令,然后重新启动 DDC 控制器。New-ItemProperty
"HKLM:\SOFTWARE\Citrix\DesktopServer\WorkerProxy" -Name "WebSocket_Enabled" -PropertyType "DWord" -Value 1 -Force在主映像上放置并更新 CA 证书。请参阅 添加自签名 CA 证书
要创建非域加入的 VDA,您可以使用 MCS 和轻松安装。有关详细信息,请参阅 使用 MCS 创建非域加入的 Linux VDA 和 使用轻松安装创建非域加入的 Linux VDA。
MCS 不支持裸机服务器。
以下功能适用于非域加入的 Linux VDA:
(仅限 能腾) 步骤 1:安装并注册 能腾 AHV 插件
从 Nutanix 获取 Nutanix AHV 插件包。在您的 Citrix 虚拟应用程序和桌面环境中安装并注册该插件。有关详细信息,请参阅 Nutanix 支持门户 上提供的 Nutanix Acropolis MCS 插件安装指南。
步骤 1a:为本地交付控制器安装并注册 Nutanix AHV 插件
安装 Citrix 虚拟应用和桌面 后,在您的交付控制器上选择并安装 XD MCS AHV Plugin。

步骤 1b:为云交付控制器安装并注册 Nutanix AHV 插件
为 Citrix Cloud™ 连接器 选择并安装 CWA MCS AHV 插件。在所有已向 Citrix Cloud 租户注册的 Citrix Cloud 连接器 上安装该插件。即使 Citrix Cloud 连接器 服务于没有 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"命令。 -
Restart the Citrix Host, Citrix Broker, and Citrix Machine Creation Services™ on your on-premises Delivery Controllers or restart the Citrix RemoteHCLServer Service on Citrix Cloud Connectors.
提示:
建议您在安装或更新 Nutanix AHV 插件时,停止然后重新启动 Citrix 主机、Citrix Broker 和计算机创建服务。
步骤 2: 创建主机连接
主机是您的资源位置中正在使用的虚拟机管理程序或云服务。此步骤允许您指定 DaaS 用于与主机上的 VM 通信的信息。详细信息包括资源位置、主机类型、访问凭据、要使用的存储方法以及主机上的 VM 可以使用的网络。
重要:
您的资源位置中的主机资源(存储和网络)必须在创建连接之前可用。
- Sign in to Citrix Cloud.
- 在左上角菜单中,选择 我的服务 > 桌面即服务。
- 从 管理 > 完整配置 中,在左侧窗格中选择 托管。
- 在操作栏中选择 添加连接和资源。
- 向导将引导您完成以下页面。特定页面内容取决于所选的连接类型。完成每个页面后,选择 下一步,直到到达 摘要 页面。
步骤 2a: 连接

在 连接 页面上:
- 要创建连接,请选择 创建新连接。要基于与现有连接相同的主机配置创建连接,请选择 使用现有连接,然后选择相关连接。
- 在 区域名称 字段中选择一个区域。这些选项是您配置的所有资源位置。
- 在 连接类型 字段中选择一个虚拟机管理程序或云服务。这些选项是已在其区域中正确安装了插件的虚拟机管理程序和云服务。
或者,您可以使用 PowerShell 命令
Get-HypHypervisorPlugin -ZoneUid获取所选区域可用的虚拟机管理程序插件列表。 - 输入连接名称。此名称显示在管理显示中。
- 选择用于创建虚拟机的工具:计算机创建服务或 Citrix Provisioning。
连接页面上的信息因您正在使用的主机(连接类型)而异。例如,使用 Azure Resource Manager 时,您可以使用现有服务主体或创建一个。
步骤 2b:存储管理

有关存储管理类型和方法的信息,请参阅 主机存储。
如果您正在配置与 Hyper-V 或 VMware 主机的连接,请浏览并选择群集名称。其他连接类型不要求提供群集名称。
选择存储管理方法:管理程序共享的存储或管理程序本地存储。
- 如果您选择管理程序共享的存储,请指明是否要将临时数据保留在可用的本地存储上。(您可以在使用此连接的计算机目录中指定非默认的临时存储大小。)例外:使用群集共享卷 (CSV) 时,Microsoft System Center Virtual Machine Manager 不允许在本地存储上创建临时数据缓存磁盘。尝试在管理控制台中配置该存储管理设置将失败。
如果您在 Citrix Hypervisor 池中使用共享存储,请指明是否要使用 IntelliCache 来减少共享存储设备上的负载。请参阅 Citrix Hypervisor 虚拟化环境。
步骤 2c:存储选择

有关存储选择的详细信息,请参阅 主机存储。
为每种可用数据类型选择至少一个主机存储设备。您在上一页上选择的存储管理方法会影响此页面上可供选择的数据类型。在向导中继续到下一页之前,您必须为每种支持的数据类型选择至少一个存储设备。
如果您选择了管理程序共享的存储并启用了优化可用本地存储上的临时数据,则存储选择页面的下半部分包含更多配置选项。您可以选择要用于临时数据的本地存储设备(在同一管理程序池中)。
当前选定的存储设备数量会显示(在图中,“已选择 1 个存储设备”)。当您将鼠标悬停在该条目上时,会显示选定的设备名称(除非未配置任何设备)。
- 选择 选择 以更改要使用的存储设备。
- 在 选择存储 对话框中,选中或清除存储设备复选框,然后选择 确定。
步骤 2d:区域
(仅适用于某些主机类型。)区域选择指示将部署 VM 的位置。理想情况下,选择一个靠近用户访问其应用程序的区域。
步骤 2e:网络
输入资源的名称。此名称将显示在 管理 控制台中,用于标识与连接关联的存储和网络组合。 选择 VM 使用的一个或多个网络。
某些连接类型(例如 Azure Resource Manager)还会列出 VM 使用的子网。选择一个或多个子网。
步骤 2f:摘要
检查您的选择;如果要进行更改,请返回到之前的向导页面。完成检查后,选择 完成。
请记住:如果您在本地存储临时数据,则在创建包含使用此连接的计算机的目录时,可以为临时数据存储配置非默认值。
注意:
对于完全访问权限管理员,不显示范围。有关详细信息,请参阅 管理员、角色和范围。
有关详细信息,请参阅 创建和管理连接。
步骤 3:准备主映像
提示:
您可以使用单个映像来创建已加入域和未加入域的 VDA。
(For XenServer (formerly Citrix Hypervisor™) only) Step 3a: Install XenServer VM Tools
在模板 VM 上安装 XenServer VM Tools,以便每个 VM 都可以使用 xe CLI 或 XenCenter。除非安装这些工具,否则 VM 性能可能会很慢。如果没有这些工具,您将无法执行以下任何操作:
- 正常关机、重新启动或暂停 VM。
- 在 XenCenter 中查看 VM 性能数据。
- 迁移正在运行的 VM(通过
XenMotion)。 - 创建快照或带内存的快照(检查点),以及还原到快照。
- 调整正在运行的 Linux VM 上的 vCPU 数量。
-
根据所使用的管理程序版本,从 XenServer 下载页面 或 Citrix Hypervisor 下载页面 下载适用于 Linux 的 XenServer 虚拟机工具文件。
-
将
LinuxGuestTools-xxx.tar.gz文件复制到您的 Linux VM 或 Linux VM 可以访问的共享驱动器。 -
提取 tar 文件的内容:
tar -xzf LinuxGuestTools-xxx.tar.gz -
在 GCP 上托管的 RHEL 8.x/9.x/10 和 Rocky Linux 8.x/9.x/10 上安装 Linux VDA 后,以太网连接可能会丢失,并且在 VM 重新启动后 Linux VDA 可能无法访问。要解决此问题,请在重新启动 VM 之前运行以下命令:
nmcli dev connect eth0 systemctl restart NetworkManager <!--NeedCopy--> -
运行以下命令以安装
xe-guest-utilities软件包(根据您的 Linux 发行版)。For 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--> -
在 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/zh-cn/dotnet/core/install/linux-package-managers。
安装 .NET 后,根据您的 Linux 发行版运行以下命令以安装 Linux VDA:
For 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-->
For 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/zh-cn/epel/ 处的说明。
步骤 3d:(仅限 SUSE)手动安装 ntfs-3g
在 SUSE 平台上,没有存储库提供 ntfs-3g。请手动下载源代码、编译并安装 ntfs-3g:
-
安装 GNU 编译器集合 (GCC) 编译器系统和 make 软件包:
sudo zypper install gcc sudo zypper install make <!--NeedCopy--> -
下载 ntfs-3g 软件包。
-
解压缩 ntfs-3g 软件包:
sudo tar -xvzf ntfs-3g_ntfsprogs-<package version>.tgz <!--NeedCopy--> -
输入 ntfs-3g 软件包的路径:
sudo cd ntfs-3g_ntfsprogs-<package version> <!--NeedCopy--> -
请安装 ntfs-3g 软件包:
./configure make make install <!--NeedCopy-->
Step 3e: (For Ubuntu only) Edit the /etc/network/interfaces file
将 source /etc/network/interfaces.d/* 行添加到 /etc/network/interfaces 文件中。
提示:
您的 Ubuntu 计算机上可能没有
/etc/network/interfaces文件。如果该文件不存在,您需要首先安装 net-tools 和 ifupdown 软件包。
Step 3f: (For Ubuntu only) Point /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-->
步骤 3g:指定要使用的数据库
安装 Linux VDA 软件包后,您可以在 SQLite 和 PostgreSQL 之间切换。为此,请完成以下步骤:
注意:
- 我们建议您仅在 VDI 模式下使用 SQLite,并为托管共享桌面交付模型使用 PostgreSQL。
- 对于轻松安装和 MCS,您可以指定要使用的 SQLite 或 PostgreSQL,而无需手动安装它们。除非通过 /etc/xdl/db.conf 另行指定,否则 Linux VDA 默认使用 PostgreSQL。如果您需要自定义版本的 PostgreSQL 而不是 Linux 发行版提供的版本,则必须手动安装指定版本,编辑
/etc/xdl/db.conf以反映新版本,并在运行轻松安装脚本 (ctxinstall.sh) 或 MCS 脚本 (deploymcs.sh) 之前启动 PostgreSQL 服务。- 您还可以使用 /etc/xdl/db.conf 文件来配置 PostgreSQL 的端口号。
-
运行
/opt/Citrix/VDA/sbin/ctxcleanup.sh。如果是全新安装,请省略此步骤。 -
在运行
deploymcs.sh之前编辑/etc/xdl/db.conf。以下是 db.conf 文件的示例:# database configuration file for Linux VDA ## database choice # possible choices are: # SQLite # PostgreSQL # default choice is PostgreSQL DbType="PostgreSQL" ## database port # specify database port for the database. # if not specified, default port will be used: # SQLite: N/A # PostgreSQL: 5432 DbPort=5432 ## PostgreSQL customized # only the following value means true, otherwise false: # true # yes # y # YES # Y # default is false DbCustomizePostgreSQL=false ## PostgreSQL service name # specify the service name of PostgreSQL for Linux VDA # default is "postgresql" DbPostgreSQLServiceName="postgresql" <!--NeedCopy-->To use a custom version of PostgreSQL, set DbCustomizePostgreSQL to true.
步骤 3h:配置 MCS 变量
配置 MCS 变量有两种方法:
- 编辑
/etc/xdl/mcs/mcs.conf文件。 -
使用轻松安装 GUI。要打开轻松安装 GUI,请在 Linux VDA 的桌面环境中运行
/opt/Citrix/VDA/bin/easyinstall命令。
提示:
单击 Save 将变量设置保存到您指定路径下的本地文件。单击 Load 从您指定的文件加载变量设置。
以下是您可以为非域加入场景配置的 MCS 变量。您可以使用默认变量值,也可以根据需要自定义变量(可选):
DOTNET_RUNTIME_PATH=dotnet 运行时安装路径
DESKTOP_ENVIRONMENT=gnome | mate
REGISTER_SERVICE=是 | 否
ADD_FIREWALL_RULES=是 | 否
VDI_MODE=是 | 否
START_SERVICE=是 | 否
(可选)步骤 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:创建主映像
-
如果您通过编辑
/etc/xdl/mcs/mcs.conf配置 MCS 变量,请运行/opt/Citrix/VDA/sbin/deploymcs.sh。如果您通过使用 GUI 配置 MCS 变量,请单击 Deploy。在 GUI 上单击 Deploy 后,您在 GUI 上设置的变量将覆盖您在/etc/xdl/mcs/mcs.conf文件中设置的变量。 -
根据您使用的公有云创建并命名您的主映像的快照。
-
(适用于 XenServer(以前称为 Citrix Hypervisor)、GCP 和 VMware vSphere) 在模板 VM 上安装应用程序并关闭模板 VM。创建并命名您的主映像的快照。
-
(适用于 Azure) 在模板 VM 上安装应用程序并从 Azure 门户关闭模板 VM。确保模板 VM 的电源状态显示为 Stopped (deallocated)。请记住此处的资源组名称。您需要该名称才能在 Azure 上找到您的主映像。

-
(适用于 AWS) 在模板 VM 上安装应用程序并从 AWS EC2 门户关闭模板 VM。确保模板 VM 的实例状态显示为 Stopped。右键单击模板 VM 并选择 Image > Create Image。根据需要键入信息并进行设置。单击 Create Image。

-
(适用于 Nutanix) 在 Nutanix AHV 上,关闭模板 VM。创建并命名您的主映像的快照。
注意:
您必须使用
XD_作为 Acropolis 快照名称的前缀,才能在 Citrix Virtual Apps and Desktops 中使用。必要时,请使用 Acropolis 控制台重命名快照。重命名快照后,重新启动“创建目录”向导以获取刷新后的列表。
-
步骤 4a: 在 DaaS 中创建计算机目录
- 登录到 思杰云。
- 在左上角菜单中,选择 我的服务 > DaaS。
- 从 管理 > 完整配置 中,选择 计算机目录。
-
向导将指导您创建计算机目录。
在 Nutanix 独有的“容器”页面上,选择您之前为模板 VM 指定的容器。
在“主映像”页面上,选择映像快照。
在“虚拟机”页面上,检查虚拟 CPU 的数量以及每个 vCPU 的核心数。选择 MCS 作为计算机部署方法,并选择“非域加入”作为要在目录中创建的计算机的身份。
根据需要执行其他配置任务。有关详细信息,请参阅 创建计算机目录。
注意:
如果 Delivery Controller™ 上的计算机目录创建过程耗时过长,请转到 Nutanix Prism 并手动启动以 Preparation 为前缀的计算机。此方法有助于继续创建过程。
步骤 4b: 在 CVAD 中创建计算机目录
您可以通过 Web Studio 或 PowerShell 在 CVAD 中创建非域加入的计算机目录,有关详细信息,请参阅 非域加入的计算机身份
步骤 5:创建交付组
交付组是从一个或多个计算机目录中选择的计算机集合。它指定了哪些用户可以使用这些计算机,以及这些用户可用的应用程序和桌面。有关详细信息,请参阅在 DaaS 中创建交付组或在 CVAD 中创建交付组。
在本文中
- (仅限 能腾) 步骤 1:安装并注册 能腾 AHV 插件
- 步骤 2: 创建主机连接
-
步骤 3:准备主映像
- (For XenServer (formerly Citrix Hypervisor™) only) Step 3a: Install XenServer VM Tools
- 步骤 3b:在模板 VM 上安装 .NET 和 Linux VDA 软件包
- 步骤 3d:(仅限 SUSE)手动安装 ntfs-3g
- Step 3e: (For Ubuntu only) Edit the /etc/network/interfaces file
- Step 3f: (For Ubuntu only) Point /etc/resolv.conf
- 步骤 3g:指定要使用的数据库
- 步骤 3h:配置 MCS 变量
- (可选)步骤 3i:写入或更新 MCS 的注册表值
- 步骤 3j:创建主映像
- 步骤 4a: 在 DaaS 中创建计算机目录
- 步骤 5:创建交付组