Citrix DaaS™

管理计算机目录

注意:

本文介绍如何使用 Studio 和 PowerShell 命令管理目录。如果您使用快速部署节点创建了目录,并继续使用该节点管理目录,请遵循在快速部署中管理目录

简介

您可以从计算机目录中添加或删除计算机,以及重命名、更改描述或管理目录的 Active Directory 计算机帐户。

目录维护还可以包括确保每台计算机都具有最新操作系统更新、防病毒软件更新、操作系统升级或配置更改的任务。

  • 包含使用 Machine Creation Services™ (MCS) 创建的池化随机计算机的目录通过更新目录中使用的映像,然后更新计算机来维护计算机。此方法使您能够高效地更新大量用户计算机。
  • 对于包含静态、永久分配的计算机的目录,您可以管理这些目录当前使用的映像或模板,但只有稍后添加到目录中的计算机才会使用新映像或模板创建。
  • 对于远程电脑访问目录,您可以在 Studio 外部管理用户计算机的更新。使用第三方软件分发工具单独或集体执行此任务。

有关创建和管理与主机管理程序和云服务的连接的信息,请参阅创建和管理连接和资源

注意:

MCS 不支持 Windows 10 IoT Core 和 Windows 10 IoT Enterprise。有关详细信息,请参阅 Microsoft 站点

关于持久实例

更新包含持久计算机的 MCS 目录的主映像时,添加到目录中的任何新计算机都将使用更新后的映像。现有计算机将继续使用原始主映像。更新映像的过程与任何其他类型的目录相同。请考虑以下事项:

  • 对于持久磁盘目录,现有计算机不会更新到新映像,但添加到目录中的任何新计算机都将使用新映像。
  • 对于非持久磁盘目录,仅当计算机在 Studio 或 PowerShell 中重新启动时,计算机映像才会在下次更新。如果计算机在 Studio 外部从管理程序重新启动,则磁盘不会重置。
  • 对于不持久的目录,如果您希望不同计算机使用不同映像,则映像必须位于单独的目录中。

管理计算机目录

您可以通过两种方式管理计算机目录:

使用 Studio

本部分详细介绍了如何使用 Studio 管理目录:

查看目录详细信息

  1. 使用搜索功能查找特定的计算机目录。有关说明,请参阅搜索实例
  2. 根据需要从搜索结果中选择一个目录。
  3. 有关目录列的说明,请参阅下表。
  4. 单击底部详细信息窗格中的选项卡,了解有关此目录的更多信息。
描述
计算机目录

目录的名称和分配类型。分配类型包括:
  • 随机:目录中的计算机随机分配给用户。
  • 永久:目录中的计算机永久分配给用户。
  • 计算机类型




    目录中计算机支持的会话类型。可能的值包括:
  • 操作系统类型:多会话操作系统(虚拟);用户数据:丢弃。
  • 操作系统类型:多会话操作系统(虚拟);用户数据:在本地磁盘上
  • 操作系统类型:单会话操作系统(远程电脑访问)
  • 操作系统类型:单会话操作系统(虚拟);用户数据:丢弃
  • 操作系统类型:单会话操作系统(虚拟);用户数据:在本地磁盘上
  • 计算机数量 目录中的计算机数量和预配方法。可能的预配方法包括:Machine Creation Services (MCS 计算机)、手动和 Citrix Provisioning™ Services。
    已分配数量 目录中分配给交付组的计算机数量。
    文件夹 目录在计算机目录树中的位置。它显示目录所在文件夹的名称(包括尾随反斜杠),如果目录位于根级别,则显示“-”。
    VDA 升级 VDA 升级状态。可能的值包括:未配置、已计划、可用和最新。
    映像状态 目录映像更新的状态。仅适用于非持久性计算机目录。可能的值包括:完全更新、部分更新、待定更新、正在准备

    向目录添加计算机

    开始之前:

    • 确保虚拟化主机(管理程序或云服务提供商)具有足够的处理器、内存和存储来容纳其他计算机。
    • 确保您有足够的未使用的 Active Directory 计算机帐户。如果您使用现有帐户,则可以添加的计算机数量受可用帐户数量的限制。
    • 如果您使用 Studio 为其他计算机创建 Active Directory 计算机帐户,则必须具有相应的域管理员权限。

    提示:

    如果用于向计算机目录添加计算机的 Citrix DaaS 帐户具有受限的 AD 权限,请在登录到…屏幕中添加您打算使用的所有 Cloud Connector。

    要向目录添加计算机:

    1. 在 Studio 的左侧窗格中,选择计算机目录
    2. 选择一个计算机目录,然后在操作栏中选择添加计算机
    3. 虚拟机页面上,选择要添加的虚拟机数量。
    4. 计算机身份页面上,按如下方式配置设置:

      • 从列表中选择一个身份。

      • 如果适用,请指明是创建帐户还是使用现有帐户,以及这些帐户的位置(域)。

        如果现有 Active Directory 帐户不足以满足您要添加的 VM 数量,请选择创建帐户的域和位置。

        如果您使用现有 Active Directory 帐户,请浏览到这些帐户或选择导入并指定包含帐户名称的 .csv 文件。确保您要添加的所有计算机都有足够的帐户。Studio 管理这些帐户。允许该界面重置所有帐户的密码,或者指定帐户密码,该密码必须对所有帐户都相同。

      • 如果此身份池被其他目录使用,则无法使用 Studio 将其更改为其他池。请改用 Set-ProvScheme PowerShell cmdlet。有关详细信息,请参阅 Citrix Virtual Apps and Desktops SDK 文档

      • 指定帐户命名方案,使用哈希标记指示序列号或字母出现的位置。例如,命名方案 PC-Sales-##(选择 0-9)将生成名为 PC-Sales-01、PC-Sales-02、PC-Sales-03 等的计算机帐户。

      • (可选)您可以指定帐户名称的开头。

        指定帐户名称的开头时,请注意以下情况:如果起始数字或字母已在使用中,则创建的第一个帐户将使用其后最近的未使用数字或字母命名。

        请参阅管理计算机名称的序列号以通过 PowerShell 命令自定义使用 MCS 部署的计算机的序列号。

    5. 域凭据页面上,选择输入凭据并输入具有足够权限以创建计算机帐户的用户凭据。

    计算机作为后台进程创建,创建大量计算机时可能需要很长时间。即使您关闭 Studio,计算机创建也会继续。

    使用 CSV 文件批量向目录添加计算机

    您可以使用 CSV 文件批量添加计算机。此功能适用于所有目录,但通过 MCS 预配的目录除外。

    要批量向目录添加计算机,请完成以下步骤:

    1. 在 Studio 的左侧窗格中,选择计算机目录
    2. 选择一个计算机目录,然后在操作栏中选择添加计算机。此时将显示添加计算机窗口。
    3. 选择添加 CSV 文件。此时将显示批量添加计算机窗口。
    4. 选择下载 CSV 模板
    5. 填写模板文件。
    6. 拖动或浏览到文件以上传。
    7. 选择验证以对导入执行验证检查。
    8. 选择导入以完成该过程。

    使用 CSV 文件添加计算机时的注意事项

    注意:

    • 对于非 Active Directory 用户,您必须以以下格式键入其名称:<identity provider>:<user name>。示例:AzureAD:username
    • VM 名称区分大小写。输入 VM 路径时,请确保正确输入 VM 名称。

    编辑 CSV 模板文件时,请记住以下几点:

    • 此功能使您能够更灵活地通过 CSV 文件批量添加计算机。在文件中,您只能添加计算机(用于用户自动分配)或添加计算机以及用户分配。请以以下格式键入数据:

      • 对于计算机帐户和用户名 (samName) 对:

      • Domain\ComputerName1, Domain\Username1
      • Domain\ComputerName2, Domain\Username1;Domain\Username2
      • Domain\ComputerName3, AzureAD:username

      • 仅用于计算机帐户:

      • Domain\ComputerName1
      • Domain\ComputerName2

      • 对于 VM 和用户名对:

      • XDHyp:\Connections\ConnectionName\RegionName\vm.folder\VMName1.vm,Domain\ComputerName1,Domain\Username1
      • XDHyp:\Connections\ConnectionName\RegionName\vm.folder\VMName2.vm,Domain\ComputerName2,Domain\Username2

      • 仅用于 VM:

      • XDHyp:\Connections\ConnectionName\RegionName\vm.folder\VMName1.vm,Domain\ComputerName1
      • XDHyp:\Connections\ConnectionName\RegionName\vm.folder\VMName2.vm,Domain\ComputerName2

        例如: XDHyp:\Connections\xpace-scale\East US.region\vm.folder\wsvdaV3-2.vm

        其中,

      • xpace-scale 是 ConnectionName:您在托管 > 添加连接和资源中输入的连接名称。有关详细信息,请参阅创建连接和资源
      • East US.region 是 RegionName:区域名称,扩展名为 .region
      • wsvdaV3-2.vm 是 VMName:虚拟机名称,扩展名为 .vm
    • 文件可包含的最大计算机数量为 1,000。要导入 1,000 台以上的计算机,请将它们分散到不同的文件中,然后逐个导入这些文件。我们建议您导入不超过 1,000 台计算机。否则,目录创建可能需要很长时间才能完成。

    您还可以在同一添加计算机页面上从目录中导出计算机。导出的计算机 CSV 文件随后可用作批量添加计算机时的模板。要导出计算机:

    1. 在 Studio 的左侧窗格中,选择计算机目录
    2. 选择一个计算机目录,然后在操作栏中选择添加计算机。此时将显示添加计算机窗口。
    3. 选择导出到 CSV 文件。包含计算机列表的 CSV 文件将下载。
    4. 打开 CSV 文件以根据需要添加或编辑计算机。要使用保存的 CSV 文件批量添加计算机,请参阅上一节使用 CSV 文件批量向目录添加计算机

    注意:

    • 此功能不适用于远程电脑访问和 MCS 预配的目录。

    • CSV 文件中的计算机导出和导入仅在相同类型的目录之间受支持。

    使用 WebSocket VDA 注册工具将计算机注册到目录

    WebSocket VDA 注册工具可促进 VDA 计算机的基于令牌的注册。此工具通过使用注册令牌将 VDA 添加到计算机目录来帮助您将连接转换为 WebSocket 连接。

    注意:

    此工具旨在注册尚未注册到任何计算机目录的 VDA 计算机。

    请按照说明运行注册工具:

    1. 登录到 VDA。
    2. C:\Program Files\Citrix\Virtual Desktop Agent\Web Socket Vda Enrollment Tool 中找到工具 EnrollMachine.exe
    3. 使用适当的输入参数运行该工具。例如, EnrollMachine.exe -websocket_token_string:xxxxxxxxx

    下表描述了注册工具的输入参数:

    参数名称 必需 描述 示例
    -websocket_token_stdin 读取注册令牌。 .\EnrollMachine.exe -websocket_token_stdin
    -websocket_token_string 直接从命令行参数读取注册令牌。 .\EnrollMachine.exe -websocket_token_string:<token>
    -websocket_token_file:[token-file-path] 从提供的路径读取注册令牌。 .\EnrollMachine.exe -websocket_token_file:C:\token\test2.txt
    log:[log-file-path] 显示注册工具日志。 .\EnrollMachine.exe log:[C:\ProgramData\Citrix\EnrollMachine\EnrollMachine.txt]
    -help 显示简要帮助文本。 .\EnrollMachine.exe -help

    成功注册后,您将在工具和日志中收到成功消息。请务必登录到 Studio 以验证 VDA 计算机是否已添加到目录以及计算机的状态是否已注册。

    故障排除

    默认情况下,您可以在以下位置找到注册工具的日志:

    C:\ProgramData\Citrix\EnrollMachine\EnrollMachine.txt

    如果您为日志指定了不同的路径,则可以使用 log:[log-file-path] 来检索日志。

    下表列出了注册工具返回的代码:

    代码 字符串 描述
    0 Success VDA 已成功添加到计算机目录。
    -1 InvalidArgument 注册令牌中的输入参数无效。
    -2 BrokerAgentNotFound 未找到 Broker 代理服务。
    -3 TokenInvalid 输入的令牌无效。
    -4 TokenMissingRequiredClaims 令牌缺少必需的声明,例如 CustomerId 或 Enrollment URIs。
    -5 InternalError 发生了一般错误。
    -6 TimedOut 任务已超时。
    -7 FailedToDetermineMachineADJoinedStatus 返回计算机 AD 加入状态的服务失败。
    -8 ADMachineFailedToFindSid 返回 AD 计算机 Sid 的服务失败。
    -9 EnrollRequestFailed 请求因 HTTP 错误而失败。
    -10 EnrollResponseMissingRequiredFields 注册工具响应缺少参数 VirtualSiteId
    -11 InsufficientPermission 您没有运行该任务所需的权限。
    -12 FailedToDetermineMachineAadJoinedStatus 检查计算机 AD 加入状态的服务引发错误。
    -13 AadMachineFailedToFindDeviceId 系统添加的附加参数 AAD device id 为空。
    -14 AadDeviceIdNotValid 系统添加的附加参数 AAD device id 不是有效的 GUID。
    -15 NoValidMacAddress MAC 地址无效。
    -16 FailedToGetComputerHostNameForVdaInstanceName 无法获取计算机主机名以设置附加参数 VdaInstanceName
    -17 VirtualDesktopAgentRegistryKeyFailedToOpen 无法打开 VDA 注册表项以写入交付控制器列表。
    -18 Failed Token reached the max count 失败令牌达到最大计数。

    从目录中删除计算机

    从计算机目录中删除计算机后,用户将无法再访问它,因此在删除计算机之前,请确保:

    • 用户数据已备份或不再需要。
    • 所有用户均已注销。启用维护模式可阻止新连接到计算机。
    • 计算机已关机。

    要从目录中删除计算机:

    1. 在 Studio 的左侧窗格中,选择计算机目录
    2. 选择一个目录,然后在操作栏中选择查看计算机
    3. 选择一台或多台计算机,然后在操作栏中选择删除
    4. 如果您要从目录中删除持久性计算机,请选择是否也从管理程序或云服务中删除它们。如果您选择删除它们,请指明是保留、禁用还是删除其 Active Directory 帐户。

    当您从 Azure Resource Manager 目录中删除持久性计算机时,即使您选择保留它们,计算机和关联的资源组也会从 Azure 中删除。

    当您从目录中删除非持久性计算机时,它们会自动从管理程序或云服务中删除。

    编辑目录

    1. 在 Studio 的左侧窗格中,选择计算机目录
    2. 选择一个目录,然后在操作栏中选择编辑计算机目录
    3. 范围页面上,更改范围。
    4. NIC 页面上,执行以下操作:

      • 要更改 NIC 的子网映射,请从关联网络字段中选择一个网络。
      • 要添加子网映射,请选择添加 NIC,从关联网络字段中选择一个网络,然后单击保存

      只有与目录关联的主机中存在的子网才会显示在关联网络字段中。

      您只能向没有计算机配置文件的 Azure 计算机目录添加 NIC。

      注意:

      • 对于 AWS 计算机目录,您不能将同一子网映射到多个 NIC。
      • 对于具有计算机配置文件的计算机目录,目录上的 NIC 数量必须等于计算机配置文件上的 NIC 数量。
      • 此功能不支持 IBM Cloud 管理程序。
      • 此功能仅支持 Nutanix 管理程序中的 Nutanix Prism Element。
    5. VDA 升级页面上,更改或选择要升级到的 VDA 版本。有关详细信息,请参阅 VDA 升级
    6. 您可能会看到其他页面,具体取决于目录类型。

      对于使用 Azure Resource Manager 映像创建的目录,以下页面可见。请记住,您所做的更改仅适用于您稍后添加到目录中的计算机。现有计算机保持不变。

      • 虚拟机页面上,更改要创建计算机的计算机大小和可用性区域。

        注意:

        • 仅显示目录支持的计算机大小。
        • 如有必要,选择仅显示其他计算机目录中使用的计算机大小以筛选计算机大小列表。
      • 计算机配置文件页面上,选择是使用还是更改计算机配置文件。

      • (仅当目录配置了专用组主机时)在专用主机组页面上,选择是否更改主机组。

      • 存储和许可证类型页面上,选择是否更改存储类型、许可证类型和 Azure 计算机库设置(仅当使用将准备好的映像放置在 Azure 库中时可用)。

        注意:

        如果新选择的设置不支持当前计算机大小,则会出现警告对话框,通知您更改设置会重置计算机大小设置。如果您选择继续,虚拟机菜单旁边会出现一个红点,提示您选择新的计算机大小。

      有关页面上可用设置的详细信息,请参阅使用 Azure Resource Manager 映像创建计算机目录

      对于远程电脑访问目录,以下页面可见:

      • 电源管理页面上,更改电源管理设置并选择电源管理连接。
      • 组织单位页面上,添加或删除 Active Directory OU。
    7. 描述页面上,更改目录描述。
    8. 单击应用以应用您所做的更改,然后单击保存以退出。

    重命名目录

    1. 在 Studio 的左侧窗格中,选择计算机目录
    2. 选择一个目录,然后在操作栏中选择重命名计算机目录
    3. 输入新名称。

    删除目录

    删除目录之前,请确保:

    • 所有用户均已注销,并且没有断开连接的会话正在运行。
    • 目录中所有计算机的维护模式均已打开,以便无法建立新连接。
    • 目录中所有计算机均已关机。
    • 目录未与交付组关联。换句话说,交付组不包含来自目录的计算机。

    要删除目录:

    1. 在 Studio 的左侧窗格中,选择计算机目录
    2. 选择一个目录,然后在操作栏中选择删除计算机目录
    3. 如果目录包含持久性计算机,请指明是否也从管理程序或云服务中删除这些计算机。如果您选择这样做,请选择是保留、禁用还是删除其 Active Directory 计算机帐户。
    4. 如有必要,选择隐藏进度以在后台运行删除。

    注意:

    • 当您删除 Azure Resource Manager 目录时,即使您选择保留它们,关联的计算机和资源组也会从 Azure 中删除。
    • 当您删除包含非持久性计算机的目录时,这些计算机将从管理程序或云服务中删除。
    • 当管理程序或云服务在目录删除期间无法访问时,目录和 VM 删除都会失败。如果需要,您可以选择仅从 Citrix 站点数据库中删除 VM 记录。为此,请在计算机目录节点中选择计算机目录,然后执行故障排除选项卡上显示的删除操作。请记住,此操作会使主机上的 VM 保持不变。

    管理目录中的 Active Directory 计算机帐户

    要管理计算机目录中的 Active Directory 帐户,您可以:

    • 通过从单会话和多会话目录中删除 Active Directory 计算机帐户来释放未使用的计算机帐户。然后,这些帐户可用于其他计算机。
    • 添加帐户,以便在向目录添加更多计算机时,计算机帐户已就位。请勿在 OU 名称中使用正斜杠 (/)。

    要管理 Active Directory 帐户:

    1. 在 Studio 的左侧窗格中,选择计算机目录
    2. 选择一个目录,然后在操作栏中选择管理 AD 帐户
    3. 选择是添加还是删除计算机帐户。如果您添加帐户,请指定如何处理帐户密码:要么全部重置,要么输入适用于所有帐户的密码。

      如果您不知道当前帐户密码,则可以重置密码;您必须具有执行密码重置的权限。如果您输入密码,则在导入帐户时会更改帐户上的密码。如果您删除帐户,请选择是保留、禁用还是删除 Active Directory 中的帐户。

    您还可以指明在从目录中删除计算机或删除目录时,是否保留、禁用或删除 Active Directory 帐户。

    更改目录的主映像

    我们建议您在更改目录的主映像之前保存映像的副本或快照。数据库会保留每个计算机目录使用的映像的历史记录。如果用户遇到您部署到其桌面的新映像的问题,您可以将其回滚到以前的版本,从而最大限度地减少用户停机时间。请勿删除、移动或重命名映像。否则,您无法回滚主映像。

    重要:

    更改持久性目录的主映像时,请考虑以下事项:只有稍后添加到目录中的计算机才会使用新映像创建。我们不会将新映像推广到目录中的现有计算机。

    计算机更新后,它会自动重新启动。

    将 MCS 预配的目录从使用主映像转换为使用准备好的映像

    要将 MCS 预配的目录从使用主映像转换为使用准备好的映像,请按照以下步骤操作:

    1. 在左侧窗格中单击计算机目录,然后选择要转换的计算机目录。右键单击并选择转换为准备好的映像
    2. 映像页面上,选择一个准备好的映像。
    3. 推广策略页面上,选择何时使用选定的准备好的映像更新此目录。
    4. 摘要页面上,验证详细信息并单击完成
    5. 模板属性中验证转换后的计算机目录的详细信息。

    目前,此功能仅适用于 Azure 和 VMware 虚拟化环境。

    更新或创建映像

    在更改目录的主映像之前,请通过更新现有映像或创建新映像来在主机管理程序上准备新映像。

    1. 在您的管理程序或云服务提供商上,拍摄当前 VM 的快照并为快照指定一个有意义的名称。此快照可用于回滚主映像。
    2. 如有必要,打开映像电源并登录。
    3. 安装更新或对映像进行任何必要的更改。
    4. 如果映像使用个人 vDisk,请更新清单。
    5. 关闭 VM 电源。
    6. 拍摄 VM 的快照,并为快照指定一个有意义的名称,以便在更改主映像时识别。

    注意:

    尽管您可以使用管理界面创建快照,但我们建议您使用管理程序管理控制台创建快照,然后在 Studio 中选择该快照。这使您能够提供有意义的名称和描述,而不是自动生成的名称。对于 GPU 映像,您只能通过 XenServer XenCenter® 控制台更改映像。

    更改主映像

    要将新主映像推广到目录中的所有计算机:

    1. 在 Studio 的左侧窗格中,选择计算机目录
    2. 选择一个目录,然后在操作栏中选择更改主映像
    3. 映像页面上,选择要推广的主机和映像。

      提示:

      对于 MCS 创建的目录,您可以通过为映像添加备注来注释其映像。备注最多可包含 500 个字符。每次更改主映像时,无论您是否添加备注,都会创建一个与备注相关的条目。如果您在不添加备注的情况下更新目录,则该条目显示为 null (-)。要查看映像的备注历史记录,请选择目录,单击底部窗格中的模板属性,然后单击查看备注历史记录

    4. 推广策略页面上,选择计算机目录中的计算机何时使用新映像进行更改:在下次关机时或立即更改。

      注意:

      推广策略页面不适用于持久性 VM,因为推广仅适用于非持久性 VM。

    5. 验证摘要页面上的信息,然后选择完成。每台计算机更新后都会自动重新启动。

      要跟踪更新进度,请在计算机目录中找到目录以查看内联进度条和分步进度图。对于非持久性目录,您可以通过映像更新列跟踪其映像更新状态,包括完全更新部分更新待定更新正在准备映像

      提示:

      要显示映像更新列,请单击操作栏中的要显示的列图标,选择计算机目录 > 映像状态,然后单击保存

    如果您使用 PowerShell SDK 更新目录,则可以指定管理程序模板 (VMTemplates),作为映像或映像快照的替代方案。

    要将新主映像推广到基于 Azure 的计算机目录:

    1. 在 Studio 的左侧窗格中,选择计算机目录
    2. 选择一个 Azure 目录,然后在操作栏中选择更改主映像
    3. 更改主映像页面上,在主映像下选择一个映像。该边栏列出了属于与资源相同区域的所有映像。

    推广策略

    在下次关机时更改映像将立即影响任何当前未使用的计算机,即没有活动用户会话的计算机。正在使用的系统将在当前活动会话结束时接收更新。

    注意:

    推广策略仅适用于非持久性 VM。

    请考虑以下事项:

    • 在新会话启动之前,无法启动新会话,直到更新在适用的计算机上完成。
    • 对于单会话计算机,当计算机未使用或用户未登录时,计算机将立即更新。
    • 对于具有子计算机的多会话操作系统,重新启动不会自动发生。要应用更新的主映像,请使用 Studio、PowerShell 或 Workspace 重新启动计算机。从计算机或管理程序重新启动不会应用更新。

    提示:

    通过使用主机连接的高级设置来限制重新启动的计算机数量。使用这些设置可以修改给定目录的操作;高级设置因管理程序而异。

    回滚主映像

    推广更新或新映像后,您可以将其回滚。如果新更新的计算机出现问题,则可能需要这样做。回滚时,目录中的计算机将回滚到上次正常工作的映像。需要较新映像的任何新功能将不再可用。与推广一样,回滚计算机包括重新启动。

    1. 在 Studio 的左侧窗格中,选择计算机目录
    2. 选择目录,然后在操作栏中选择回滚主映像
    3. 指定何时将早期映像应用于计算机,如推广操作所述。

    回滚仅应用于需要还原的计算机。对于尚未更改为新映像或更新映像的计算机(例如,用户尚未注销的计算机),用户不会收到通知消息,也不会被迫注销。

    要跟踪回滚进度,请在计算机目录中找到目录以查看内联进度条和分步进度图。

    在某些情况下无法回滚,包括以下情况。(回滚主映像选项不可见)。

    • 您没有回滚的权限。
    • 目录不是使用 MCS 创建的。
    • 目录是使用操作系统磁盘的映像创建的。
    • 用于创建目录的快照已损坏。
    • 用户对目录中计算机的更改不持久。
    • 目录中的计算机正在运行。

    更改功能级别或撤消更改

    在将计算机上的 VDA 升级到较新版本后,更改计算机目录的功能级别。我们建议将所有 VDA 升级到最新版本,以启用对所有最新功能的访问。

    更改计算机目录的功能级别之前:

    • 启动升级后的计算机,使其向 Citrix DaaS 注册。这使管理界面能够确定目录中的计算机需要升级。

    要更改目录的功能级别:

    1. 在 Studio 的左侧窗格中,选择计算机目录
    2. 选择目录。底部窗格中的详细信息选项卡显示版本信息。
    3. 选择更改功能级别。如果管理界面检测到目录必须更改功能级别,它将显示一条消息。按照提示操作。如果一台或多台计算机无法更改,则会显示一条消息解释原因。为确保所有计算机正常运行。我们建议您在单击更改之前解决这些问题。

    目录升级完成后,您可以通过选择目录,然后在操作栏中选择撤消功能级别更改来将计算机还原到以前的 VDA 版本。

    克隆目录

    克隆目录之前,请注意以下事项:

    • 您无法更改与操作系统计算机管理关联的设置。克隆的目录从原始目录继承这些设置。

      注意:

      如果您选择要克隆的 Azure 目录并选择主映像,则该边栏列出了属于与资源相同区域的所有映像。

    • 克隆目录可能需要一些时间才能完成。如有必要,选择隐藏进度以在后台运行克隆。
    • 克隆的目录继承原始目录的名称,并带有一个后缀 Copy。您可以更改名称。请参阅重命名目录
    • 克隆完成后,请务必将克隆的目录分配给交付组。
    • 您可以通过克隆创建空目录。在目录克隆期间,您可以将 MCS 预配的目录的计算机数量设置为零,并且不为非 MCS 预配的目录添加计算机。
    1. 在 Studio 的左侧窗格中,选择计算机目录
    2. 选择一个目录,然后在操作栏中选择克隆
    3. 克隆选定的计算机目录窗口中,查看克隆目录的设置并根据需要配置设置。选择下一步以继续到下一页。
    4. 摘要页面上,查看设置摘要并选择完成以开始克隆。
    5. 如有必要,选择隐藏进度以在后台运行克隆。

    使用文件夹组织目录

    您可以创建文件夹来组织目录,以便于访问。例如,您可以按映像类型或组织结构组织目录。

    提示:

    您可以通过单击操作栏右上角的文件夹图标,为计算机目录节点设置首选的默认视图(文件夹视图或列表视图)。

    所需角色

    默认情况下,您需要具有以下内置角色才能创建和管理目录文件夹:云管理员、完全管理员或计算机目录管理员。如有必要,您可以自定义角色以创建和管理目录文件夹。有关详细信息,请参阅所需权限

    创建目录文件夹

    开始之前,请首先规划如何组织目录。请考虑以下事项:

    • 您可以嵌套文件夹最多五层深(不包括默认根文件夹)。
    • 目录文件夹可以包含目录和子文件夹。
    • Studio 中的所有节点(例如计算机目录交付组应用程序应用程序组)在后端共享相同的文件夹树。为避免在重命名或移动文件夹时出现名称冲突,请在不同节点中使用唯一的第一级文件夹名称。

      如果您使用 New-BrokerAdminFolder SDK cmdlet 创建文件夹并希望它显示在计算机目录节点下,则必须使用 Set-BrokerAdminFolderMetadata cmdlet 添加 ContainsMachineCatalogs 元数据。

      示例:

       Set-BrokerAdminFolderMetadata -AdminFolderId {adminFolderUid} -Name ContainsMachineCatalogs -Value true
       <!--NeedCopy-->
      

    要创建目录文件夹,请按照以下步骤操作:

    1. 在 Studio 的左侧窗格中,选择计算机目录
    2. 在文件夹层次结构中,选择一个文件夹,然后根据需要在操作栏中选择一个操作:

      • 要重命名文件夹,请选择重命名文件夹
      • 要删除文件夹,请选择删除文件夹
      • 要移动文件夹,请选择移动文件夹
    3. 按照屏幕上的说明完成其余步骤。

    提示:

    如果您在意外位置创建了文件夹,可以将其拖动到正确的位置。

    移动目录

    您可以在文件夹之间移动目录。详细步骤如下:

    1. 在 Studio 的左侧窗格中,选择计算机目录
    2. 按文件夹查看目录。您还可以打开文件夹层次结构上方的查看所有以一次性查看所有目录。
    3. 右键单击一个目录,然后选择移动计算机目录
    4. 选择要将目录移动到的文件夹,然后单击完成

    提示:

    您可以将目录拖动到文件夹。

    管理目录文件夹

    您可以删除、重命名和移动目录文件夹。

    只有当文件夹及其子文件夹不包含目录时,才能删除文件夹。

    要管理文件夹,请按照以下步骤操作:

    1. 在 Studio 的左侧窗格中,选择计算机目录
    2. 在文件夹层次结构中,选择一个文件夹,然后根据需要在操作栏中选择一个操作:

      • 要重命名文件夹,请选择重命名文件夹
      • 要删除文件夹,请选择删除文件夹
      • 要移动文件夹,请选择移动文件夹
    3. 按照屏幕上的说明完成其余步骤。

    所需权限

    下表列出了对目录文件夹执行操作所需的权限。

    操作 所需权限
    创建目录文件夹 创建计算机目录文件夹
    删除目录文件夹 删除计算机目录文件夹
    移动目录文件夹 移动计算机目录文件夹
    重命名目录文件夹 编辑计算机目录文件夹
    将目录移动到文件夹 编辑计算机目录文件夹和编辑计算机目录属性

    升级 VDA

    您可以使用 Studio 界面轻松升级 VDA。有关详细信息和分步指导,请参阅 Citrix VDA 升级服务文档。

    管理目录的配置集

    开始之前,请确保您已设置 WEM 服务部署。有关详细信息,请参阅开始使用 Workspace Environment Management 服务

    注意:

    默认情况下,如果您具有云管理员、完全访问管理员或计算机目录管理员角色,则可以管理目录的配置集。如有必要,您可以通过授予角色管理配置集权限来允许其管理配置集。

    将目录绑定到配置集

    重要:

    如果您的 Citrix DaaS 和 WEM 服务实例不在同一区域,则无法将目录绑定到配置集。在这种情况下,请将 WEM 服务迁移到与 Citrix DaaS 相同的区域。

    要将目录绑定到配置集,请按照以下步骤操作:

    1. 在 Studio 中,选择计算机目录

    2. 选择计算机目录,然后在操作栏中选择管理配置集。此时将显示管理配置集窗口。

    3. 选择要将目录绑定到的 WEM 配置集。

      注意:

      如果选定的配置集不包含与 WEM 基本配置相关的设置,则会出现将基本设置应用于配置集选项。我们建议您选择该选项以将基本设置应用于配置集。

    4. 单击保存以保存您的更改。

    切换到不同的配置集

    要切换到目录的不同配置集,请按照以下步骤操作:

    1. 在 Studio 中,选择计算机目录
    2. 选择计算机目录,然后在操作栏中选择管理配置集。此时将显示管理配置集窗口。
    3. 选择要将目录绑定到的不同 WEM 配置集。
    4. 单击保存以保存您的更改。

    从配置集中解除绑定目录

    要从配置集中解除绑定目录,请按照以下步骤操作:

    1. 在 Studio 中,选择计算机目录
    2. 选择计算机目录,然后在操作栏中选择管理配置集。此时将显示管理配置集窗口。
    3. 单击选定配置集右侧的 X 图标。
    4. 单击保存以保存您的更改。

    重试目录创建

    注意:

    此功能仅适用于 MCS 目录。

    失败的目录将标有错误图标。要查看详细信息,请转到每个目录的故障排除选项卡。在重试目录创建之前,请注意以下事项:

    • 首先检查故障排除信息并解决问题。该信息描述了发现的问题并提供了解决这些问题的建议。
    • 您无法更改与操作系统计算机管理关联的设置。目录从原始目录继承这些设置。
    • 创建可能需要一些时间才能完成。如有必要,选择隐藏进度以在后台运行创建。

    要重试创建目录,请执行以下操作:

    1. 在 Studio 的左侧窗格中,选择计算机目录
    2. 选择目录,然后转到其故障排除选项卡。
    3. 单击重试超链接以重试创建目录。
    4. 在出现的向导中,根据需要更改设置。如果无需更改,您可以直接转到摘要页面。
    5. 完成后,选择完成以开始创建。

    (仅限非 Citrix® 预配的 VDA)生成和管理注册令牌

    注意:

    要执行此任务,您必须具有云管理员角色。

    在您决定为非 Citrix 预配的计算机采用基于令牌的注册后,请按每个计算机目录生成令牌,然后与 VDA 安装管理员共享。

    注册令牌具有以下特点:

    • 注册范围:1 到 5000 台 VDA 计算机
    • 有效期:最长 14 天

    要使用 Studio 为目录生成令牌,请按照以下步骤操作:

    1. 计算机目录中,找到一个非 MCS 预配的目录,其计算机数量列中显示预配方法:手动
    2. 右键单击目录,然后选择管理注册令牌
    3. 在出现的生成注册令牌页面上,提供以下令牌信息:
      • 为令牌键入名称。
      • 输入其有效期。有效期不得超过 14 天。令牌仅在指定期间内有效。
      • (可选)选择一个主机连接,用于对使用令牌注册的 VDA 进行电源管理。选项包括此目录区域下的所有主机连接。
      • 输入令牌使用限制(1-5000 之间)。
    4. 单击生成
    5. 在出现的令牌已成功生成窗口中,复制令牌并将其保存在安全位置,或单击下载将其下载到下载文件夹。

      令牌记录将显示在令牌列表中。

      令牌生成

    6. 与 VDA 安装管理员共享令牌。

      有关如何在计算机上安装 VDA 和令牌的详细信息,请参阅安装 VDA

    管理令牌

    您有两种选择可以撤销令牌并使其无法用于 VDA 注册:

    • 撤销:撤销令牌,但将其保留在列表中以用于日志记录。
    • 删除:撤销令牌并将其从列表中删除。

    注意:

    过期令牌会在 14 天内自动删除。

    使用 PowerShell

    本部分详细介绍了如何使用 PowerShell 管理目录:

    管理计算机名称的序列号

    要通过 PowerShell 命令自定义使用 MCS 部署的计算机的序列号,请执行以下操作:

    1. 在 Delivery Controller 上以管理员身份打开 PowerShell。
    2. 运行命令 asnp citrix* 以加载 Citrix 模块。
    3. 运行以下命令以检查目录身份池的起始计数:

      Get-AcctIdentityPool -IdentityPoolName xxx

      IdentityPoolName 是目录的名称。

    4. 如果要将此计数设置为其他值,请运行以下命令并将 StartCount 指定为 X:

      Set-AcctIdentityPool -IdentityPoolName xxx -StartCount X

    5. 将计算机添加到目录,以便使用所需计数创建计算机。
    6. 创建计算机后,运行以下命令将其设置回原始值 Y:

      Set-AcctIdentityPool -IdentityPoolName xxx -StartCount Y

    向映像添加描述

    您可以添加有关计算机目录映像更新的描述性信息。使用此功能可以在创建目录时添加描述,或者在更新目录的现有主映像时添加描述。您还可以显示目录中每个主映像的信息。此功能对于希望在更新目录使用的主映像时添加描述性标签的管理员非常有用,例如,已安装 Office 365。使用以下命令添加或查看映像描述:

    • NewProvScheme。新参数 masterImageNote 使您能够向映像添加备注。例如:
    C:\PS>New-ProvScheme -ProvisioningSchemeName XenPS -HostingUnitName XenHu -IdentityPoolName idPool1 -MasterImageVM XDHyp:\HostingUnits\XenHU\Base.vm\Base.snapshot -MasterImageNote "Office365 installed"
    <!--NeedCopy-->
    
    • Publish-ProvMasterVMImage。使用此参数发布备注。例如:

    C:\PS>Publish-ProvMasterVMImage -ProvisioningSchemeName MyScheme -MasterImageVM XDHyp:\HostingUnits\HostUnit1\RhoneCC_baseXP.vm\base.snapshot -MasterImageNote "Visual Studio 2019 installed"

    • Get-ProvSchemeMasterVMImageHistory。显示每个映像的信息。例如:

    `C:\PS>Get-ProvSchemeMasterVMImageHistory -ProvisioningSchemeName MyScheme -Showall

    VMImageHistoryUid : 3cba3a75-89cd-4868-989b-27feb378fec5

    ProvisioningSchemeUid : 7585f0de-192e-4847-a6d8-22713c3a2f42

    ProvisioningSchemeName : MyScheme

    MasterImageVM : /Base.vm/base.snapshot

    Date : 17/05/2021 09:27:50

    MasterImageNote : Office365 installed`

    重置操作系统磁盘

    使用 PowerShell 命令 Reset-ProvVMDisk 重置 MCS 创建的计算机目录中持久性 VM 的操作系统磁盘。目前,此功能适用于 AWS、Azure、Google Cloud、SCVMM、VMware 和 XenServer® 虚拟化环境。

    要成功运行 PowerShell 命令,请确保:

    • 目标 VM 位于持久性 MCS 目录中。
    • MCS 计算机目录正常运行。这意味着预配方案和主机存在,并且预配方案具有正确的条目。
    • 管理程序未处于维护模式。
    • 目标 VM 已关机并处于维护模式。

    执行以下步骤重置操作系统磁盘:

    1. 打开 PowerShell 窗口。
    2. 运行 asnp citrix* 以加载 Citrix 特定的 PowerShell 模块。
    3. 通过以下任一方式运行 PowerShell 命令 Reset-ProvVMDisk

      • 将 VM 列表指定为逗号分隔列表,并对每个 VM 执行重置:

         Reset-ProvVMDisk -ProvisioningSchemeName "xxx" -VMName ("abc","def") -OS
         <!--NeedCopy-->
        
      • 将 VM 列表指定为 Get-ProvVM 命令的输出,并对每个 VM 执行重置:

         (Get-ProvVM -ProvisioningSchemeName "xxx") | Reset-ProvVMDisk "abc" -OS
         <!--NeedCopy-->
        
      • 按名称指定单个 VM:

         Reset-ProvVMDisk -ProvisioningSchemeName "xxx" -VMName "abc" -OS
         <!--NeedCopy-->
        
      • Get-ProvVM 命令返回的每个 VM 创建单独的重置任务。这效率较低,因为每个任务都将执行相同的冗余检查,例如管理程序功能检查、每个 VM 的连接检查。

         Get-ProvVM -ProvisioningSchemeName "xxx" | Reset-ProvVMDisk -ProvisioningSchemeName "xxx" -OS
         <!--NeedCopy-->
        
    4. 出现确认提示,其中列出了要重置的 VM 以及警告消息,指出这是一个不可恢复的操作。如果您不提供答案并按 Enter,则不会执行任何进一步操作。

      您可以运行 PowerShell 命令 -WhatIf 以打印它将执行的操作并退出而不执行该操作。

      您还可以使用以下方法之一绕过确认提示:

      • 提供 -Force 参数:

         Reset-ProvVMDisk -ProvisioningSchemeName "xxx" -VMName "abc" -OS -Force
         <!--NeedCopy-->
        
      • 提供 -Confirm:$false 参数:

         Reset-ProvVMDisk -ProvisioningSchemeName "xxx" -VMName "abc" -OS -Confirm:$false
         <!--NeedCopy-->
        
      • 在运行 Reset-ProvVMDisk 之前,将 $ConfirmPreference 更改为“None”:

         PS C:\Windows\system32> $ConfirmPreference='None'
         PS C:\Windows\system32> $ConfirmPreference
         None
         PS C:\Windows\system32> Reset-ProvVMDisk -ProvisioningSchemeName "xxx" -VMName "abc" -OS
         <!--NeedCopy-->
        

      注意:

      在重置过程完成之前,请勿将 VM 移出维护模式或打开其电源。

    5. 运行 Get-ProvTask 以获取 Reset-ProvVMDisk 命令返回的任务状态。

    修复活动计算机帐户的身份信息

    您可以重置具有身份相关问题的活动计算机帐户的身份信息。您可以选择仅重置计算机密码和信任密钥,或重置身份磁盘的所有配置。此实现适用于持久性和非持久性 MCS 计算机目录。

    注意:

    目前,此功能仅支持 AWS、Azure、GCP、SCVMM、VMware 和 XenServer 虚拟化环境。

    条件

    确保以下各项以成功重置身份磁盘:

    • 关闭 VM 并将其设置为维护模式
    • PowerShell 命令中不包含参数 -OS

    重置身份信息

    要重置身份信息:

    1. 打开 PowerShell 窗口。
    2. 运行 asnp citrix* 以加载 Citrix 特定的 PowerShell 模块。
    3. 重置身份信息。

      • 要仅重置计算机密码和信任密钥,请运行以下命令:

         Repair-AcctIdentity -IdentityAccountName TEST\VM1 -PrivilegedUserName TEST\admin1 -PrivilegedUserPassword $password -Target IdentityInfo
         <!--NeedCopy-->
        

        命令中使用的参数说明如下:

        • IdentityAccountName:必须修复的身份帐户的名称。
        • PrivilegedUserName:对身份提供程序(AD 或 Azure AD)具有写入权限的用户帐户。
        • PrivilegedUserPassword:PrivilegedUserName 的密码。
        • Target:修复操作的目标。它可以是 IdentityInfo 以修复帐户密码/信任密钥,以及 UserCertificate 以修复混合 Azure AD 加入的计算机身份的用户证书属性。
      • 要重置身份磁盘的所有配置,请按以下顺序运行以下命令:

         Repair-AcctIdentity -IdentityAccountName TEST\VM1 -PrivilegedUserName TEST\admin1 -PrivilegedUserPassword $password -Target IdentityInfo
         <!--NeedCopy-->
        
         Reset-ProvVMDisk ProvisioningSchemeName <name> -VMName <name>  -Identity
         <!--NeedCopy-->
        
      • 要完全重新创建身份磁盘:

         Reset-ProvVMDisk -ProvisioningSchemeName <name> -VMname <name> -Identity -Recreate
         <!--NeedCopy-->
        
    4. 键入 y 以确认操作。您还可以使用 -Force 参数跳过确认提示。例如:

      Reset-ProvVMDisk -ProvisioningSchemeName <name> -VMName <name> -Identity -Force
      <!--NeedCopy-->
      
    5. 运行 Get-ProvVM -ProvisioningSchemeName <name -VMName <name> 以检查更新的身份磁盘设置。身份磁盘的属性(例如,IdentityDiskId)必须更新。StorageIdIdentityDiskIndex 不得更改。

    更改现有计算机目录的网络设置

    您可以更改现有计算机目录的网络设置,以便在新子网络上创建新 VM。使用 Set-ProvScheme 命令中的参数 -NetworkMapping 更改网络设置。

    要更改现有预配方案的网络设置,请执行以下操作:

    1. 在 PowerShell 窗口中,运行命令 asnp citrix* 以加载 PowerShell 模块。
    2. 运行 (Get-Provscheme -ProvisioningSchemeName "name").NetworkMaps 以获取要更改的网络路径。
    3. 为新网络设置分配一个变量。例如:

      $NewNetworkMap = @{"0"= "XDHYP:\HostingUnits\MyNetworks\Network 0.network"}
      <!--NeedCopy-->
      
    4. 运行 Set-ProvScheme -ProvisioningSchemeName "name" -NetworkMapping $NewNetworkMap
    5. 运行 (Get-Provscheme -ProvisioningSchemeName "name").NetworkMaps 以验证现有预配方案的新网络设置。

    管理计算机目录的版本

    当 MCS 计算机目录使用 Set-ProvScheme 命令更新时,当前配置将保存为一个版本。然后,您可以使用 PowerShell 命令管理计算机目录的各种版本。您可以:

    • 查看计算机目录的版本列表。
    • 使用任何以前的版本更新计算机目录。
    • 如果某个版本未被该计算机目录的 VM 使用,则手动删除该版本。
    • 更改计算机目录要保留的最大版本数(默认值为 99)。

    版本包括计算机目录的以下信息:

    • VMCpuCount
    • VMMemoryMB
    • CustomProperties
    • ServiceOffering
    • MachineProfile
    • NetworkMapping
    • SecurityGroup

    运行以下命令(作为示例提供)以管理计算机目录的各种版本。

    • 要查看计算机目录各种版本的配置详细信息:

       Get-ProvSchemeVersion -ProvisioningSchemeName AzureCatalog
       <!--NeedCopy-->
      
    • 要查看计算机目录特定版本的配置详细信息:

       Get-ProvSchemeVersion -ProvisioningSchemeName AzureCatalog -Version 2
       <!--NeedCopy-->
      
    • 要查看与计算机目录关联的总版本数:

       (Get-ProvSchemeVersion -ProvisioningSchemeName AzureCatalog).Count
       <!--NeedCopy-->
      
    • 要使用任何以前的版本更新计算机目录:

       Set-ProvScheme -ProvisioningSchemeName AzureCatalog -Version 2
       <!--NeedCopy-->
      
    • 要手动删除某个版本(如果该版本未被该计算机目录的任何 VM 使用):

       Remove-ProvSchemeVersion -ProvisioningSchemeName AzureCatalog -Version 3
       <!--NeedCopy-->
      
    • 要设置计算机目录要保留的最大版本数(默认值为 99)。此设置适用于所有目录。例如,在这种情况下,所有 MCS 预配的目录将保留最多 15 个版本。

       Set-ProvServiceConfigurationData -Name "MaxProvSchemeVersions" -Value 15
       <!--NeedCopy-->
      

    如果版本数量达到最大版本数量,则如果任何 VM 正在使用旧版本,则无法创建新版本。在这种情况下,请执行以下操作之一:

    • 增加计算机目录要保留的最大版本数的限制。
    • 更新旧版本上的一些 VM,以便这些旧版本不再被任何 VM 引用,并且可以删除。

    更改现有计算机目录的缓存配置

    在创建启用了 MCSIO 的非持久性目录后,您可以使用 Set-ProvScheme 命令修改以下参数:

    • WriteBackCacheMemorySize
    • WriteBackCacheDiskSize

    此功能目前适用于:

    • GCP 和 Microsoft Azure 环境,以及
    • 启用了 MCSIO 的非持久性目录

    要求

    修改缓存配置的要求是:

    • 更新到最新版本的 VDA(2308 或更高版本)。
    • 为现有计算机目录启用参数 UseWriteBackCache。使用 New-ProvScheme 创建启用了 UseWriteBackCache 的计算机目录。例如:

       New-ProvScheme -ProvisioningSchemeName $CatalogName -HostingUnitUid $HostingUnitUid `
       -IdentityPoolUid $acctPool.IdentityPoolUid -CleanOnBoot `
       -MasterImageVM $MasterImage `
       -ServiceOffering $ServiceOffering `
       -NetworkMap $NetworkMap `
       -SecurityGroup $SecurityGroup `
       -UseWriteBackCache -WriteBackCacheDiskSize 8
       <!--NeedCopy-->
      

    更改缓存配置

    运行 Set-ProvScheme 命令。例如:

    Set-ProvScheme -ProvisioningSchemeName $provScheme.ProvisioningSchemeName -WriteBackCacheDisk32 -WriteBackCacheMemorySize 128
    <!--NeedCopy-->
    

    注意:

    • WriteBackCacheDiskSize 的值必须大于零,因为至少需要 1 GB 的缓存磁盘存储。
    • WriteBackCacheMemorySize 的值必须小于计算机目录内存大小。
    • 这些更改仅影响更改后添加到目录中的新 VM。现有 VM 不受这些更改的影响。

    将非计算机配置文件型计算机目录转换为计算机配置文件型计算机目录

    您可以使用 VM、模板规范(在 Azure 的情况下)或启动模板(在 AWS 的情况下)或 VMware 模板(在 VMware 的情况下)作为计算机配置文件输入,将非计算机配置文件型计算机目录转换为计算机配置文件型计算机目录。添加到目录中的新 VM 将从计算机配置文件中获取属性值。

    注意:

    现有计算机配置文件型计算机目录无法更改为非计算机配置文件型计算机目录。

    为此:

    1. 创建具有 VM 且没有计算机配置文件的持久性或非持久性计算机目录。
    2. 打开 PowerShell 窗口。
    3. 运行 Set-ProvScheme 命令,将计算机配置文件中的属性值应用于添加到计算机目录中的新 VM。例如:

      • 在 Azure 的情况下:

         Set-ProvScheme -ProvisioningSchemeName xxxx -MachineProfile XDHyp:\HostingUnits\<HostingUnitName>\machineprofile.folder\<ResourceGroupName>\<TemplateSpecName>\<VersionName>
         <!--NeedCopy-->
        
      • 在 AWS 的情况下:

         Set-ProvScheme -ProvisioningSchemeName xxxx -MachineProfile "XDHyp:\HostingUnits\<hosting-unit>\<launch-template>.launchtemplate\<launch-template-version>.launchtemplateversion"
         <!--NeedCopy-->
        
      • 在 VMware 的情况下:

         Set-ProvScheme -ProvisioningSchemeName "my-prov-scheme" -MachineProfile "XDHyp:\HostingUnits\my-hosting-unit\my-template.template"
         <!--NeedCopy-->
        

        注意:

        FolderID 设置为自定义属性,以避免从 VMware 模板派生 FolderID

    检索与目录相关的警告和错误

    您可以获取历史错误和警告,以了解 MCS 计算机目录的问题并解决这些问题。

    使用 PowerShell 命令,您可以:

    • 获取错误或警告列表
    • 将警告状态从新建更改为已确认
    • 删除错误或警告

    要运行 PowerShell 命令:

    1. 打开 PowerShell 窗口。
    2. 运行 asnp citrix* 以加载 Citrix 特定的 PowerShell 模块。

    要获取错误和警告列表:

    运行 Get-ProvOperationEvent 命令。

    • 不带参数:获取所有错误和警告
    • LinkedObjectTypeLinkedObjectUid 参数:获取与特定预配方案关联的所有错误和警告
    • EventId 参数:获取与此事件 ID 匹配的特定错误或警告
    • Filter 参数:通过自定义筛选器获取错误或警告

    要将错误或警告的状态从新建更改为已确认

    运行 Confirm-ProvOperationEvent 命令。

    • EventId 参数:设置与此事件 ID 匹配的特定错误或警告的状态。您可以从 Get-ProvOperationEvent 命令的输出中获取特定错误或警告的 EventId
    • LinkedObjectTypeLinkedObjectUid 参数:设置与特定预配方案关联的所有错误和警告的状态
    • All 参数:将所有错误和警告的状态设置为已确认

    要删除错误或警告:

    运行 Remove-ProvOperationEvent 命令。

    • EventId 参数:删除与此事件 ID 匹配的特定错误或警告。您可以从 Get-ProvOperationEvent 命令的输出中获取特定错误或警告的 EventId
    • LinkedObjectTypeLinkedObjectUid 参数:删除与特定预配方案关联的所有错误和警告
    • All 参数:删除所有错误和警告

    有关详细信息,请参阅 Citrix PowerShell SDK

    删除无管理程序访问权限的计算机

    删除 VM 或预配方案时,MCS 需要从 VM(有时也从基本磁盘)中删除标签,以便删除选项中包含的资源不再被 MCS 跟踪或识别。但是,其中一些资源只能通过管理程序访问。使用 Remove-ProvVM PowerShell 中的 PurgeDBOnly 选项,即使没有管理程序访问权限,也可以从数据库中删除 VM 资源对象,例如 VM、基本磁盘、ACG 中的映像等。

    此选项已启用:

    • 所有受支持的管理程序
    • 持久性和非持久性 VM

    限制

    您不能同时使用命令 -PurgeDBOnly 和 -ForgetVM。

    使用 PurgeDBOnly 命令

    运行 PowerShell 命令 Remove-ProvVM -ProvisioningSchemeName SCVMM-MC -VMName SCVMM01 -ForgetVM 时,删除操作可能在以下情况下失败:

    • 主机连接处于维护模式
    • 凭据无效
    • 身份验证失败
    • 未经授权的操作
    • 管理程序无法访问

    注意:

    Remove-provVM -ForgetVM 仅针对持久性 VM。如果列表中的某个 VM 是非持久性 VM,则操作失败。

    当操作因管理程序无法访问而失败时,将出现以下提示:

    Try to use -PurgeDBOnly option to clean DDC database.

    使用 Remove-ProvVM PowerShell 命令中的 -PurgeDBOnly 选项从 MCS 数据库中删除 VM 的引用。例如,

    Remove-ProvVM -ProvisioningSchemeName SCVMM-MC -VMName SCVMM01 -PurgeDBOnly

    更新单个 VM 的属性

    您可以使用 PowerShell 命令 Set-ProvVM 更新持久性 MCS 计算机目录中单个 VM 的属性。但是,更新不会立即应用。您必须使用 PowerShell 命令 Set-ProvVMUpdateTimeWindow 设置时间窗口,以便应用更新。

    此实现可帮助您高效地管理单个 VM,而无需更新整个计算机目录。目前,此功能适用于 Azure 和 VMware 环境。

    目前,您可以更新的属性是:

    • CustomProperties
    • ServiceOffering(不适用于 VMware)
    • MachineProfile
    • CpuCount
    • Memory

    使用此功能,您可以:

    更新 VM 属性之前:

    1. 打开 PowerShell 窗口。
    2. 运行 asnp citrix* 以加载 Citrix 特定的 PowerShell 模块。
    3. 检查现有计算机目录的配置。例如:

      Get-ProvScheme -ProvisioningSchemeName <catalog name>
      <!--NeedCopy-->
      
    4. 检查要应用更新的 VM 的配置。例如:

      Get-ProvVM -ProvisioningSchemeName <catalog name> -VMName machine1
      <!--NeedCopy-->
      

    更新 VM 的属性

    要更新 VM 上的属性,请执行以下操作:

    1. 关闭要应用更新的 VM。
    2. 更新 VM 的属性。例如,如果要更新 VM 的存储类型 (StorageType) 自定义属性,请运行以下命令:

      Set-ProvVM -ProvisioningSchemeName <catalog name> -VMName machine1 -CustomProperties "...<Property Name='StorageType' Value='Premium_LRS' />..."
      <!--NeedCopy-->
      

      您可以同时更新计算机目录中两个 VM 的属性。例如:

      Set-ProvVM -ProvisioningSchemeName <catalog name> -VMName machine1 -CustomProperties "...<Property Name='StorageType' Value='Premium_LRS' />..."
      <!--NeedCopy-->
      
      Set-ProvVM -ProvisioningSchemeName <catalog name> -VMName machine2 -CustomProperties "...<Property Name='StorageType' Value='StandardSSD_LRS' />..."
      <!--NeedCopy-->
      

      注意:

      更新不会立即应用。

    3. 获取指定要更新的属性列表和配置版本。例如:

      Get-ProvVMConfiguration -ProvisioningSchemeName <catalog name> -VMName machine1
      <!--NeedCopy-->
      

      检查 Version 的属性值和要更新的属性(在本例中为 StorageType)。

    4. 检查配置版本。例如:

      Get-ProvVM -ProvisioningSchemeName <catalog name> -VMName machine1
      <!--NeedCopy-->
      

      检查 ProvVMConfigurationVersion 的属性值。更新尚未应用。VM 仍处于旧配置中。

    5. 请求计划更新。例如:

       Set-ProvVMUpdateTimeWindow -ProvisioningSchemeName <catalog name> -StartsNow -DurationInMinutes -1
       <!--NeedCopy-->
      

      有关计划更新的详细信息,请参阅将预配的计算机更新到当前预配方案状态

      注意:

      任何待处理的预配方案更新也会应用。

    6. 重新启动 VM。例如:

      New-BrokerHostingPowerAction -MachineName machine1 -Action TurnOn
      <!--NeedCopy-->
      
    7. 检查配置版本。例如:

      Get-ProvVM -ProvisioningSchemeName AzureCatalog -VMName machine1
      <!--NeedCopy-->
      

      检查 ProvVMConfigurationVersion 的属性值。更新现已应用。VM 现在具有新配置。

    8. 要对 VM 应用进一步的配置更新,请关闭 VM,然后重复这些步骤。

    在计算机目录更新后保留 VM 上更新的属性

    要保留 VM 上更新的属性,请执行以下操作:

    1. 关闭要应用更新的 VM。
    2. 更新计算机目录。例如,如果要更改 VM 大小 (ServiceOffering) 和存储类型 (StorageType),请运行以下命令:

      Set-ProvScheme -ProvisioningSchemeName <catalog name> -ServiceOffering Standard_E4_v3 -CustomProperties "...<Property Name='StorageType' Value='StandardSSD_LRS' />..."
      <!--NeedCopy-->
      
    3. 获取计算机目录的配置详细信息。例如:

      Get-ProvScheme -ProvisioningSchemeName <catalog name>
      <!--NeedCopy-->
      

      ProvisioningSchemeVersion 现在增加了一。VM 大小和存储类型也已更新。

    4. 更新 VM 的属性。例如,为 VM 提供计算机配置文件。

      Set-ProvVM -ProvisioningSchemeName <catalog name> -VMName machine1 -MachineProfile "XDHyp:\HostingUnits\<hosting-unit>\machineprofile.folder\<resource-group>.resourcegroup\<template-spec>.templatespec\<template-spec-version>.templatespecversion"
      <!--NeedCopy-->
      

      注意:

      计算机配置文件输入具有标签和指定的不同 VM 大小 (ServiceOffering)。

    5. 获取 VM 在将 VM 上的配置更新与计算机目录更新合并后将具有的属性列表。例如:

      Get-ProvVMConfigurationResultantSet -ProvisioningSchemeName <catalog name> -VMName machine1
      <!--NeedCopy-->
      

      注意:

      VM 上的任何更新都将覆盖计算机目录上所做的更新。

    6. 请求 VM 的计划更新。例如:

      Set-ProvVMUpdateTimeWindow -ProvisioningSchemeName <catalog name> -VMName machine1 -StartsNow -DurationInMinutes -1
      <!--NeedCopy-->
      
    7. 重新启动 VM。例如:

      New-BrokerHostingPowerAction -MachineName machine1 -Action TurnOn
      <!--NeedCopy-->
      

      VM 保留其从计算机配置文件派生的更新 VM 大小。计算机配置文件中指定的标签值也应用于 VM。但是,存储类型是从最新的预配方案派生的。

    8. 获取 VM 的配置版本。例如:

      Get-ProvVM -ProvisioningSchemeName <catalog name> -VMName machine1
      <!--NeedCopy-->
      

      ProvisioningSchemeVersionProvVMConfigurationVersion 现在显示最新版本。

    还原应用于 VM 的配置更新

    1. 将更新应用于 VM 后,关闭 VM。
    2. 运行以下命令以删除应用于 VM 的更新。例如:

      Set-ProvVM -RevertToProvSchemeConfiguration -ProvisioningSchemeName <catalog name> -VMName machine1
      <!--NeedCopy-->
      
    3. 请求 VM 的计划更新。例如:

      Set-ProvVMUpdateTimeWindow -ProvisioningSchemeName <catalog name> -VMName machine1 -StartsNow -DurationInMinutes -1
      <!--NeedCopy-->
      
    4. 重新启动 VM。例如:

      New-BrokerHostingPowerAction -MachineName machine1 -Action TurnOn
      <!--NeedCopy-->
      
    5. 检查 VM 的配置版本。例如:

      Get-ProvVM -ProvisioningSchemeName <catalog name> -VMName machine1
      <!--NeedCopy-->
      

      ProvVMConfigurationVersion 值现在是计算机目录的配置版本。

    VM 的存储迁移

    您可以在 VMware 和 XenServer 环境中将现有 VM 的磁盘存储从旧存储移动到新存储。在迁移期间,MCS 会保留 VM 功能,例如电源管理、重置操作系统磁盘等。您还可以使用新磁盘存储向计算机目录添加新 VM。为此,请使用 PowerShell 命令 Move-ProvVMDisk

    您可以迁移完整克隆持久性 VM 和非持久性 VM。

    • 对于持久性完整克隆 VM:操作系统磁盘、身份磁盘和非 MCS 预配磁盘。
    • 对于非持久性 VM:操作系统磁盘、身份磁盘和回写缓存 (WBC) 磁盘。

    新存储必须满足以下条件:

    • 它必须位于旧存储的同一群集中。
    • VM 运行所在的主机必须能够访问旧数据存储和新数据存储。

    迁移磁盘存储

    要迁移磁盘存储:

    1. 向现有托管单元添加目标存储。您可以运行 PowerShell 命令 Add-Hyphostingunitstorage 添加目标存储:

      如果您不想将新 VM 添加到旧存储,则将旧存储更改为已取代。您可以使用 Studio 或 PowerShell 命令执行此操作。对于 Studio,请参阅编辑存储。或者,运行 Set-Hyphostingunitstorage 并将 Superseded 设置为 true 以禁用在旧存储中创建新 VM。

      注意:

      对于非持久性 VM:

      • 如果使用 WBC,则在托管单元中配置 WBC 目标存储。
      • 如果配置了操作系统目标存储,则 WBC(如果使用)必须与操作系统目标存储兼容。
      • 如果未配置操作系统目标存储,则 WBC(如果使用)必须与当前操作系统存储兼容。
    2. 关闭 VM 并打开维护模式
    3. 获取有关预配方案、托管单元、操作系统磁盘存储和 WBC 磁盘存储的信息。

      • 运行 ProvResourceInStorage 以获取操作系统存储信息。例如:

         $result=Get-ProvSchemeResourceInStorage -ProvisioningSchemeName xxxxx
         $result
         $result.ProvResourceInStorage | Format-List -Property *
         <!--NeedCopy-->
        
      • 运行 TemporaryStorageInfo 以获取 WBC 存储信息。例如:

         $result=Get-ProvSchemeResourceInStorage -ProvisioningSchemeName xxxxx
         $result
         $result.TemporaryStorageInfo | Format-List -Property *
         <!--NeedCopy-->
        
    4. 使用 Move-ProvVMDisk PowerShell 命令将操作系统磁盘、身份磁盘和 WBC 磁盘(适用于非持久性 VM)迁移到目标存储。

      注意:

      • 始终在 DiskType 和 DestinationStorageId 参数中提供操作系统和身份磁盘。
      • 操作系统磁盘和身份磁盘的 DestinationStorageId 必须相同。

      示例:

      持久性 VM:

      (Get-ProvVM -ProvisioningSchemeName xxxxx) | Move-ProvVMDisk -ProvisioningSchemeName "myFullCloneProvScheme" -VMName "machine01" -DiskType OS,Identity -DestinationStorageId datastore1,datastore1
      <!--NeedCopy-->
      

      重要:

      对于持久性 VM,所有磁盘都将移动。您无法选择要移动的磁盘。

      非持久性 VM:

      (Get-ProvVM -ProvisioningSchemeName xxxxx) | Move-ProvVMDisk -ProvisioningSchemeName "myCleanOnBootProvScheme" -VMName "machine01" -DiskType OS,Identity,WBC -DestinationStorageId None,None,datastore1
      <!--NeedCopy-->
      

      重要:

      • 如果您不想迁移特定磁盘,请将 DestinationStorageId 参数的值设置为 None
      • 如果 VM 具有 WBC 磁盘,则在 DiskType 参数中添加 WBC 磁盘,并在 DestinationStorageId 参数中添加所需信息。

    故障排除

    如果其中一个磁盘未能迁移,则所有磁盘都不会迁移到目标存储。您可以使用以下命令获取故障报告:

    (Get-ProvTask -TaskID xxxxxxxxx).DiskMoveFailedVirtualMachines
    <!--NeedCopy-->
    

    VMware 中非持久性 VM 迁移的重要注意事项

    • 如果您尝试将操作系统和身份磁盘移动到新存储,则 VM 特定文件也会移动到新存储。
    • VMware 不支持移动具有快照的磁盘。

    将现有 MCS 预配的目录迁移到准备好的映像计算机目录

    您可以使用 PowerShell 命令 Set-ProvSchemeImage 将现有 MCS 预配的计算机目录转换为准备好的映像计算机目录。但是,迁移后您无法恢复到旧版目录。目前,此功能适用于 Azure 和 VMware 虚拟化环境。

    限制

    请考虑以下限制:

    • 如果 MCS 目录使用持久性数据磁盘,则无法将目录迁移以使用准备好的映像。
    • 如果 MCS 目录使用非托管磁盘,则无法将目录迁移以使用准备好的映像。

    迁移到准备好的映像计算机目录

    要进行迁移,请执行以下操作:

    1. 使用 Studio 或 PowerShell 命令创建映像定义和映像版本。请参阅以下位置创建映像定义和映像版本的步骤:

    2. 运行 Get-ProvScheme 命令以获取预配方案 UID。例如:

      Get-ProvScheme -ProvisioningSchemeName <name> | select ProvisioningSchemeName, ProvisioningSchemeUid
      <!--NeedCopy-->
      
    3. 运行 Get-ProvImageVersionSpec 命令以获取映像定义名称、映像版本规范 UID。例如:

      Get-ProvImageVersionSpec -ImageDifinitionName <name> -Filter {IsPrepared -eq $true} | select ImageDefinitionName ImageVersionSpecUId
      <!--NeedCopy-->
      
    4. 运行 Set-ProvSchemeImage 命令以将现有 MCS 预配的计算机目录迁移到准备好的映像计算机目录。例如:

      Set-ProvSchemeImage -ProvisioningSchemeName [ProvisioningSchemeName] -ImageVersionSpecUid [ImageVersionSpecUid]
      <!--NeedCopy-->
      
    5. 运行 Get-ProvScheme 命令以检查目录是否已迁移。例如:

      Get-ProvScheme -ProvisioningSchemeName <name> | select ProvisioningSchemeName, ProvisioningSchemeUid, ImageVersionSpecUid
      <!--NeedCopy-->
      

    故障排除

    • 对于状态为 Power State Unknown 的计算机,请参阅 CTX131267 以获取指导。
    • 要修复持续显示未知电源状态的 VM,请参阅如何修复持续显示未知电源状态的 VM
    • 如果 Cloud Connector 未正常运行,MCS 预配操作(例如目录更新)将比平时花费更长时间,并且管理控制台性能会显著下降。

    接下来去哪里

    有关管理特定管理程序目录的信息,请参阅: