Citrix Virtual Apps and Desktops

管理计算机目录

注意:

可以使用下面两个管理控制台管理您的 Citrix Virtual Apps and Desktops 部署:Web Studio(基于 Web)和 Citrix Studio(基于 Windows)。本文仅涵盖 Web Studio。有关 Citrix Studio 的信息,请参阅 Citrix Virtual Apps and Desktops 7 2212 或更早版本中的等效文章。

简介

可以在计算机目录中添加或删除计算机、重命名、更改说明或管理目录的 Active Directory 计算机帐户。

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

  • 包含使用 Machine Creation Services (MCS) 创建的池随机目录通过更新在目录中使用的主映像,然后更新计算机来维护计算机。此方法使您能够有效地更新大量用户计算机。
  • 对于包含静态永久分配的计算机的目录以及 Remote PC Access 计算机目录,请在 Web Studio 外部管理用户计算机的更新。请使用第三方软件分发工具以单独或集中方式执行此操作。

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

注意:

MCS 不支持 Windows 10 IoT 核心版和 Windows 10 IoT 企业版。请参阅 Microsoft 站点以了解详细信息。

关于永久实例

在更新使用永久或专用实例创建的 MCS 目录时,为该目录创建的任何新计算机将使用更新后的映像。预先存在的实例将继续使用原始实例。更新映像的过程与更新任何其他类型的目录的方式相同。请注意以下事项:

  • 使用永久磁盘目录时,预先存在的计算机不会更新到新的映像,但是添加到该目录中的任何新计算机将使用新映像。
  • 对于非永久磁盘目录,下次重置计算机时将更新计算机映像。
  • 使用永久计算机目录时,更新映像也将更新使用它的目录实例。
  • 对于不会永久存在的目录,如果您希望不同的计算机使用不同的映像,则映像必须位于单独的目录中。

管理计算机目录

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

使用 Web Studio

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

向目录中添加计算机

开始之前:

  • 确保虚拟化主机具有足够多的处理器、内存和存储空间来容纳更多的计算机。
  • 确保有足够多的未使用 Active Directory 计算机帐户。如果要使用现有帐户,可以添加的计算机数受可用帐户数限制。
  • 如果使用 Web Studio 为更多计算机创建 Active Directory 计算机帐户,必须具有相应的域管理员权限。

向目录中添加计算机:

  1. 登录 Web Studio。
  2. 在左侧窗格中选择计算机目录
  3. 选择计算机目录,然后在操作栏中选择添加计算机
  4. 选择要添加的虚拟机数。
  5. 如果现有 Active Directory 帐户的数量不足,无法容纳要添加的 VM 数量,请选择要在其中创建帐户的域和位置。指定帐户命名方案,并使用井号来表示将显示连续数字或字母的位置。请勿在 OU 名称中使用正斜杠 (/)。名称不能以数字开头。例如,命名方案 PC-Sales-##(可以选择 0-9)将生成名为 PC-Sales-01、PC-Sales-02、PC-Sales-03 等的计算机帐户。
  6. 如果使用现有 Active Directory 帐户,请浏览到相应的帐户,或者单击导入并指定一个包含帐户名称的 .csv 文件。确保要添加的所有计算机都有足够的帐户。Web Studio 将管理这些帐户。允许 Web Studio 重置所有帐户的密码或者指定帐户密码,所有帐户的密码都必须相同。

系统会将计算机创建过程作为后台进程来执行,创建许多计算机时,需要很长时间才能完成。即使关闭 Web Studio,计算机创建过程也会继续执行。

从目录中删除计算机

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

  • 用户数据已备份或者不再需要。
  • 所有用户均已注销。打开维护模式将停止连接到计算机的新连接。
  • 计算机已关闭电源。

从目录中删除计算机:

  1. 登录 Web Studio。
  2. 在左侧窗格中选择计算机目录
  3. 选择一个目录,然后在操作栏中选择查看计算机
  4. 选择一个或多个计算机,然后在操作栏中选择删除

选择是否删除要删除的计算机。如果选择删除计算机,请指示保留、禁用还是删除这些计算机的 Active Directory 帐户。

编辑目录

  1. 说明页面上,更改目录说明。
  2. 在左侧窗格中选择计算机目录
  3. 选择一个目录,然后在操作栏中选择编辑计算机目录
  4. 作用域页面上,更改作用域。
  5. 您可能会看到其他页面,具体取决于目录类型。

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

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

      注意:

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

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

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

    注意:

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

    • 许可证类型页面上,选择是更改 Windows 许可证还是 Linux 许可证设置。

    对于 Remote PC Access 目录,以下页面可见:

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

重命名目录

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

将目录移动到其他区域

如果您的部署包含多个区域,可以将某个目录从一个区域移动到另一个区域。

将某个目录移动到除包含该目录中的 VM 的虚拟机管理程序以外的其他区域会影响性能。

  1. 登录 Web Studio。
  2. 在左侧窗格中选择计算机目录
  3. 选择一个目录,然后在操作栏中选择移动
  4. 选择要将目录移动到的区域。

删除目录

删除编录之前,请确保:

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

要删除目录,请执行以下操作:

  1. 登录 Web Studio。
  2. 在左侧窗格中选择计算机目录
  3. 选择一个目录,然后在操作栏中选择删除计算机目录
  4. 指明是否删除目录中的计算机。如果选择删除计算机,请指示保留、禁用还是删除这些计算机的 Active Directory 计算机帐户。

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

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

  • 从单会话操作系统和多会话操作系统目录中删除 Active Directory 计算机帐户,从而释放未使用的计算机帐户。之后,这些帐户便可用于其他计算机。
  • 添加帐户,以便在向此目录添加更多计算机时,有可用的计算机帐户。请勿在 OU 名称中使用正斜杠 (/)。

管理 Active Directory 帐户:

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

    如果不知道当前的帐户密码,则可能需要重置密码;必须具有重置密码的权限。输入密码时,该密码会在系统导入帐户时发生变化。删除帐户时,请选择在 Active Directory 中保留、禁用还是删除帐户。

指示从目录中删除计算机或删除目录时应保留、禁用还是删除 Active Directory 帐户。

更新目录

我们建议您在更新目录中的计算机之前保存主映像的副本或快照。数据库会保留每个计算机目录中使用主映像的历史记录。回滚或还原目录中的计算机以使用早期版本的主映像。如果用户在部署到其桌面的更新中遇到问题,请执行此任务。这样可以最大限度地减少用户的停机时间。不要对主映像进行删除、移动或重命名。您无法还原目录以进行使用。

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

更新或创建主映像

更新计算机目录之前,请更新现有主映像或在主机虚拟机管理程序上创建一个主映像。

  1. 在您的虚拟机管理程序中,创建当前 VM 的快照并为该快照提供一个有意义的名称。可以根据需要使用该快照还原(回滚)目录中的计算机。
  2. 如有需要,请打开主映像的电源并登录。
  3. 安装更新或对主映像做任何必要的更改。
  4. 关闭 VM 的电源。
  5. 截取 VM 的快照。为其提供一个能够在 Web Studio 中更新目录时识别的有意义的名称。虽然 Web Studio 可以创建快照,但 Citrix 仍建议您使用虚拟机管理程序管理控制台进行创建。然后在 Web Studio 中选择该快照。执行此过程可以提供有意义的名称和说明,而非自动生成的名称。对于 GPU 主映像,只能通过 XenServer 控制台更改该主映像。

更改主映像

准备并前滚目录中的所有计算机的更新:

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

    提示:

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

  5. 前滚策略页面上,选择使用新主映像更新计算机目录中计算机的时间:下次关闭时或立即。

    注意:

    前滚策略页面不适用于永久 VM,因为前滚仅适用于非永久 VM。

  6. 确认摘要页面上的信息,然后单击完成。每台计算机都在更新后自动重新启动。

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

直接使用 PowerShell SDK(而非使用 Web Studio)更新目录时,请指定虚拟机管理程序模板 (VMTemplates)。将其用作图像或图像快照的替代方法。

前滚策略:

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

  • 在适用的计算机上完成更新之前,无法启动新会话。
  • 对于单会话操作系统计算机,计算机未在使用或用户未登录时,将立即更新计算机。
  • 对于包含子计算机的多会话操作系统,重新引导不会自动发生。必须手动将其关闭并重新启动。

提示:

可以通过主机连接的高级设置来限制要重新引导的计算机数量。使用这些设置可以修改针对给定目录执行的操作;高级设置因虚拟机管理程序而异。

如果要使用 PowerShell 启用一次性重新启动计划,请参阅启用一次性重新启动计划

回滚主映像

前滚更新后的或新的主映像之后,可以进行回滚。如果新更新的计算机出现问题,此过程可能很有必要。回滚时,目录中的计算机将回滚到上一个工作映像。需要较新映像的任何新功能将不再可用。与前滚一样,回滚计算机也需要重新启动。

  1. 登录 Web Studio。
  2. 在左侧窗格中选择计算机目录
  3. 选择该目录,然后在操作栏中选择回滚主映像
  4. 按上文前滚操作部分中所述,指定对计算机应用早期主映像的时间。

回滚仅适用于需要还原的计算机。未使用新的或更新后的主映像更新的计算机不会收到通知消息,也不会被强制注销。

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

更改功能级别或撤消更改

将计算机上的 VDA 升级到较新版本后,更改计算机目录的功能级别。Citrix 建议您将所有 VDA 升级到最新版本,以使其能够访问所有最新的功能。

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

  • 启动升级后的计算机,使其注册到 Controller 中。此过程允许 Web Studio 确定目录中的计算机是否需要升级。

要更改目录的功能级别,请执行以下操作:

  1. 登录 Web Studio。
  2. 在左侧窗格中选择计算机目录
  3. 选择目录。下部窗格中的详细信息选项卡会显示版本信息。
  4. 选择更改功能级别。如果 Web Studio 检测到目录需要升级,它会显示一条消息。按照提示进行操作。如果一台或多台计算机无法升级,则消息中会说明原因。为确保所有计算机都能正常运行,Citrix 建议您先解决计算机问题,然后单击更改以继续进行操作。

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

克隆目录

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

  • 无法更改与操作系统计算机管理关联的设置。克隆的目录从原始目录继承这些设置。
  • 克隆目录可能需要一些时间才能完成。如有必要,请选择隐藏进度以在后台运行克隆。
  • 克隆的目录继承了原始目录的名称,并带有后缀 Copy。可以更改此名称。请参阅重命名目录
  • 克隆完成后,请务必将克隆的目录分配给交付组。
  1. 登录 Web Studio,然后在左侧窗格中选择计算机目录
  2. 选择一个目录,然后在操作栏中选择克隆
  3. 克隆选定的计算机目录窗口中,查看克隆的目录的设置并配置适用的设置。选择下一步进入下一页。
  4. 摘要页面上,查看设置的摘要,然后选择完成开始克隆。
  5. 如有必要,请选择隐藏进度以在后台运行克隆。

使用文件夹整理目录

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

创建目录文件夹

在开始之前,请先计划如何整理您的目录。请注意以下事项:

  • 最多可以嵌套五级深度的文件夹(不包括默认的根文件夹)。
  • 目录文件夹可以包含目录和子文件夹。
  • Web Studio 中的所有节点(例如计算机目录应用程序节点)在后端共享一个文件夹树。为避免在重命名或移动文件夹时与其他节点发生名称冲突,我们建议您为不同节点中的第一级文件夹指定不同的名称。

要创建目录文件夹,请执行以下步骤:

  1. 在左侧窗格中选择计算机目录
  2. 在文件夹层次结构中,选择一个文件夹,然后在操作栏中选择创建文件夹
  3. 输入新文件夹的名称,然后单击完成

提示:

如果您在非预期位置创建文件夹,则可以将其拖动到正确的位置。

移动目录

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

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

提示:

可以将目录拖到某个文件夹。

管理目录文件夹

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

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

要管理文件夹,请执行以下步骤:

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

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

使用 PowerShell

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

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

可以获取历史错误和警告,以了解您的 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

启用一次性重新启动计划

如果要使用 PowerShell 启用一次性重新启动计划,请使用以下 BrokerCatalogRebootSchedule PowerShell 命令创建、修改和删除重新启动计划:

  • Get-BrokerCatalogRebootSchedule
  • New-BrokerCatalogRebootSchedule
  • Set-BrokerCatalogRebootSchedule
  • Remove-BrokerCatalogRebootSchedule
  • Rename-BrokerCatalogRebootSchedule

例如,

  • 为目录中名为 BankTellers 的 VM 创建重新启动计划,该计划将于 2022 年 2 月 3 日凌晨 2 点到凌晨 4 点之间开始。

     C:\PS> New-BrokerCatalogRebootSchedule -Name BankTellers -CatalogName BankTellers  -StartDate "2022-02-03" -StartTime "02:00" -Enabled $true -RebootDuration 120
     <!--NeedCopy-->
    
  • 为目录中 UID 为 17 的 VM 创建重新启动计划,该计划将于 2022 年 2 月 3 日凌晨 1 点到凌晨 5 点之间开始。重新启动前十分钟,每个 VM 都设置为在每个用户会话中显示一个标题为 WARNING: Reboot pending(警告: 重新启动待定)的消息框以及消息 Save your work(保存您的工作)。

     C:\PS> New-BrokerCatalogRebootSchedule -Name 'Update reboot' -CatalogUid 17 -StartDate "2022-02-03" -StartTime "01:00" -Enabled $true -RebootDuration 240 -WarningTitle "WARNING: Reboot pending" -WarningMessage "Save your work" -WarningDuration 10
     <!--NeedCopy-->
    
  • 将名为旧名称的目录重新启动计划重命名为新名称

    C:\PS> Rename-BrokerCatalogRebootSchedule -Name "Old Name" -NewName "New Name"
    <!--NeedCopy-->
    
  • 显示 UID 为 1 的所有目录重新启动计划,然后将 UID 为 1 的目录重新启动计划重命名为新名称

    C:\PS> Get-BrokerCatalogRebootSchedule -Uid 1 | Rename-BrokerCatalogRebootSchedule -NewName "New Name" -PassThru
    <!--NeedCopy-->
    
  • 要将名为 Accounting 的目录重新启动计划设置为在每个 VM 重新启动前十分钟显示标题为 WARNING: Reboot pending(警告: 重新启动待定)的消息以及消息 Save your work(保存您的工作)。该消息出现在该 VM 上的每个用户会话中。

    ``` C:\PS> Set-BrokerCatalogRebootSchedule -Name Accounting -WarningMessage “Save your work” -WarningDuration 10 -WarningTitle “WARNING: Reboot pending”

  • 显示所有已禁用的重新启动计划,然后启用所有已禁用的重新启动计划。

     C:\PS> Get-BrokerCatalogRebootSchedule -Enabled $false | Set-BrokerCatalogRebootSchedule -Enabled $true
     <!--NeedCopy-->
    
  • 使用 UID 17 设置目录重新启动计划,以在每个 VM 重新启动前十五分钟、十分钟和五分钟显示消息 Rebooting in %m% minutes(将在 %m% 分钟后重新启动)。

     C:\PS> Set-BrokerCatalogRebootSchedule 17 -WarningMessage "Rebooting in %m% minutes." -WarningDuration 15 -WarningRepeatInterval 5
     <!--NeedCopy-->
    
  • 为名为 MyCatalog 的目录配置时区。

     C:\PS> Set-BrokerCatalog -Name "MyCatalog" -TimeZone <TimeZone>
     <!--NeedCopy-->
    

向映像中添加描述

可以添加与计算机目录的映像更新有关的更改的信息性描述。在创建目录时或更新目录的现有主映像时,可以使用此功能添加描述。还可以显示目录中的每个主映像的信息。使用以下命令添加或查看映像说明:

  • 要在使用主映像创建计算机目录时添加注释,请在 NewProvScheme 命令中使用参数 MasterImageNote。例如:

     C:\PS>New-ProvScheme -ProvisioningSchemeName <name> -HostingUnitName <name> -IdentityPoolName <name> -MasterImageVM
     XDHyp:\HostingUnits<hosting unit name><vm name>.vm\Base.snapshot -MasterImageNote "Note"
     <!--NeedCopy-->
    
  • 要更新与计算机目录关联的主映像,请在 Publish-ProvMasterVMImage 命令中使用参数 MasterImageNote。例如:

     C:\PS>Publish-ProvMasterVMImage -ProvisioningSchemeName <name> -MasterImageVM XDHyp:\HostingUnits<hosting unit name><vm name>.vm\base.snapshot -MasterImageNote "Note"
     <!--NeedCopy-->
    
  • 要显示每个映像的信息,请使用 Get-ProvSchemeMasterVMImageHistory 命令。例如:

     C:\PS>Get-ProvSchemeMasterVMImageHistory -ProvisioningSchemeName MyScheme -Showall
     <!--NeedCopy-->
    

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

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

  • 您没有回滚权限。
  • 该目录不是使用 MCS 创建的。
  • 该目录是使用操作系统磁盘的映像创建的。
  • 用于创建该目录的快照已损坏。
  • 用户对该目录中的计算机进行的更改不会保留。
  • 该目录中的计算机处于运行状态。

重置操作系统磁盘

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

要成功运行 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 键,则不会采取进一步的操作。

    注意:

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

    可以运行 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 更改为

       PS C:\Windows\system32> $ConfirmPreference='None'
       PS C:\Windows\system32> $ConfirmPreference
       None
       PS C:\Windows\system32> Reset-ProvVMDisk -ProvisioningSchemeName "xxx" -VMName "abc" -OS
       <!--NeedCopy-->
      
  5. 运行 Get-ProvTask 以获取 Reset-ProvVMDisk 命令返回的任务的状态。

更改现有预配方案的网络设置

可以更改现有预配方案的网络设置,以便在新的子网中创建新的 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 以验证现有预配方案的新网络设置。

管理计算机目录的版本

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

  • 查看计算机目录的版本列表
  • 使用任意早期版本更新计算机目录
  • 在该计算机目录的 VM 未使用某个版本时手动删除该版本
  • 更改计算机目录保留的最大版本数量(默认值为 99)

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

  • VMCpuCount
  • VMMemoryMB
  • CustomProperties
  • ServiceOffering
  • MachineProfile
  • NetworkMapping
  • 安全组

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

  • 要查看计算机目录的各种版本的配置详细信息,请执行以下操作:

     Get-ProvSchemeVersion -ProvisioningSchemeName AzureCatalog
     <!--NeedCopy-->
    
  • 要查看计算机目录的特定版本的配置详细信息,请执行以下操作:

     Get-ProvSchemeVersion -ProvisioningSchemeName AzureCatalog -Version 2
     <!--NeedCopy-->
    
  • 要查看与计算机目录关联的版本总数,请执行以下操作:

    ``` (Get-ProvSchemeVersion -ProvisioningSchemeName AzureCatalog).Count

  • 要使用任意早期版本更新计算机目录,请执行以下操作:

     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 引用,并且可以将其删除。

将非基于计算机配置文件的计算机目录转换为基于计算机配置文件的计算机目录

可以使用 VM、模板规范(对于 Azure)或启动模板(对于 AWS)作为计算机配置文件输入,以将基于非计算机配置文件的计算机目录转换为基于计算机配置文件的计算机目录。除非被明确的自定义属性覆盖,否则添加到目录中的新 VM 将从计算机配置文件中获取属性值。

注意:

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

为此,您需要:

  1. 创建包含 VM 但不包含计算机配置文件的永久或非永久计算机目录。
  2. 打开 PowerShell 窗口。
  3. 运行 Set-ProvScheme 命令以将计算机配置文件中的属性值应用到添加到计算机目录中的新 VM。例如:

    • 对于 Azure:

       Set-ProvScheme = Set-ProvScheme -ProvisioningSchemeName xxxx -MachineProfile XDHyp:\HostingUnits<HostingUnitName>\machineprofile.folder<ResourceGroupName><TemplateSpecName><VersionName>
       <!--NeedCopy-->
      
    • 对于 AWS:

       Set-ProvScheme = Set-ProvScheme -ProvisioningSchemeName xxxx -MachineProfile "XDHyp:\HostingUnits<hosting-unit><launch-template>.launchtemplate<launch-template-version>.launchtemplateversion"
       <!--NeedCopy-->
      

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

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

注意:

目前,只有 Azure 和 VMware 虚拟化环境支持该功能。

条件

请务必满足以下条件才能成功重置身份磁盘:

  • 关闭 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 或 AzureAD)具有写入权限的用户帐户。
      • PrivilegedUserPassword:PrivilegedUserName 的密码。
      • Target:修复操作的目标。可以使用 IdentityInfo 来修复帐户密码/信任密钥,也可以使用 UserCertificate 来修复加入了混合 AzureAD 的计算机标识的用户证书属性。
       Reset-ProvVMDisk -ProvisioningSchemeName <name> -VMname <name> -Identity -ResetIdentityInfo
       <!--NeedCopy-->
      

      ResetIdentityInfo 参数重置以下对象:

      • 密码和信任密钥:如果 VM 已加入 AD 域(仅适用于 DaaS 文档)
      • 仅限信任密钥:如果 VM 未加入 AD 域(仅适用于 DaaS 文档)
      • 仅限密码:如果 VM 已加入 AD 域(仅适用于 CVAD 本地文档)
    • 要重置身份磁盘的所有配置,请按以下顺序运行以下命令:

       Repair-AcctIdentity -IdentityAccountName TEST\VM1 -PrivilegedUserName TEST\admin1 -PrivilegedUserPassword $password -Target IdentityInfo
       <!--NeedCopy-->
      
       Reset-ProvVMDisk ProvisioningSchemeName <name> -VMName <name>  -Identity
       <!--NeedCopy-->
      
  4. 键入 y 确认操作。也可以使用 -Force 参数跳过确认提示。例如:

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

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

在启用了 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 不受这些更改的影响。

故障排除

下一步的去向

有关管理特定云服务目录的信息,请参阅: