Citrix Virtual Apps and Desktops

VMware 虚拟化环境

如果您使用 VMware 提供虚拟机,请按照此指导进行操作。

安装 vCenter Server 以及相应的管理工具。(不支持 vSphere vCenter 链接模式操作。)

如果您计划使用 MCS,请勿在 vCenter Server 中禁用数据存储浏览器功能(如 https://kb.vmware.com/selfservice/microsites/search.do?language=en_US&cmd=displayKC&externalId=2101567 中所述)。禁用了此功能时,MCS 无法正常工作。

可以使用 Citrix Provisioning(以前称为 Provisioning Services) 和 Machine Creation Services 预配以下各项:

  • 支持的桌面或服务器操作系统 VM 的旧版 BIOS。
  • 支持的桌面或服务器操作系统 VM 的 UEFI,包括安全引导。

所需权限

使用本文中列出的一组或全部权限创建一个 VMware 用户帐户以及一个或多个 VMware 角色。基于用户权限所需的特定粒度级别进行角色创建,以随时请求各种 Citrix DaaS 操作。要随时授予用户特定的权限,请至少在数据中心级别将其与相应的角色相关联,并选择 Propagate to children(传播到子代)选项。但是,对于 StorageProfile 权限和特定的 Tags 权限,请在 Root vCenter Server 级别应用这些权限,不使用 Propagate to Children(传播到子级)。请参阅每个表格中的注释。

以下各表显示了 Citrix Virtual Apps and Desktops 操作与所需的最低 VMware 权限之间的映射关系。

注意:

某些 vSphere 版本的权限列表显示名称(特别是用户界面)不同。例如,在 vSphere 6.7 中,用户界面权限为更改内存更改设置,而非本页上注明的所需权限中所述的设置内存

添加连接和资源

SDK 用户界面
System.Anonymous、System.Read 和 System.View 自动添加。可以使用内置的只读角色。

电源管理

SDK 用户界面
VirtualMachine.Interact.PowerOff 虚拟机 > 交互 > 关闭
VirtualMachine.Interact.PowerOn 虚拟机 > 交互 > 打开
VirtualMachine.Interact.Reset 虚拟机 > 交互 > 重置
VirtualMachine.Interact.Suspend 虚拟机 > 交互 > 挂起
Datastore.Browse 数据存储 > 浏览数据存储

预配计算机 (Machine Creation Services)

要使用 MCS 预配计算机,必须具备以下权限:

SDK 用户界面
Datastore.AllocateSpace 数据存储 > 分配空间
Datastore.Browse 数据存储 > 浏览数据存储
Datastore.FileManagement 数据存储 > 低级别文件操作
Network.Assign 网络 > 分配网络
Resource.AssignVMToPool 资源 > 将虚拟机分配到资源池
VirtualMachine.Config.AddExistingDisk 虚拟机 > 配置 > 添加现有磁盘
VirtualMachine.Config.AddNewDisk 虚拟机 > 配置 > 添加新磁盘
Virtual machine.Config.Add 或删除设备 虚拟机 > 配置 > 添加或删除设备
VirtualMachine.Config.AdvancedConfig 虚拟机 > 配置 > 高级
VirtualMachine.Config.RemoveDisk 虚拟机 > 配置 > 删除磁盘
VirtualMachine.Config.CPUCount 虚拟机 > 配置 > 更改 CPU 计数
VirtualMachine.Config.Memory 虚拟机 > 配置 > 更改内存
VirtualMachine.Config.Settings 虚拟机 > 配置 > 更改设置
VirtualMachine.Interact.PowerOff 虚拟机 > 交互 > 关闭
VirtualMachine.Interact.PowerOn 虚拟机 > 交互 > 打开
VirtualMachine.Interact.Reset 虚拟机 > 交互 > 重置
VirtualMachine.Interact.Suspend 虚拟机 > 交互 > 挂起
VirtualMachine.Inventory.CreateFromExisting 虚拟机 > 清单 > 从现有项创建
VirtualMachine.Inventory.Create 虚拟机 > 清单 > 新建
VirtualMachine.Inventory.Delete 虚拟机 > 清单 > 删除
VirtualMachine.Provisioning.Clone 虚拟机 > 预配 > 克隆虚拟机
VirtualMachine.State.CreateSnapshot vSphere 5.0 Update 2、vSphere 5.1 Update 1 和 vSphere 6.x Update 1:虚拟机 > 状态 > 创建快照;vSphere 5.5: 虚拟机 > 快照管理 > 创建快照

映像更新和回滚

SDK 用户界面
Datastore.AllocateSpace 数据存储 > 分配空间
Datastore.Browse 数据存储 > 浏览数据存储
Datastore.FileManagement 数据存储 > 低级别文件操作
Network.Assign 网络 > 分配网络
Resource.AssignVMToPool 资源 > 将虚拟机分配到资源池
VirtualMachine.Config.AddExistingDisk 虚拟机 > 配置 > 添加现有磁盘
VirtualMachine.Config.AddNewDisk 虚拟机 > 配置 > 添加新磁盘
VirtualMachine.Config.AdvancedConfig 虚拟机 > 配置 > 高级
VirtualMachine.Config.RemoveDisk 虚拟机 > 配置 > 删除磁盘
VirtualMachine.Interact.PowerOff 虚拟机 > 交互 > 关闭
VirtualMachine.Interact.PowerOn 虚拟机 > 交互 > 打开
VirtualMachine.Interact.Reset 虚拟机 > 交互 > 重置
VirtualMachine.Inventory.CreateFromExisting 虚拟机 > 清单 > 从现有项创建
VirtualMachine.Inventory.Create 虚拟机 > 清单 > 新建
VirtualMachine.Inventory.Delete 虚拟机 > 清单 > 删除
VirtualMachine.Provisioning.Clone 虚拟机 > 预配 > 克隆虚拟机

删除预配的计算机

SDK 用户界面
Datastore.Browse 数据存储 > 浏览数据存储
Datastore.FileManagement 数据存储 > 低级别文件操作
VirtualMachine.Config.RemoveDisk 虚拟机 > 配置 > 删除磁盘
VirtualMachine.Interact.PowerOff 虚拟机 > 交互 > 关闭
VirtualMachine.Inventory.Delete 虚拟机 > 清单 > 删除

存储配置文件 (vSAN)

要在 vSAN 数据存储上创建目录期间查看、创建或删除存储策略,必须具备以下权限:

SDK 用户界面
StorageProfile.Update 配置文件驱动的存储 > 配置文件驱动的存储更新。对于 vSphere 8:VM 存储策略 > 更新 VM 存储策略
StorageProfile.View 配置文件驱动的存储 > 配置文件驱动的存储视图。对于 vSphere 8:VM 存储策略 > 查看 VM 存储策略

注意:

在 Root vCenter Server 级别应用存储配置文件权限,不使用 Propagate to Children(传播到子级)。

标记和自定义属性

标记和自定义属性允许您将元数据附加到在 vSphere 清单中创建的 VM,从而更轻松地搜索和筛选这些对象。要创建、编辑、分配和删除标记或类别,必须具备以下权限:

SDK 用户界面
InventoryService.Tagging.CreateTag vSphere 标记 > 创建 vSphere 标记
InventoryService.Tagging.CreateCategory vSphere 标记 > 创建 vSphere 标记类别
InventoryService.Tagging.EditTag vSphere 标记 > 编辑 vSphere 标记
InventoryService.Tagging.EditCategory vSphere 标记 > 编辑 vSphere 标记类别
InventoryService.Tagging.DeleteTag vSphere 标记 > 删除 vSphere 标记
InventoryService.Tagging.DeleteCategory vSphere 标记 > 删除 vSphere 标记类别
InventoryService.Tagging.AttachTag vSphere 标记 > 分配或取消分配 vSphere 标记
InventoryService.Tagging.ObjectAttachable vSphere 标记 > 在对象上分配或取消分配 vSphere 标记
Global.ManageCustomFields 全局 > 管理自定义属性
Global.SetCustomField 全局 > 设置自定义属性

注意:

  • 当 MCS 创建计算机目录时,它会使用特殊的名称标记来标记目标 VM。这些标记将主映像与 MCS 创建的 VM 区分开来,并防止使用 MCS 创建的 VM 进行映像准备。您可以在 vCenter 中通过 XdProvisioned 属性的值来识别差异。如果 MCS 创建了 VM,该属性将设置为 True
  • 在 Root vCenter Server 级别应用 InventoryService.Tagging.AttachTag 权限,使用 Propagate to Children(传播到子级)。

加密操作

加密操作权限控制谁可以对哪种类型的对象执行哪种类型的加密操作。vSphere Native Key Provider 使用 Cryptographer.* 权限。加密操作需要以下最低权限:

SDK 用户界面
Cryptographer.Access 权限 > 所有权限 > 加密操作 > 直接访问
Cryptographer.AddDisk 权限 > 所有权限 > 加密操作 > 添加磁盘
Cryptographer.Clone 权限 > 所有权限 > 加密操作 > 克隆
Cryptographer.Encrypt 权限 > 所有权限 > 加密操作 > 加密
Cryptographer.EncryptNew 权限 > 所有权限 > 加密操作 > 加密新对象
Cryptographer.Decrypt 权限 > 所有权限 > 加密操作 > 解密
Cryptographer.Migrate 权限 > 所有权限 > 加密操作 > 迁移
Cryptographer.ReadKeyServersInfo 权限 > 所有权限 > 加密操作 > 读取 KMS 信息

预配计算机 (Citrix Provisioning)

要通过 Citrix Provisioning 控制台使用 Citrix Virtual Apps and Desktops 设置向导和“导出设备”向导预配 VM,需要这些克隆和部署模板的权限。在创建托管连接时设置权限。您需要来自预配计算机 (Machine Creation Services) 的所有权限以及以下权限。

SDK 用户界面
VirtualMachine.Config.AddRemoveDevice 虚拟机 > 配置 > 添加或删除设备
VirtualMachine.Config.CPUCount 虚拟机 > 配置 > 更改 CPU 计数
VirtualMachine.Config.Memory 虚拟机 > 配置 > 内存
VirtualMachine.Config.Settings 虚拟机 > 配置 > 设置
VirtualMachine.Provisioning.CloneTemplate 虚拟机 > 预配 > 克隆模板
VirtualMachine.Provisioning.DeployTemplate 虚拟机 > 预配 > 部署模板
VApp.Export vApp > 导出

注意:

VApp.Export 是使用计算机配置文件创建 MCS 计算机目录所必需的。

获取和导入证书

为了保护 vSphere 通信的安全,Citrix 建议您使用 HTTPS,而不使用 HTTP。

HTTPS 需要数字证书。使用由证书颁发机构颁发的符合贵组织的安全策略的数字证书。

如果无法使用证书颁发机构所颁发的数字证书,则可以使用由 VMware 安装的自签名证书。仅当贵组织的安全策略允许时才能使用此方法。在每个 Delivery Controller 中添加 VMware vCenter 证书。

  1. 将运行 vCenter Server 的计算机的完全限定域名 (FQDN) 添加到该服务器上的主机文件中,文件位于:%SystemRoot%/WINDOWS/system32/Drivers/etc/。只有当域名系统中尚不存在运行 vCenter Server 的计算机的 FQDN 时,才需要执行此步骤。

  2. 使用以下任意三种方法之一获取 vCenter 证书:

    从 vCenter Server。

    1. 将 rui.crt 文件从 vCenter Server 复制到 Delivery Controller 上可访问的位置。
    2. 在 Controller 上,导航到导出的证书所在的位置,然后打开 rui.crt 文件。

    使用 Web 浏览器下载证书。如果使用 Internet Explorer,请右键单击 Internet Explorer,然后选择以管理员身份运行以下载或安装证书。

    1. 打开 Web 浏览器,与 vCenter Server 建立安全 Web 连接(例如 https://server1.domain1.com))。
    2. 接受安全警告。
    3. 单击显示证书错误的地址栏。
    4. 查看证书并单击“详细信息”选项卡。
    5. 选择 Copy to file and export in .CER format(复制到文件并导出为 .CER 格式),并在系统提示时提供名称。
    6. 保存导出的证书。
    7. 导航到导出的证书所在的位置,然后打开 .CER 文件。

    从以管理员身份运行的 Internet Explorer 直接导入。

    • 打开 Web 浏览器,与 vCenter Server 建立安全 Web 连接(例如 https://server1.domain1.com))。
    • 接受安全警告。
    • 单击显示证书错误的地址栏。
    • 查看证书。
  3. 将证书导入到每个 Controller 上的证书存储中。

    1. 单击安装证书选项,选择本地计算机,然后单击下一步
    2. 选择将所有的证书都放入下列存储,然后单击浏览。选择受信任人,然后单击确定。单击下一步,然后单击完成

    如果在安装后更改 vSphere 服务器的名称,必须在该服务器上生成新的自签名证书,然后再导入新证书。

配置注意事项

创建主 VM:

使用主 VM 在计算机目录中提供用户桌面和应用程序。在虚拟机管理程序上:

  1. 在主 VM 上安装 VDA,选择用于优化桌面的选项,这样会提高性能。
  2. 生成主 VM 的快照作为备份。

创建连接:

在连接创建向导中执行以下操作:

  • 选择 VMware 连接类型。
  • 指定 vCenter SDK 接入点的地址。
  • 指定先前设置的具有创建 VM 权限的 VMware 用户帐户的凭据。以域/用户名格式指定用户名。

VMware SSL 指纹

VMware SSL 指纹功能无需手动创建与 VMware vSphere 虚拟机管理程序的主机连接。在创建连接之前,不再需要在站点中的 Delivery Controller 与虚拟机管理程序的证书之间手动创建信任关系。

VMware SSL 指纹功能将不受信任的证书的指纹存储在站点数据库中。此配置可确保虚拟机管理程序可以连续地被 Citrix Virtual Apps and Desktops 识别为可信任,即使不是 Controller 识别的亦如此。

在 Studio 中创建 vSphere 主机连接时,可以通过一个对话框查看要连接的计算机的证书。然后,您可以选择是否信任该证书。

故障排除

如果目录创建失败,请参阅 CTX294978

VMware 虚拟化环境