Microsoft Azure Resource Manager 虚拟化环境

使用 Microsoft Azure Resource Manager 在您的部署中预配虚拟机时,请按本指导原则进行操作。

您应熟悉以下内容:

使用 Machine Creation Services 时不支持 Azure 磁盘加密。

Azure 按需预配

使用 MCS 在 Azure Resource Manager 中创建计算机目录时,Azure 按需预配功能:

  • 降低存储成本
  • 加快目录创建过程
  • 加快虚拟机 (VM) 电源操作过程

对于管理员,在创建主机连接和 MCS 计算机目录的 Studio 过程中,按需预配并没有引入任何差异。不同之处在于如何以及何时在 Azure 中创建和管理资源,以及 VM 在 Azure 门户中的可见性。

在结合使用 Azure 按需预配与 Citrix Virtual Apps and Desktops 之前,MCS 创建目录时,是在预配过程中在 Azure 中创建 VM。

在采用 Azure 按需预配的情况下,仅在完成预配后,当 Citrix Virtual Apps and Desktops 启动开机操作时才创建 VM。仅当 VM 运行时才在 Azure 门户中可见。(在 Studio 中,无论 VM 是否正在运行,它们都是可见的。)

创建 MCS 目录时,Azure 门户将显示资源组、网络安全组、存储帐户、网络接口、基础映像和身份磁盘。在 Citrix Virtual Apps and Desktops 为 VM 启动开机操作之前,Azure 门户不会显示 VM。(此时,在 Studio 中,VM 的状态变为“打开”。)

  • 对于池计算机,仅当存在 VM 时才会有操作系统磁盘和写回缓存。如果经常关闭计算机(例如,工作时间以外),这可以节省大量存储空间。
  • 对于专用计算机,在首次打开 VM 时创建操作系统磁盘。它一直保留在存储空间中,直至删除该计算机。

Citrix Virtual Apps and Desktops 为 VM 启动关机操作时,将在 Azure 中删除该虚拟机,并且它不再出现在 Azure 门户中。(在 Studio 中,VM 的状态变为“关闭”。)

在按需预配之前创建的目录

如果您有在 Citrix Virtual Apps and Desktops 支持 Azure 按需预配功能(2017 年年中)之前创建的计算机目录,这些目录中的 VM 在 Azure 门户中可见,无论它们是否正在运行。这些 VM 不能转换为按需计算机。

要利用按需预配的性能增强和存储成本优势,请使用 MCS 创建新目录。

Azure 托管磁盘

Azure 托管磁盘是一个可以与 MCS 创建的计算机目录配合使用的弹性磁盘存储系统,作为使用常规存储帐户的替换选项。

托管磁盘功能隐藏了创建和管理存储帐户的复杂性,并且为创建和管理磁盘提供了一个简单的可扩展且高度可用的解决方案。可以使用托管磁盘作为主映像以及 VM。使用托管磁盘可以缩短计算机目录的创建和更新时间。(有关详细信息,请参阅了解托管磁盘。)

默认情况下,计算机目录使用托管磁盘。创建目录时,可以覆盖此默认值。

配置了 I/O 优化时(每个 VM 使用三个磁盘),在每个订阅中最多可以预配 3333 个 VM。未配置 I/O 优化时(每个 VM 使用两个磁盘),在每个订阅中最多可以预配 5000 个 VM。(使用托管磁盘功能时,您可以在每个订阅中预配多达 10000 个 VM 磁盘。)

使用托管磁盘

在 Studio 中创建计算机目录时,目录创建向导的主映像页面将列出托管磁盘,以及 VM 和 VHD。(并非所有 Azure 区域都支持托管磁盘功能。托管磁盘应出现在对目录的主机连接可见的任何区域的列表中。)

映像和目录位于相同的区域中时,将优化目录创建时间。

托管磁盘功能当前不支持在 Azure 区域之间复制磁盘。如果您选择的映像不在 MCS 将要在其中预配目录的区域中,该映像将复制到目录区域的常规存储帐户中的 VHD,然后转换回托管磁盘。

在目录创建向导的存储和许可证类型页面上,可以选中用于使用常规存储帐户来代替托管磁盘的复选框。(在不支持托管磁盘的 Azure 区域中预配时此复选框不可选择。)

创建到 Azure Resource Manager 的连接

连接和资源一文中介绍了有关用于创建连接的向导的信息。以下信息涵盖与 Azure Resource Manager 连接有关的详细信息。

注意事项:

  • 必须已为服务主体授予对订阅的参与者角色。
  • 在创建第一个连接时,Azure 会提示您为其授予必要的权限。对于将来的连接,您仍然必须进行身份验证,但是 Azure 会记住您以前同意的情况,并且不会再显示提示。
  • 用于身份验证的帐户必须是订阅的协管理员。
  • 用于身份验证的帐户必须是订阅目录的成员。需要注意两种类型的帐户:“工作或学校”和“个人 Microsoft 帐户”。有关详细信息,请参阅 CTX219211
  • 虽然可以通过将现有 Microsoft 帐户添加为订阅目录的成员来使用该帐户,但如果以前已为用户授予对其中一个目录资源的来宾访问权限,则可能会出现复杂情况。在这种情况下,他们可能在目录中有一个不会授予其必要权限的占位符条目,并会返回错误。要解决此问题,一种方法是从目录中删除资源,然后明确重新添加资源。但是,请谨慎使用此方法,因为它可能会对帐户可以访问的其他资源产生意外的影响。
  • 有一个已知问题,即某些帐户实际上是成员时,会被检测为目录来宾。这通常发生在建立的较老目录帐户上。解决方法:向目录添加新帐户,该帐户将采用适当的成员身份值。
  • 资源组只是资源的容器,它们可能包含来自自己所在区域以外的区域的资源。如果您希望资源组的区域中显示的所有资源都可用,这可能会引起混淆。
  • 请确保您的网络和子网足够大,可以容纳您需要的计算机数量。这可能需要一些先见之明,但 Microsoft 会帮助您指定合适的值,并提供有关地址空间容量的指导。

可以通过两种方法建立与 Azure Resource Manager 的主机连接:

  • 通过向 Azure Resource Manager 进行身份验证以创建新的服务主体。
  • 使用之前创建的服务主体的详细信息连接到 Azure Resource Manager。

通过向 Azure Resource Manager 进行身份验证以创建新的服务主体

开始之前,请务必:

  • 在订阅的 Azure Active Directory 租户中具有一个用户帐户。
  • Azure AD 用户帐户也是您希望用来预配资源的 Azure 订阅的协管理员。

在站点设置或添加连接和资源向导中:

  1. 连接页面上,选择 Microsoft Azure 连接类型。然后,选择您的 Azure 云环境。
  2. 连接详细信息页面上,输入 Azure 订阅 ID 和连接的名称。连接名称可以包含 1-64 个字符,不能仅包含空格,也不能包含非字母数字字符。输入订阅 ID 和连接名称后,将启用新建按钮。
  3. 输入 Azure Active Directory 帐户用户名和密码。
  4. 单击登录
  5. 单击接受以将列出的权限授予 Citrix Virtual Apps and Desktops。Citrix Virtual Apps and Desktops 会创建一个允许它代表指定的用户管理 Azure Resource Manager 资源的服务主体。
  6. 单击接受后,您会返回到 Studio 中的连接页面。请注意,成功向 Azure 进行身份验证时,新建使用现有按钮将被替换为已连接,同时出现绿色的复选标记指明已成功连接至您的 Azure 订阅。
  7. 指明可以使用哪些工具来创建虚拟机,然后单击下一步。(在成功进行 Azure 身份验证和接受授予所需权限之前,您无法越过向导中的此页面。)
  8. 资源由区域和网络组成。在区域页面上,选择一个区域。在网络页面上:
    • 键入 1-64 字符的资源名称以帮助确定 Studio 中的区域和网络组合。资源名称不能仅包含空格,也不能包含非字母数字字符。
    • 选择一对儿虚拟网络和资源组。(由于您可能有不止一个具有相同名称的虚拟网络,将网络名称与资源组配对可提供唯一的组合。)如果在上一个不具有任何虚拟网络的页面中选择了一个区域,则需要返回至该页面并选择一个具有虚拟网络的区域。
  9. 完成向导。

使用之前创建的服务主体的详细信息连接到 Azure Resource Manager

要手动创建服务主体,请连接到 Azure Resource Manager 订阅并使用下方提供的 PowerShell cmdlet。

必备条件:

  • $SubscriptionId:您希望预配 VDA 的订阅的 Azure Resource Manager 订阅 ID。
  • $AADUser:订阅的 AD 租户的 Azure AD 用户帐户。
  • 让 $AADUser 成为您的订阅的协管理员。
  • $ApplicationName:将要在 Azure AD 中创建的应用程序名称。
  • $ApplicationPassword:应用程序的密码。创建主机连接时,需要使用此密码作为应用程序机密。

要创建服务主体,请执行以下操作:

  1. 连接到您的 Azure Resource Manager 订阅。

    Login-AzureRmAccount

  2. 选择您要创建服务主体的 Azure Resource Manager 订阅。

    Select-AzureRmSubscription -SubscriptionID $SubscriptionId

  3. 在您的 AD 租户中创建应用程序。

    $AzureADApplication = New-AzureRmADApplication -DisplayName $ApplicationName -HomePage "https://localhost/$ApplicationName" -IdentifierUris https://$ApplicationName -Password $ApplicationPassword

  4. 创建服务主体。

    New-AzureRmADServicePrincipal -ApplicationId $AzureADApplication.ApplicationId

  5. 向服务主体分配角色。

    New-AzureRmRoleAssignment -RoleDefinitionName Contributor -ServicePrincipalName $AzureADApplication.ApplicationId –scope /subscriptions/$SubscriptionId

  6. 在 PowerShell 控制台的输出窗口中,记下 ApplicationId。创建主机连接时需要提供该 ID。

在站点设置或添加连接和资源向导中:

  1. 连接页面上,选择 Microsoft Azure 连接类型和您的 Azure 环境。
  2. 连接详细信息页面上,输入 Azure 订阅 ID 和连接的名称。连接名称可以包含 1-64 个字符,不能仅包含空格,也不能包含非字母数字字符。
  3. 单击使用现有。提供订阅 ID、订阅名称、身份验证 URL、管理 URL、存储后缀、Active Directory ID 或租户 ID、应用程序 ID 以及现有服务主体的应用程序机密。输入详细信息后,将会启用确定按钮。单击确定
  4. 指明可以使用哪些工具来创建虚拟机,然后单击下一步。您提供的服务主体详细信息将用于连接到 Azure 订阅。(在提供“使用现有”选项的有效详细信息之前,您无法越过向导中的此页面。)
  5. 资源由区域和网络组成。在区域页面上,选择一个区域。在网络页面上:
    • 键入 1-64 字符的资源名称以帮助确定 Studio 中的区域和网络组合。资源名称不能仅包含空格,也不能包含非字母数字字符。
    • 选择一对儿虚拟网络和资源组。(由于您可能有不止一个具有相同名称的虚拟网络,将网络名称与资源组配对可提供唯一的组合。)如果在上一个不具有任何虚拟网络的页面中选择了一个区域,则需要返回至该页面并选择一个具有虚拟网络的区域。
  6. 完成向导。

使用 Azure Resource Manager 主映像创建计算机目录

此信息用于补充创建计算机目录中的指导信息。

主映像将作为用于在计算机目录中创建 VM 的模板。创建计算机目录之前,请在 Azure Resource Manager 中创建一个主映像。有关主映像的常规信息,请参阅“创建计算机目录”一文。

当您在 Studio 中创建计算机目录时:

  • 操作系统计算机管理页面不包含 Azure 特定的信息。请遵循“创建计算机目录”一文中的指导信息。
  • 主映像页面上,选择某个资源组,然后导航(逐级浏览)所有容器一直到要用作主映像的 Azure VHD。该 VHD 必须已经安装了 Citrix VDA。如果该 VHD 连接到某个 VM,该 VM 必须被停止。
  • 只有在使用 Azure Resource Manager 主映像时,才会显示存储和许可证类型页面。

    选择一个存储类型:标准或高级。该存储类型影响在向导的虚拟机页面上提供哪些计算机大小。两个存储类型都会在单一数据中心中对您的数据进行多重同步复制。有关 Azure 存储类型和存储复制的详细信息,请参阅以下内容:

    选择是否使用现有的本机 Windows Server 许可证。执行此操作并使用现有的本机 Windows Server 映像可利用 Azure Hybrid Use Benefits (HUB)。此处提供了更多详细信息: https://azure.microsoft.com/pricing/hybrid-use-benefit/

    HUB 将在 Azure 中运行 VM 的成本降低到基本计算费率,因为它免除了源自 Azure 库的其他 Windows Server 许可证的代价。您需要将您的本机 Windows Server 映像交至 Azure 以使用 HUB。不支持 Azure 库映像。当前不支持本机 Windows Client 许可证。请参阅 https://blogs.msdn.microsoft.com/azureedu/2016/04/13/how-can-i-use-the-hybrid-use-benefit-in-azure/

    要检查预配的虚拟机是否成功利用 HUB,请运行 PowerShell 命令 Get-AzureRmVM -ResourceGroup MyResourceGroup -Name MyVM,并检查许可证类型是否为 Windows_Server。此处提供了其他说明: https://azure.microsoft.com/en-us/documentation/articles/virtual-machines-windows-hybrid-use-benefit-licensing/

  • 虚拟机页面上,指出要创建的 VM 数量;必须至少指定一个。选择计算机大小。创建完计算机目录之后,您将无法更改计算机大小。如果以后需要不同的大小,请删除该目录,然后创建使用相同主映像的新目录,并指定所需的计算机大小。

    虚拟机名称不能包含非 ASCII 字符和特殊字符。

  • (使用 MCS 时)在资源组页面上,选择是创建新资源组还是使用现有组。

    如果选择创建新资源组,请单击下一步

    如果选择使用现有资源组,请从可用的预配资源组列表中选择组。请选择足够的组以容纳您要在目录中创建的计算机。如果您选择的组太少,Studio 将显示一条消息。如果您计划以后向目录添加更多 VM,则您可能希望选择的数量多于所需的最低数量。创建目录后,无法向目录添加更多资源组。

    有关详细信息,请参阅本文后面的“Azure 资源组”部分。

  • 网卡计算机帐户摘要页面不包含 Azure 特定的信息。请遵循“创建计算机目录”一文中的指导信息。

完成向导。

删除计算机目录

删除 Azure Resource Manager 计算机目录时,关联的计算机和资源组将从 Azure 中删除,即使您指示应保留这些计算机和资源组亦如此。

Azure 资源组

Azure 预配资源组提供了一种预配向用户提供应用程序和桌面的 VM 的方法。您可以在 Studio 中创建 MCS 计算机目录时添加现有的空 Azure 资源组,也可以创建新资源组。

有关 Azure 资源组的信息,请参阅 Azure Resource Manager 概述

要求

  • 每个资源组最多可以容纳 240 个 VM。要创建目录的区域中必须有足够的可用空资源组。如果要在创建计算机目录时使用现有资源组,则必须选择足够的可用组以容纳将在目录中创建的计算机数量。例如,如果在目录创建向导中指定 500 台计算机,则至少选择 3 个可用的预配资源组。

    创建目录后,无法向计算机目录添加资源组。因此,请考虑添加足够的资源组以容纳以后可能向目录添加的计算机。

  • 在与主机连接相同的区域中创建空资源组。
  • 如果您希望为每个 MCS 目录创建新资源组,则与主机连接关联的 Azure 服务主体必须有权创建和删除资源组。如果您希望使用现有的空资源组,则与主机连接关联的 Azure 服务主体对这些空资源组必须具有“参与者”权限。
  • 使用新建选项在 Studio 中创建主机连接时,创建的服务主体具有订阅范围参与权限。或者,可以使用使用现有选项来创建连接,并提供现有订阅范围服务主体的详细信息。如果使用新建选项并在 Studio 中创建服务主体,则它具有创建和删除新资源组或向现有空资源组预配所需的权限。
  • 必须使用 PowerShell 创建窄范围服务主体。此外,使用窄范围服务主体时,必须使用 PowerShell 或 Azure 门户为 MCS 将预配 VM 的每个目录创建空资源组。有关说明,请参阅博客文章 https://www.citrix.com/blogs/2016/11/09/azure-role-based-access-control-in-xenapp-xendesktop/

    如果您对主机连接使用窄范围服务主体,并且在目录创建向导的主映像页面上没有看到您的主映像资源组,可能是因为您使用的窄范围服务主体没有列出主映像资源组的权限“Microsoft.Resources/subscriptions/resourceGroups/read”。关闭向导,为服务主体更新权限(请参阅博客文章了解相关说明),然后重新启动向导。(Azure 中的更新显示在 Studio 中最多可能需要 10 分钟。)

在 Studio 中为计算机目录配置资源组

在目录创建向导中的“资源组”页面中,可以选择是创建新资源组还是使用现有组。请参阅此文章中前面的部分:使用 Azure Resource Manager 主映像创建计算机目录

删除计算机目录时资源组发生的情况:

  • 如果在创建计算机目录时允许 Citrix Virtual Apps and Desktops 创建新资源组,且之后删除了该目录,则这些资源组及这些资源组中的所有资源也将被删除。

  • 如果在创建计算机目录时使用现有资源组,且之后删除了目录,则这些资源组中的所有资源将被删除,但资源组不会删除。

注意事项、限制和故障排除

在使用现有资源组时,目录创建向导中的“资源组”页面上的可用资源组列表不会自动刷新。因此,如果打开了该向导页面并在 Azure 中为资源组创建或添加权限,这些更改不会反映在向导的列表中。要查看最新更改,请返回到向导中的“计算机管理”页面,然后重新选择与主机连接关联的资源,或者关闭并重新启动向导。在 Azure 中所做的更改显示在 Studio 中最多可能需要 10 分钟。

一个资源组只能用于一个计算机目录中。但是,这不是强制的。例如,在创建目录时选择 10 个资源组,但在目录中仅创建一台计算机。在创建目录后,其中 9 个选定的资源组保持为空。您可能打算将来使用它们来扩展容量,因此,它们与该目录保持关联。在创建目录后,无法向目录添加资源组,因此,为将来的扩展做好计划很实用。但是,如果创建了另一个目录,则这 9 个资源组将显示在可用列表中。Citrix Virtual Apps and Desktops 目前不会跟踪哪些资源组分配到哪些目录。由您对此进行监视。

如果您的连接使用可以访问各个区域中的空资源组的服务主体,则它们将全部显示在可用列表中。请务必在要创建计算机目录的相同区域中选择资源组。

故障排除:

  • 资源组未出现在目录创建向导的“资源组”页面上的列表中。

    服务主体必须对您希望显示在列表中的资源组具有适当权限。请参阅上面的“要求”部分。

  • 在向以前创建的计算机目录添加计算机时,并未预配所有计算机。

    创建目录后,以后向目录中添加更多计算机时,不要超过最初为目录选择的资源组的计算机容量(每个组 240 个)。创建目录后,无法添加资源组。如果尝试添加的计算机数量超过现有资源组可以容纳的数量,则预配将失败。

    例如,创建一个具有 300 个 VM 和 2 个资源组的计算机目录。资源组最多可以容纳 480 个 VM(240 乘以 2)。如果以后尝试向目录添加 200 个 VM,这就超过了资源组的容量(300 个当前 VM + 200 个新 VM = 500,但资源组只能容纳 480 个)。

更多信息